Skip to content

Instantly share code, notes, and snippets.

@timmc
Created June 10, 2014 13:56
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save timmc/79a5005f33daf14114e4 to your computer and use it in GitHub Desktop.
Save timmc/79a5005f33daf14114e4 to your computer and use it in GitHub Desktop.
Unminified version of lastpass.js from version 3.1.1, presented for research purposes only.
This file has been truncated, but you can view the full file.
var nsILastPass = Components.interfaces.nsILastPass,
nsISupports = Components.interfaces.nsISupports,
CLASS_ID = Components.ID("{89cfce0b-8110-11dd-ad8b-0800200c9a66}"),
CLASS_NAME = "LastPass Javascript XPCOM Component",
CONTRACT_ID = "@lastpass.com/lastpass;1",
LP = null,
LastPassFactory = {
createInstance: function(Zc, Yb) {
if (null != Zc) throw Components.results.NS_ERROR_NO_AGGREGATION;
null == LP && (LP = new LastPassContainer);
return LP.QueryInterface(Yb)
}
}, LastPassModule = {
registerSelf: function(Zc, Yb, Gh, gd) {
Zc = Zc.QueryInterface(Components.interfaces.nsIComponentRegistrar);
Zc.registerFactoryLocation(CLASS_ID, CLASS_NAME, CONTRACT_ID, Yb, Gh, gd)
},
unregisterSelf: function(Zc, Yb) {
Zc = Zc.QueryInterface(Components.interfaces.nsIComponentRegistrar);
Zc.unregisterFactoryLocation(CLASS_ID, Yb)
},
getClassObject: function(Zc, Yb, Gh) {
if (!Gh.equals(Components.interfaces.nsIFactory)) throw Components.results.NS_ERROR_NOT_IMPLEMENTED;
if (Yb.equals(CLASS_ID)) return LastPassFactory;
throw Components.results.NS_ERROR_NO_INTERFACE;
},
canUnload: function() {
return !0
}
};
function NSGetModule() {
return LastPassModule
}
function NSGetFactory() {
return LastPassFactory
}
function LastPassContainer() {
function Zc() {}
function Yb() {}
function Gh() {}
function gd() {}
function Nd() {}
function zq() {}
function bj() {}
function Aq() {}
function dw() {}
function Bq() {}
function Cq() {}
function cj() {}
function Tm() {}
function qa() {}
function v() {}
function jb() {}
function Dq() {}
function Um(c, e, f) {
var d = e.getElementById("eventdata1") ? e.getElementById("eventdata1").value : "",
g = e.getElementById("eventdata2") ? e.getElementById("eventdata2").value : "",
h = e.getElementById("eventdata3") ? e.getElementById("eventdata3").value :
"",
l = e.getElementById("eventdata4") ? e.getElementById("eventdata4").value : "",
n = e.getElementById("eventdata5") ? e.getElementById("eventdata5").value : "";
switch (c) {
case "login":
c = d.toLowerCase().replace(/\s*/g, "");
f = g;
var p = l == Vm ? "" : n,
d = l == Vm ? n : "";
if (Wm) {
g = Zb(f);
n = rb(ja ? ja : "");
l = "" == d ? "" : LP.make_lp_key(c, d);
p = "" == d ? "" : LP.make_lp_hash(c, l, d);
d = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
d = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
if ("" == c || "" == f || "" == h || "" != l && l != f || "" != p && p != h) {
ga("ASOREGISTRY login : ERROR invalid params username=" + c + " wxhash=" + h + " wxhashhexcomputed=" + p + " keyhex=xxx keyhexcomputed=xxx password=xxx");
break
}
Dk(c, null);
Xm(c, f);
if (P) {
Q == c && n == f || Sa(!1, "ff_diffuser");
break
}
rc = !1;
Q = c;
ha = Fa(c);
Kc = h;
lf();
vd(g, "lpwebsiteevent A");
Ek(c, "", Eg);
break
}
if ("" == c && "" == f && "" == h) P || LP.lplogincheck("websitelogin");
else if ("" != c && "" != f) {
Dk(c, null);
Xm(c, f);
var q = !1,
g = Zb(f),
n = rb(ja ? ja : "");
if (!P || !(Q == c && n == f)) P && Q == c ? (vd(g,
"lpwebsiteevent B"), Hh()) : P && "" != Q ? (Sa(!1, "ff_websitediffuser"), q = !0) : P && "" == Q ? ga("login invalid state A") : q = !0;
q && (vd(g, "lpwebsiteevent C"), "" != p && (Sc = p), "" != h ? l == Vm ? ("" != d && Gc("login", {
data0: c,
data1: d
}), Oc ? (vd("", "lpwebsiteevent D"), Fg = (new Date).getTime(), LP.mostRecent().setTimeout(function() {
Gc("logincheck")
}, 2E3)) : Ym(Eq, null, c, h)) : LP.lplogincheck("websitelogin") : LP.lplogincheck("websitelogin"))
} else ga("login invalid params username=" + c + " wxhash=" + h + " keyhex=xxx");
break;
case "logoff":
P && Sa(!1,
"ff_fromwebsite");
break;
case "recheck":
LP.lpRecheckTabs(!0);
break;
case "refresh":
P && (h = e.getElementById("eventdata1"), l = e.getElementById("eventdata2"), h && "settings" == h.value ? Ym(l && "2" == l.value ? "websiterefreshrsa" : "websiterefresh") : LP.lpGetAccounts());
break;
case "rsaencrypt":
c = e.getElementById("eventdata1").value;
d = e.getElementById("eventdata2").value;
h = e.getElementById("eventtype");
f = e.getElementById("eventdata4");
l = e.getElementById("eventdata5");
!c || !d || !h || !f || !l ? h.value = "rsaerror" : ma() ? (c = Z.xCryptoRSAEncrypt(c,
d), "" == c || null == c ? h.value = "rsaerror" : (d = Gg("rsaencrypt"), d = Z.xCryptoRSASign(d, c), "" == d || null == d ? h.value = "rsaerror" : (f.value = c, l.value = d, h.value = "ok"))) : h.value = "rsaerror";
break;
case "rsaencryptmultiple":
a: {
h = e.getElementById("eventtype");
f = e.getElementById("eventdata1");
l = mc.parse(f.value);
for (c = 0; c < l.length; ++c) {
if (!ma()) {
h.value = "rsaerror";
break a
}
if ("undefined" == typeof l[c].valuehex || "undefined" == typeof l[c].publickeyhex || "" == l[c].publickeyhex) {
h.value = "rsaerror";
break a
}
l[c].valuehexenc = Z.xCryptoRSAEncrypt(l[c].publickeyhex,
l[c].valuehex);
if ("" == l[c].valuehexenc || null == l[c].valuehexenc) {
h.value = "rsaerror";
break a
}
}
f.value = mc.stringify(l);
h.value = "ok"
}
break;
case "rsadecrypt":
c = e.getElementById("eventdata1").value;
e.getElementById("eventdata2");
l = e.getElementById("eventdata3").value;
h = e.getElementById("eventtype");
f = e.getElementById("eventdata4");
!c || !l || !h || !f ? h.value = "rsaerror" : ma() ? (c = Gg("rsadecrypt"), l = Z.xCryptoRSADecrypt(c, l), "" == l || null == l ? h.value = "rsaerror" : (f.value = l, h.value = "ok")) : h.value = "rsaerror";
break;
case "keyweb2plug":
c =
g.toLowerCase().replace(/\s*/g, "");
"" == c || "" == d ? ga("keyweb2plug invalid params cmd=" + h + " username=" + c + " localkey=xxx") : "2" == h && (Fq(), Fk(), vd(Zb(d), "keyweb2plug"), Hh());
break;
case "recheckcurrenttab":
h = e.getElementById("eventdata1");
h.value = "ok";
LP.lpRecheckDoc(e, !0);
break;
case "getversion":
h = e.getElementById("eventdata1");
l = e.getElementById("eventdata2");
c = e.getElementById("eventdata3");
d = e.getElementById("eventdata4");
h.value = nc;
l.value = LP.lpbuilt;
c.value = ew;
d.value = "ff";
break;
case "getdebuginfo":
h =
e.getElementById("eventdata1");
f = [];
f.logfile = Gk.join("\n");
h.value = mc.stringify(f);
break;
case "keyplug2web":
h = e.getElementById("eventdata1");
l = e.getElementById("eventdata2");
c = e.getElementById("eventdata3");
d = e.getElementById("eventdata4");
g = e.getElementById("eventdata5");
if (h && l) {
if ("" == Q) break;
n = f.directory;
f = f.file;
n = n.replace(/^\/~[^/]*/, "");
if ("" != n && "/" != n && "/sso/" != n && n != fw && "/sso/aso/" != n && n != gw) break;
f = f.replace(/#/, "");
if ("" != f && "index.php" != f && "import.php" != f && "export.php" != f && "otp.php" !=
f && "frameset.php" != f && "frame_login.php" != f && "gettopost.php" != f && f != hw && f != iw && "misc_challenge.php" != f && "enterprise_users.php" != f) break;
f = "none";
if (h && "" == h.value) h.value = ic(Q), "" != ja && (f = rb(ja));
else if (ic(h.value) != ic(Q)) {
if (P) {
Sa(!1, "ff_websitemismatch");
break
}
} else "" != ja && (f = rb(ja));
c && (c.value = nc);
d && (d.value = LP.GetIdentity());
g && (g.value = Kc);
l.value = f
}
break;
case "formfillbuilder":
h = e.getElementById("eventdata1");
f = h.value;
wd(LP.getBrowser(), LP.getBrowser().contentDocument, !0, !1, null, 1, null, null,
f);
h.value = "ok";
break;
case "getuuid":
h = e.getElementById("eventdata1");
h.value = LP.getuuid();
break;
case "switchidentity":
h = e.getElementById("eventdata1");
f = "";
h && (f = h.value);
h = !1;
for (l = 0; l < Oa.length; l++) Oa[l].iid == f && (h = !0);
h || (f = "");
f != LP.GetIdentity() && LP.lpIdentityHelper(f, !0);
break;
case "clearcache":
Gk = [];
Hg(".lps");
Hg(".slps");
Hg(".xml");
Hg(".sxml");
Hg(".key");
break;
case "getimportdata":
n = f.directory;
f = f.file;
n = n.replace(/^\/~[^/]*/, "");
if ("" != n && "/" != n && "/sso/" != n) break;
if ("import.php" != f) break;
e.getElementById("source").value = dj;
e.getElementById("t").value = Hk(Xa._utf8_encode(Ig));
e.getElementById("b64").value = "1";
e.getElementById("utf8").value = "1";
e.getElementById("encryptandstore").click();
dj = Ig = "";
break;
case "recover":
n = f.directory;
f = f.file;
n = n.replace(/^\/~[^/]*/, "");
if ("" != n && "/" != n && "/sso/" != n) break;
if ("recover.php" != f) break;
h = "";
h = e.getElementById("eventdata1").value;
f = Fa(h) + "_ff.sotp";
h = Fa(h) + "_ff.otp";
!$b(f) && !$b(h) ? h = "nouser" : $b(f) ? (h = Ih(Jb(f), !0), h = rb(h)) : h = rb(Jb(h));
e.getElementById("eventdata2").value =
h;
break;
case "gohome":
if (ie) break;
f = "";
(h = e.getElementById("eventdata3")) && (f += "?cmd=" + encodeURIComponent(h.value));
h = "" == LP.getcontrol("vaulturloverride") ? "chrome://lastpass/content/home2.xul" : LP.getcontrol("vaulturloverride");
e.location.href = h + f;
h = e.getElementById("eventdata1");
f = e.getElementById("eventdata2");
h && f && (h = h.value, f = f.value, "" != h && "" != f && (Sa(!1, "ff_websitegohome"), Ik = f, LP.lpOpenLogin(null, h)));
break;
case "setupmultifactor":
g == Q ? (e.getElementById("eventdata3") && (e.getElementById("eventdata3").value =
"working"), f = "type=" + LP.en(d) + "&username=" + LP.en(g), LP.lpMakeRequest(LP.lp_base + "setupmultifactor.php", f, Gq, function() {
Zm(e.getElementById("eventdata3"))
}, {
resultinput: e.getElementById("eventdata3"),
password: ""
})) : e.getElementById("eventdata3") && (e.getElementById("eventdata3").value = "error");
break;
case "setupsinglefactor":
var r = "1" == n;
f = LP.make_lp_key(g, h);
g == Q && f == ja || r ? (!r && e.getElementById("eventdata4") && (e.getElementById("eventdata4").value = "working"), f = "type=" + LP.en(d) + "&username=" + LP.en(g),
l = !0, "omnikey" == d && (c = "", ma() && "function" == typeof Z.omnikey_get_public_key && (c = Z.omnikey_get_public_key(ej())), "" == c ? l = !1 : f += "&secret=" + encodeURIComponent(c)), l ? LP.lpMakeRequest(LP.lp_base + "setupmultifactor.php", f, Gq, function() {
Zm(r ? null : e.getElementById("eventdata4"))
}, {
resultinput: r ? null : e.getElementById("eventdata4"),
password: h
}) : !r && e.getElementById("eventdata4") && (e.getElementById("eventdata4").value = "error")) : !r && e.getElementById("eventdata4") && (e.getElementById("eventdata4").value = "error");
break;
case "checkmultifactorsupport":
e.getElementById("eventdata3") && (ma() && "function" == typeof Z.omnikey_supported && Z.omnikey_supported() ? (e.getElementById("eventdata4").value = "omnikey", e.getElementById("eventdata3").value = "done") : ma() && LP.lpis_win && "function" == typeof Z.winbio_supported && Z.winbio_supported() ? (e.getElementById("eventdata4").value = "winbio", e.getElementById("eventdata3").value = "done") : (hd || $m || LP.lpisp()) && ma() && LP.lpis_mac && "function" == typeof Z.lpvt_supported && Z.lpvt_supported() ? (e.getElementById("eventdata4").value =
"vtapi", e.getElementById("eventdata3").value = "done") : (ma() || (e.getElementById("eventdata4").value = "nobinary"), e.getElementById("eventdata3").value = "error"));
break;
case "verifymultifactor":
e.getElementById("eventdata1") && "winbio" == e.getElementById("eventdata1").value && e.getElementById("eventdata2") && (e.getElementById("eventdata2").value = "working", ma() && LP.lpis_win && "function" == typeof Z.winbio_verify_user && (h = Z.winbio_verify_user("", LP.lpgs("Swipe finger"), LP.lpgs("Swipe your finger on the fingerprint sensor"),
LP.lpgs("Cancel")), e.getElementById("eventdata3") && (e.getElementById("eventdata3").value = da(h), e.getElementById("eventdata2").value = "done")));
break;
case "multifactorauth":
e.getElementById("eventdata3") && (e.getElementById("eventdata3").value = "working", h = "", "trueapi" == d ? (h = Fa(Fa(ic(g) + d)), 64 != h.length && ma() && LP.lpis_win && "function" == typeof Z.trueapi_get_hash && (h = Z.trueapi_get_hash(g)), h = "" != h ? Fa(h + l) : "") : "omnikey" == d && ma() && "function" == typeof Z.omnikey_decrypt && (h = Z.omnikey_decrypt(g, ej())), "" == h ? e.getElementById("eventdata3").value =
"error" : (e.getElementById("eventdata5").value = h, e.getElementById("eventdata3").value = "done"));
break;
case "multifactorreprompt":
e.getElementById("eventdata3") && (e.getElementById("eventdata3").value = "working", LP.securityPrompt() ? e.getElementById("eventdata3").value = "done" : e.getElementById("eventdata3").value = "error");
break;
case "checkloggedin":
e.getElementById("eventdata1") && (e.getElementById("eventdata1").value = P ? "1" : "0");
break;
case "lpgologin":
h = e.getElementById("eventdata1").value;
"function" == typeof ManGetKey &&
("" == h ? ManGetKey() : (h = ManParse(h), "object" == typeof h && "undefined" != typeof h.url && (z = [], z[h.aid] = h, f = MN.mostRecent().getBrowser().getBrowserForTab(MN.mostRecent().getBrowser().selectedTab), "undefined" != typeof f && (f.loginAid = h.aid), LP.lpLaunchUrl(h.aid, 1, 0, LP.getBrowser(), null, !0))));
break;
case "checkattach":
e.getElementById("eventdata2").value = "canopensaveattach";
e.getElementById("eventdata1").value = "canattach";
break;
case "getattach":
h = {};
LP.siteinfo_addattach(null, LP.lpGetCurrentWindow(), h);
"undefined" !=
typeof h.mimetype && (e.getElementById("eventdata2").value = h.mimetype, f = e.getElementById("eventdata1").value, e.getElementById("eventdata3").value = h.bytes, e.getElementById("eventdata4").value = an(h.bytes, La.hex2bin(f), f), e.getElementById("eventdata1").value = "gotattach");
break;
case "openattach":
LP.siteinfo_openattach(null, LP.lpGetCurrentWindow(), null, e.getElementById("eventdata1").value, e.getElementById("eventdata2").value, e.getElementById("eventdata3").value);
break;
case "saveattach":
LP.lpExportAttachment(null,
null, null, LP.lpGetCurrentWindow(), e.getElementById("eventdata1").value, e.getElementById("eventdata2").value, e.getElementById("eventdata3").value);
break;
case "setboolpref":
LP.lpprefsSetBoolPref(d, "1" == g, "1" == h);
LP.flush_prefs();
break;
case "checkduo":
if (LP.isFennec) try {
-1 != LP.fennecBrowser.selectedBrowser.currentURI.path.indexOf("/duo.php") && LP.fennecBrowser.closeTab(LP.fennecBrowser.selectedTab)
} catch (t) {} else Pc(!0, "duo.php");
LP.outofband_makerequest("&otp=checkduo" + encodeURIComponent(d))
}
}
function Gq(c,
e, f) {
if (4 == c.readyState) {
e = f.resultinput;
f = f.password;
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
var d = c.responseXML.documentElement.getElementsByTagName("ok");
if (0 < d.length)
if (c = d[0].getAttribute("type"), d = d[0].getAttribute("hash"), "trueapi" == c)
if ("" != f) {
if (ma() && LP.lpis_win && "function" == typeof Z.trueapi_store_default_login && Z.trueapi_store_hash(Q, d)) {
var g = e ? Z.trueapi_get_hash(Q) : d;
if (g == d && Z.trueapi_store_default_login(Q, f, d)) {
LP.setsinglefactortype(c);
e && (e.value =
"done");
return
}
}
} else {
if (ma() && LP.lpis_win && "function" == typeof Z.trueapi_store_hash && Z.trueapi_store_hash(Q, d) && (g = e ? Z.trueapi_get_hash(Q) : d, g == d)) {
e && (e.value = "done");
return
}
} else if ("vtapi" == c) {
if (ma() && LP.lpis_mac && "function" == typeof Z.lpvt_store_data && Z.lpvt_store_data(encodeURIComponent(Q) + "|" + encodeURIComponent(f), LP.lpgs("Swipe finger"), LP.lpgs("Swipe your finger on the fingerprint sensor"), LP.lpgs("Cancel"), LP.lpgs("Swipe current user's finger"))) {
LP.setsinglefactortype(c);
e && (e.value = "done");
return
}
} else if ("validity" == c) {
if (ma() && LP.lpis_win && "function" == typeof Z.validity_store_data && Z.validity_store_data(encodeURIComponent(Q) + "|" + encodeURIComponent(f), LP.lpgs("Swipe finger"), LP.lpgs("Swipe your finger on the fingerprint sensor"), LP.lpgs("Cancel"))) {
LP.setsinglefactortype(c);
e && (e.value = "done");
return
}
} else if ("winbio" == c) {
if (ma() && LP.lpis_win && "function" == typeof Z.winbio_store_data)
if ("function" != typeof Z.winbio_has_fingerprints || Z.winbio_has_fingerprints()) {
if (Z.winbio_store_data(encodeURIComponent(Q) +
"|" + encodeURIComponent(f), LP.lpgs("Swipe finger"), LP.lpgs("Swipe your finger on the fingerprint sensor"), LP.lpgs("Cancel"))) {
LP.setsinglefactortype(c);
e && (e.value = "done");
return
}
} else {
"function" == typeof Z.winbio_launch_enrollment && Z.winbio_launch_enrollment();
e && (e.value = "notenrolled");
return
}
} else if ("omnikey" == c) {
e && (e.value = "done");
return
}
}
Zm(e)
}
}
function Zm(c) {
c && (c.value = "error")
}
function Hq(c) {
if (!c || "function" != typeof c.getElementsByTagName) return !1;
c = c.getElementsByTagName("meta");
for (var e =
0; e < c.length; e++)
if (c[e].httpEquiv && "refresh" == c[e].httpEquiv && c[e].content && c[e].content.match(/^0;/)) return !0;
return !1
}
function bn(c) {
var e = c.target;
"undefined" != typeof e.wrappedJSObject && (e = e.wrappedJSObject);
if ("IFRAME" == e.nodeName || "FRAME" == e.nodeName) e.addEventListener("load", function() {
Iq(e)
}, !1), e.addEventListener("unload", jw, !1);
else if ("SCRIPT" == e.nodeName && "pandora.com" == Ta(e.ownerDocument.location.href)) {
c = e.ownerDocument.getElementsByTagName("input");
for (var f = 0; f < c.length; f++) "submit" ==
c[f].type && "undefined" == typeof c[f].lpsubmitorig && (c[f].lpsubmitorig = !0, c[f].addEventListener("click", function() {
LP.lpsubmitafter({
target: this.form,
docurl: Wa.URLToASCII(this.ownerDocument.location.href)
})
}, !1))
}
}
function jw(c) {
var e = c.target;
"undefined" != typeof e.wrappedJSObject && (e = e.wrappedJSObject);
if ("IFRAME" == e.nodeName || "FRAME" == e.nodeName) e.removeEventListener("load", function() {
Iq(e)
}, !1), e.removeEventListener("unload", lpNodeRemove, !1)
}
function Iq(c) {
var e = c.getAttribute("src");
null === e && (e =
"");
"IFRAME" == c.nodeName && e.indexOf("lpblankiframe.local" > 0) || Jq(LP.getBrowser().contentDocument)
}
function fj(c, e) {
if (!LP.lp_url_is_lastpass(Wa.URLToASCII(c.contentWindow.location.href))) try {
for (var f = c.contentWindow; null != f.top && f.top != f;) f = f.top;
var d = f.document;
"undefined" == typeof d.LPlpinstalledclick ? (d.addEventListener("mouseup", kw, !1), d.LPlpinstalledclick = !0) : e == d && (d.LPlpnoinstalledclick = !0)
} catch (g) {}
}
function cn() {
var c = Jk();
"" != c && $b(c) && eb(c)
}
function Jk() {
var c = ha;
return "" == c || null == c ?
"" : (c + "_retry5.lps").toUpperCase()
}
function Jq(c) {
var e = null;
try {
var f = cb(c);
if (!f && !LP.isFennecNative) return null;
e = Wa.URLToASCII(c.location.href);
if ("undefined" != typeof c.forms && 0 < c.forms.length) try {
var d = c.getElementsByTagName("HEAD");
if (d && 0 < d.length) {
var g = c.createElement("SCRIPT");
g.appendChild(c.createTextNode("try { for(var lastpass_iter=0; lastpass_iter < document.forms.length; lastpass_iter++){ var lastpass_f = document.forms[lastpass_iter]; if(typeof(lastpass_f.lpsubmitorig)==\"undefined\"){ if (typeof(lastpass_f.submit) == \"function\") { lastpass_f.lpsubmitorig = lastpass_f.submit; lastpass_f.submit = function(){ var form = this; try { if (document.documentElement && 'createEvent' in document) { var forms = document.getElementsByTagName('form'); for (var i=0 ; i<forms.length ; ++i) if (forms[i]==form) { var element = document.createElement('lpformsubmitdataelement'); element.setAttribute('formnum',i); element.setAttribute('from','submithook'); document.documentElement.appendChild(element); var evt = document.createEvent('Events'); evt.initEvent('lpformsubmit',true,false); element.dispatchEvent(evt); break; } } } catch (e) {} try { form.lpsubmitorig(); } catch (e) {} } } } }} catch (e) {}"));
d[0].appendChild(g)
}
} catch (h) {
ga("Failure with appending JS: " + h + " ln: " + h.lineNumber, null)
}
d = !1;
"function" == typeof Jg && Kk == f && (d = !0, Jg(), Jg = null);
Kq(c, d);
var l = xb(e);
nb(e, l);
var n = sc(l.host, e);
LP.compare_tlds(n, "netvibes.com") && fj(f, c);
var p = dn(f, e, null, "lploadpagedoc");
if (!P && !p && (!LP.lp_url_is_lastpass(e, l) && gj(null, c)) && !en)
if (Lk) {
var q = LP.getBrowser().selectedTab.linkedBrowser.contentDocument;
q.LPlpUseLastPassLogin = !0;
fn(q)
} else vc("UseLastPassLogin", f, 0, "login", null)
} catch (r) {
ga("Failure with loading page: " +
r + " ln: " + r.lineNumber, e)
} finally {}
}
function dn(c, e, f, d, g) {
d = xb(e);
var h = sc(d.host, e),
l = !1;
if (!P) {
var n = Ab(),
p;
for (p in id) {
var q = id[p];
null != q && n > q.timeSaved + 300 && (id[p] = null)
}
q = [];
for (p in id) id[p] && q.push(id[p]);
id = q;
for (p in Pa) q = Pa[p], null != q && n > q.timeSaved + 300 && (Pa[p] = null);
n = [];
for (p in Pa) Pa[p] && n.push(Pa[p]);
Pa = n
}
for (p in Pa)
if (!("undefined" != typeof g && p != g)) {
var r = Pa[p];
if (!r || !r.ignorefromcheckadd)
if (r && (LP.compare_tlds(h, r.tld) || LP.compare_tlds(h, r.actiontld) || LP.compare_tlds(h, r.topdoctld) ||
r.basic_auth)) {
n = null;
if (r.basic_auth) {
var t = r.postdata,
n = LP.compare_tlds(h, r.tld) || LP.compare_tlds(h, r.actiontld) ? LP.lpgetcurrenturl(c) : r.url,
t = t + ("&url=" + LP.en(ac(n)));
r.ai.url = n;
n = function() {
gn(t, r.ai, r.newvalues)
};
Pa[p] = null
} else var A = p,
n = function() {
a: {
var d = A;
c || LP.getBrowser();
if (null != Pa[d]) {
var e = Pa[d].url,
g = nb(e),
h = Ta(e);
if ("function" == typeof ManSubmitCallback) {
var l = [];
l.postdata = Pa[d].postdata;
l.tld = h;
ManSubmitCallback(l)
} else {
if (Pa[d].needsEncryption) {
var n = Pa,
p;
if (p = Pa[d], p.needsEncryption)
if (!P ||
"string" != typeof ja || 0 == ja.length) p = null;
else {
for (var q = 0; q < p.encryptedStrings.length; q++) p.postdata += "&encryptedstring" + q + "=" + LP.en(da(p.encryptedStrings[q]));
p.encryptedPassword = da(p.encryptedPassword);
if ("undefined" != typeof p.fields)
for (q = 0; q < p.fields.length; q++)
if ("email" == p.fields[q].type || "tel" == p.fields[q].type || "url" == p.fields[q].type || "text" == p.fields[q].type || "password" == p.fields[q].type || "textarea" == p.fields[q].type || "hidden" == p.fields[q].type) p.fields[q].value = da(p.fields[q].value);
p.needsEncryption = !1
}
n[d] = p;
if (null == Pa[d]) break a
}
if (!(n = Jh)) {
b: {
n = Pa[d].uname;
p = Pa[d].username;
var q = Pa[d].encryptedPassword,
r = "undefined" != typeof la[h] ? la[h] : [],
t;
for (t in r)
if (!("undefined" == typeof z[t] || z[t].genpw || z[t].isbookmark) && z[t].logins)
for (r = 0; r < z[t].logins.length; r++) {
var s = z[t].logins[r];
if ((s.unencryptedUsername == p || "" == n && "" == p || 0 == p.indexOf("****")) && O(s.password, z[t], B) == Ya(q) || s.unencryptedUsername == p && "" == q) {
e = !0;
break b
}
if (z[t].save_all && nb(z[t].url) == nb(e) && 0 == s.urid && s.otherfields)
for (var ea =
"" == n && "" == p ? !0 : !1, ra = !1, Y = 0; Y < s.otherfields.length; Y++)
if (!ea && ("text" == s.otherfields[Y].type || "email" == s.otherfields[Y].type || "tel" == s.otherfields[Y].type || "url" == s.otherfields[Y].type) && p == O(s.otherfields[Y].value, z[t], B) ? ea = !0 : !ra && "password" == s.otherfields[Y].type && Ya(q) == O(s.otherfields[Y].value, z[t], B) && (ra = !0), ea && ra) {
e = !0;
break b
}
}
e = !1
}
if (e = !e) {
0 < g.length && "/" == g.charAt(g.length - 1) && (g = g.substring(0, g.length - 1));
if (g = !(0 < mf.length && !kb(g, mf) && !kb(h, mf) || kb(g, Tc) || kb(h, Tc))) b: {
g = Pa[d].username;
e = Pa[d].encryptedPassword;
t = Ab();
var n = [],
C;
for (C in Pf) p = Pf[C], t > p.rejectedTime + 600 && (n[n.length] = C);
for (C = n.length - 1; 0 <= C; C--) Pf.splice(n[C], 1);
for (C in Pf)
if (p = Pf[C], p.username == g && Ya(p.encryptedPassword) == Ya(e) && LP.compare_tlds(p.tld, h)) {
g = !1;
break b
}
g = !0
}
e = g
}
n = e
}
if (n) {
if (C = !1, "function" == typeof LP.getBrowser().getNotificationBox && (l = LP.getBrowser().getNotificationBox(c).currentNotification), l && "undefined" != typeof l.choices && "addconfirm" == l.choices && "undefined" != typeof l.extra && "undefined" != typeof l.extra.key &&
l.extra.key == d && (C = !0), !C) {
l = c.contentDocument;
if (!f && l && (C = gj(null, l)) && nb(C.action) == nb(Pa[d].action))
if (g = [], g.fields = Pa[d].fields, hj(C, g, null, !1) && !Jh) {
if ("function" == typeof LP.getBrowser().getNotificationBox) {
h = LP.getBrowser().getNotificationBox(c).allNotifications;
for (l = h.length - 1; 0 <= l; l--) "undefined" != typeof h[l].choices && "addconfirm" == h[l].choices && LP.getBrowser().getNotificationBox(c).removeNotification(h[l])
}
Pa[d] = null;
break a
}
C = Ab();
0 == Pa[d].show_count && (Pa[d].first_show_time = C);
if (5 < ++Pa[d].show_count ||
30 <= C - Pa[d].first_show_time) {
if ("function" == typeof LP.getBrowser().getNotificationBox) {
h = LP.getBrowser().getNotificationBox(c).allNotifications;
for (l = h.length - 1; 0 <= l; l--) "undefined" != typeof h[l].choices && "addconfirm" == h[l].choices && LP.getBrowser().getNotificationBox(c).removeNotification(h[l])
}
Pa[d] = null
} else Lq && (C = [], C.key = d, C.tld = h, LP.lpshowHelpDlg("addsite"), vc("AddAccountText", c, 0, "addconfirm", C), l && (l.LPlpaddaccountshown = !0))
}
} else Pa[d] = null
}
}
}
};
if ("undefined" != typeof SAVEALLFORMSUBMITS) {
n();
break
}
if (!P && !LP.lp_url_is_lastpass(e, d)) en || (vc("UseLastPassCapture", c, 0, "login", n), l = !0);
else {
LP.lpGetCurrentWindow().setTimeout(n, 100);
break
}
}
}
return l
}
function Kq(c, e, f) {
var d = cb(c);
if (!d && !LP.isFennecNative) return null;
var g = null;
try {
var g = d ? LP.lpgetcurrenturl(d) : Wa.URLToASCII(c.location.href),
h = xb(g);
nb(g, h);
if (!f && d) {
var l, n = g,
p = !1,
q;
for (q in ij) q == d && null != ij[q] && (p = !0);
q = !1;
for (var r = c.getElementsByTagName("form"), t = 0; t < r.length; t++)
if (1 == Mk(r[t], !0).password) {
q = !0;
break
}
if (q) {
var A = d.sessionHistory;
A && 0 < A.count && 0 < A.index && LP.lp_url_is_lastpass(A.getEntryAtIndex(A.index - 1, !1).URI.spec, null, A.getEntryAtIndex(A.index - 1, !1).URI.asciiHost) && -1 != A.getEntryAtIndex(A.index - 1, !1).URI.path.indexOf("launch") && !LP.lp_url_is_lastpass(n, h) && null != gj(null, c) && ga("autologin failed web", n);
l = p ? !0 : !1
} else l = !1; if (jj(d, null, null, null, null, c, d.contentWindow, -1)) return;
hn(c)
}
if (!LP.lp_url_is_lastpass(g, h)) {
h = !1;
if (h = nf(d, c, l)) c.LPlpshowednote = 1, f && (Qf[d] = !0);
if (!h && !e && (f || !Nk[d])) Lk ? fn(c) : Mq(d, c, f)
}
} catch (y) {
ga("lpcheckpage: caught: " +
y + " ln: " + y.lineNumber, g)
}
}
function Mq(c, e, f) {
if (Lg(c, e)) f && (Nk[c] = currenturl, Qf[c] = !0);
else if ((f || !Ok[c]) && wd(c, e) && f) Ok[c] = currenturl, Qf[c] = !0
}
function nf(c, e, f, d, g) {
if (!c && !LP.isFennecNative || !e || "undefined" == typeof e) return !1;
var h = null,
l = c ? c.contentWindow : e.defaultView;
try {
var n = c ? LP.lpgetcurrenturl(c) : Wa.URLToASCII(e.location.href),
p = xb(n),
q = nb(n, p),
r, t = sc(p.host, n);
if (r = 0 < of.length && !kb(q, of) && !kb(t, of) ? !0 : kb(q, Od) || kb(t, Od) ? !0 : !1) return;
var h = Wa.URLToASCII(e.location.href),
A = xb(h),
y = "string" ==
typeof A.path ? A.path.split("/") : [],
J = nb(h, A),
u = sc(A.host, h);
"" == u && (u = 0 == h.indexOf("file") ? "file" : 0 == h.indexOf("javascript") ? "JAVASCRIPT" : "UNKNOWN");
n = [];
Pk(n, l, e);
q = l = J;
r = p = !1;
if (!kb(J, Dc)) {
var t = 0,
ib = "",
s = 0,
ia = 0,
B = "undefined" != typeof la[u] ? la[u] : [],
F;
for (F in B)
if (!("undefined" == typeof z[F] || z[F].genpw || z[F].isbookmark) && z[F].logins) {
for (var C = 0; C < z[F].logins.length; C++) {
var Kg = xb(z[F].logins[C].url);
if (z[F].save_all) {
LP.compare_urls(nb(z[F].logins[C].url, Kg), J, !0) && (p = !1, l = J, r = !0);
break
}
if (LP.compare_tlds(z[F].logins[C].tld,
u)) {
var K = z[F].logins[C].password,
ea = z[F].logins[C].openid_url,
ra = C < z[F].logins.length - 1 ? !0 : !1,
Y = z[F].logins[C].uname,
v = z[F].logins[C].pname,
D = je(n, z[F].logins[C].tld, K, ea, ra, v, Y),
E = nb(z[F].logins[C].url, Kg);
if (D && hj(D, z[F].logins[C], null, !1)) {
p = !1;
l = E;
r = !0;
break
}
p = !0;
ib != E && (t++, l = ib = nb(z[F].logins[C].url, Kg));
Kg.host == A.host && ia != E && (s++, q = ia = E);
break
}
}
if (1 < t && 1 < s || r) break
}
1 == s && !r ? l = q : 1 != t && !r && (l = J, p = !0)
}
var H = Nq(e),
Kg = !1,
E = !0,
q = [],
O = Ta(l);
r = [];
for (t = 0; 2 > t; t++)
for (F in B = "undefined" != typeof la[u] ?
la[u] : [], B)
if (!("undefined" == typeof z[F] || z[F].genpw || z[F].isbookmark) && z[F].logins) {
s = ib = !1;
for (C = 0; C < z[F].logins.length; C++) {
var M = Ta(z[F].url);
if (0 == t && LP.compare_urls(nb(z[F].logins[C].url), l, z[F].save_all) || 1 == t && !z[F].save_all && LP.compare_tlds(O, M)) {
if ("" != z[F].logins[C].custom_js) {
var G = Qk(z[F].logins[C].custom_js, fb(z[F], 0), fb(z[F], 1), "1", !1, e);
try {
if (e.body) {
var da = e.createElement("script"),
Ma = e.createTextNode(G);
da.appendChild(Ma);
if ("" != e.body.textContent.substring(0, 500 > e.body.textContent.length ?
e.body.textContent : 500).replace(/^\s\s*/, "").replace(/\s\s*$/, ""))("facebook.com" != u || 0 != e.getElementsByTagName("form").length) && e.body.appendChild(da)
}
} catch (w) {
ga("Error running custom JS 1: " + w + " ln: " + w.lineNumber, l)
}
}
var K = z[F].logins[C].password,
ea = z[F].logins[C].openid_url,
ra = C < z[F].logins.length - 1 ? !0 : !1,
Y = z[F].logins[C].uname,
v = z[F].logins[C].pname,
L = z[F].logins[C].oname,
V = z[F].logins[C].username,
Qa = z[F].logins[C].password,
D = null,
Q = !1,
Z = z[F].logins[C],
ia = -1;
if (0 < z[F].logins[C].fields.length ||
"undefined" != typeof z[F].otherlogins && "undefined" != typeof z[F].otherlogins[C] && 0 < z[F].otherlogins[C].fields.length) {
if (!D && 0 == C)
for (var ca = z[F].otherlogins.length - 1; 0 <= ca; ca--)
if (0 < z[F].otherlogins[ca].fields.length || 0 < z[F].otherlogins[ca].otherfields.length)
if (D = je(n, z[F].logins[C].tld, K, ea, !1, z[F].otherlogins[ca].pname, z[F].otherlogins[ca].uname)) {
Z = z[F].otherlogins[ca];
ia = ca;
break
}
D || (D = je(n, z[F].logins[C].tld, K, ea, ra, v, Y));
D ? Q = !0 : (D = je(n, z[F].logins[C].tld, K, ea, ra), !D && "" != Y && "" == v && (D = je(n, z[F].logins[C].tld,
K, ea, !0, null, Y)), D && (ib = !0, ra && (D = null)))
} else D = je(n, z[F].logins[C].tld, K, ea, ra), ib = !0;
null != D && p && !hj(D, Z, null, !1) && (ib = !0, ra && (D = null));
null != D && void 0 != typeof D.bHasInvisible && !0 == D.bHasInvisible && (g = !0, D.bHasInvisible = !1);
var ka = !1;
if (D && ib) {
var ja;
"undefined" != typeof r[D] ? ja = r[D] : (ja = Mk(D, !0), r[D] = ja);
2 <= ja.password ? D = null : Q || (Y = ja.uname, v = ja.pname, L = ja.oname, 0 == Z.fields.length && 0 == Z.otherfields.length && (ka = !0))
}
var ba = 0 == t && z[F].save_all && !p ? !0 : !1;
D && !ba && (D = Oq(D, e));
if (null != D || ba) {
if (ba) ib = !1;
else {
0 == Z.fields.length && (ib = !0);
var s = ib,
P;
if (P = "" != Z.captcha_id) a: {
var Q = D,
T = Z.captcha_id;
if (Q && Q.elements && Q.elements.length)
for (var W = 0; W < Q.elements.length; W++)
if (xa(Q.elements[W]) == T) {
P = !0;
break a
}
P = !1
}
P && (ib = !0)
} if (!ba)
for (Q = 0; Q < D.elements.length; Q++) {
var ha;
if (!(ha = "" != v && xa(D.elements[Q]) == v && "" != Qa)) {
var U;
if (!(U = "" != L && xa(D.elements[Q]) == L)) {
var pa;
if (!(pa = "" != Y && xa(D.elements[Q]) == Y && "" != V)) {
var fa;
if (fa = "email" == D.elements[Q].type || "tel" == D.elements[Q].type || "text" == D.elements[Q].type ||
"url" == D.elements[Q].type || "password" == D.elements[Q].type) {
var ma;
a: {
for (var aa = xa(D.elements[Q]), ab = Z.fields, W = 0; W < ab.length; W++)
if (ab[W].name == aa && "" != ab[W].value) {
ma = !0;
break a
}
ma = !1
}
fa = ma || ka && ("" != V && D.elements[Q].name == Y || "" != Qa && D.elements[Q].name == v || D.elements[Q].oname == L)
}
pa = fa
}
U = pa
}
ha = U
}
ha && Mg(D.elements[Q])
}
Pq(Z, ba, D && D.ownerDocument ? D.ownerDocument : e, D && D.ownerWindow ? D.ownerWindow : c ? c.contentWindow : e.defaultView);
ka = !1;
for (Q = 0; Q < q.length; Q++)
if (q[Q].id == z[F].id) {
ka = !0;
break
}
if (!ka) {
ib ||
(E = !1);
var X = new bj;
X.realmmatch = !1;
X.id = z[F].id;
X.onlyfill = ib;
X.needsnewurid = s;
X.otherlogin = ia;
X.url = h;
var bb = xb(z[F].url);
X.usernamematch = "" != z[F].unencryptedUsername && z[F].unencryptedUsername == H;
X.urlmatch = nb(z[F].url, bb) == J ? !0 : !1;
X.servermatch = bb.host == A.host ? !0 : !1;
X.portmatch = kj(bb, A);
X.serverportmatch = X.servermatch && X.portmatch;
X.tldmatch = LP.compare_tlds(z[F].tld, u) ? !0 : !1;
ia = {};
X.formmatch = ba ? !0 : hj(D, Z, null, !1, !0, ia);
X.needsnewurid |= ia.value && !ba;
X.methodok = ba ? !0 : "post" != Z.method || D.method.toLowerCase() ==
Z.method ? !0 : !1;
X.protocolok = "https" != bb.protocol || "https" == A.protocol ? !0 : !1;
X.fieldmatchcount = ba ? Qq(e, Z) : 0;
var va = "string" == typeof bb.path ? bb.path.split("/") : [],
Aa;
for (Aa = 0; Aa < y.length && Aa < va.length && va[Aa] == y[Aa]; Aa++);
X.pathlevelmatch = Aa;
q[q.length] = X
}
}
}
}
}
var y = !1,
wa = Ab();
q.sort(Ng);
q = Og(xd, q, u, "string" == typeof A.path ? A.path : "", A.host, z, Ge(A));
for (F = 0; F < q.length; F++) "undefined" != typeof Uc[q[F].id] && null != Uc[q[F].id] && 300 <= wa - Uc[q[F].id] && (Uc[q[F].id] = null), !q[F].onlyfill && z[q[F].id] && 1 < z[q[F].id].logins.length &&
(y = !0);
wa = !1;
Pg && Ab() - Qg < Pg && (wa = !0);
A = 0;
c && (c.lpfieldchanged = !1);
if (!f && !0 != d && !A && Rq && !Vc)
for (F = 0; F < q.length; F++)
if (1 != parseInt(z[q[F].id].never_autofill) && (!Vc && !z[q[F].id].pwprotect || wa)) {
if (q[F].tldmatch && q[F].formmatch && q[F].methodok && q[F].protocolok) {
var oa = "undefined" != typeof Uc[q[F].id];
LP.lpLaunchUrl(q[F].id, 1, 0, c, !0, !1, q[F].otherlogin, !1, !0, e);
g && oa && (Uc[q[F].id] = null);
A = q[F].id;
e.m_filledAid = A
}
break
}
if (0 < q.length) {
var na = c ? c.contentDocument : e;
d = !1;
na && "undefined" != typeof na.LPlpaddaccountshown &&
(d = !0);
f = !1;
if (0 < q.length) {
if ("undefined" != typeof na.aid)
for (oa = 0; oa < q.length; oa++) {
wa = !1;
for (J = 0; J < na.aid.length; J++)
if (na.aid[J].id == q[oa].id) {
wa = !0;
break
}
wa || (na.aid[na.aid.length] = q[oa], f = !0)
} else na.aid = q, na.aidindex = -1;
if (0 != A)
for (F = 0; F < q.length; F++)
if (q[F].id == A) {
na.aidindex = F;
break
}
}
LP.lpRebuildToolsMenu_all();
if (!d && Rk && c && (F = E ? "UseLastPassFill" : "UseLastPass", A && (F = "AlreadyFilled"), !("undefined" != typeof e.LPlpinvisiblepw2 && e.LPlpinvisiblepw2) && !g)) {
if (1 < na.aid.length || 0 == A || y) {
if ("undefined" ==
typeof c.lastautologintld || !LP.compare_tlds(c.lastautologintld, u)) c.lastautologintld = u, c.suppressautloginnotification = !1;
!Pd(c, "autologin") && ("undefined" == typeof c.suppressautloginnotification || !1 == c.suppressautloginnotification) ? vc(F, c, na.aid, "autologin", E, null, A, null, !1, !0) : f && vc(F, c, na.aid, "autologin", E, null, A, null, !0)
}
Kg = !0
}
}
return Kg
} catch (sa) {
ga("Failure with checking for autologin: " + sa + " ln: " + sa.lineNumber, h)
} finally {}
return !1
}
function Qq(c, e, f, d) {
try {
"undefined" == typeof d && (d = 1);
if (10 < d ||
"undefined" == typeof c.getElementsByName) return null;
for (var g = 0, h = 0; h < e.otherfields.length; h++) {
var l = e.otherfields[h],
n = c.getElementsByName(l.name);
if (0 == n.length) {
var p = c.getElementById(l.name);
p && (n = Array(p))
}
for (var q = 0; q < n.length; q++) p = n[q], xa(p.form) == l.formname && g++
}
if ("undefined" == typeof f || null == f) {
var r = cb(c);
f = r ? r.contentWindow : null
}
if (f && f.frames) {
var t = f.frames.length;
10 < t && (t = 10);
for (c = 0; c < t; c++) f.frames[c].document && (g += Qq(f.frames[c].document, e, f.frames[c].window, d + 1))
}
} catch (A) {
throw A;
} finally {}
return g
}
function Oq(c, e, f) {
if (c) {
if (!f && Sk && "off" == c.getAttribute("autocomplete")) return null;
if (Sq && (c.method && "string" == typeof c.method && "GET" == c.method.toUpperCase() || "string" == typeof c.action && 0 == c.action.indexOf("mailto:")))
if (f) {
if (!LP.lpConfirmYesNo(LP.lpgs("InsecureFormSubmit"))) return null
} else if ("undefined" == typeof e.m_warnedUserThisPage)
if (LP.lpConfirmYesNo(LP.lpgs("InsecureForm"))) e.m_warnedUserThisPage = 1;
else return e.m_warnedUserThisPage = 2, null;
else if (2 == e.m_warnedUserThisPage) return null
}
return c
}
function Ng(c, e) {
return c.realmmatch != e.realmmatch ? c.realmmatch ? -1 : 1 : c.usernamematch != e.usernamematch ? c.usernamematch ? -1 : 1 : z[c.id].fav != z[e.id].fav ? 1 == parseInt(z[c.id].fav) ? -1 : 1 : c.urlmatch != e.urlmatch ? c.urlmatch ? -1 : 1 : c.serverportmatch && e.serverportmatch && c.pathlevelmatch != e.pathlevelmatch ? c.pathlevelmatch > e.pathlevelmatch ? -1 : 1 : c.serverportmatch != e.serverportmatch ? c.serverportmatch ? -1 : 1 : c.servermatch != e.servermatch ? c.servermatch ? -1 : 1 : c.fieldmatchcount != e.fieldmatchcount ? c.fieldmatchcount > e.fieldmatchcount ? -1 : 1 : z[c.id].last_touch != z[e.id].last_touch ? z[c.id].last_touch > z[e.id].last_touch ? -1 : 1 : z[c.id].name != z[e.id].name ? z[c.id].name < z[e.id].name ? -1 : 1 : z[c.id].logins[0].unencryptedUsername < z[e.id].logins[0].unencryptedUsername ? -1 : 1
}
function lw(c, e) {
return c.getAttribute("name").toLowerCase() < e.getAttribute("name").toLowerCase() ? -1 : 1
}
function jn(c, e) {
return c.name.toLowerCase() < e.name.toLowerCase() ? -1 : 1
}
function kn() {
try {
var c = T["@mozilla.org/observer-service;1"].getService(ca.nsIObserverService);
Tq || (Tq = !0, c.addObserver(mw, "http-on-modify-request", !1))
} catch (e) {
ga("Failure with XHR setup: " + e + " ln: " + e.lineNumber)
}
}
function Qk(c, e, f, d, g, h) {
if ("3" == d && h.body && "" != h.body.textContent.replace(/^\s\s*/, "").replace(/\s\s*$/, "")) {
if (-1 != c.indexOf("lpcurruser")) {
if (!h.getElementById("lpcurruserelt") && h.body) {
var l = h.createElement("input");
l.setAttribute("style", "display: none;");
l.setAttribute("type", "text");
l.setAttribute("id", "lpcurruserelt");
l.setAttribute("value", "");
h.body.appendChild(l)
}
h.getElementById("lpcurruserelt") &&
(h.getElementById("lpcurruserelt").value = e)
} - 1 != c.indexOf("lpcurrpass") && (!h.getElementById("lpcurrpasselt") && h.body && (e = h.createElement("input"), e.setAttribute("style", "display: none;"), e.setAttribute("type", "password"), e.setAttribute("id", "lpcurrpasselt"), e.setAttribute("value", ""), h.body.appendChild(e)), h.getElementById("lpcurrpasselt") && (h.getElementById("lpcurrpasselt").value = f))
}
c = "if (typeof(lpcurruser) == 'undefined') lpcurruser = ''; if (document.getElementById('lpcurruserelt') && document.getElementById('lpcurruserelt').value != '') { lpcurruser = document.getElementById('lpcurruserelt').value; document.getElementById('lpcurruserelt').value = ''; } if (typeof(lpcurrpass) == 'undefined') lpcurrpass=''; if (document.getElementById('lpcurrpasselt') && document.getElementById('lpcurrpasselt').value != '') { lpcurrpass = document.getElementById('lpcurrpasselt').value; document.getElementById('lpcurrpasselt').value = ''; } var lploc=" +
ke(d) + ";" + (1 == g ? "var lponlyfill=1;" : "var lponlyfill=null;") + c + "lpcurruser = ''; lpcurrpass = '';";
c = c.replace(/lpcurrpage\./g, "");
c = c.replace(/lpframe1\./g, "");
c = c.replace(/lpframe2\./g, "");
return c.replace(/lpframe3\./g, "")
}
function Pq(c, e, f, d, g) {
"undefined" == typeof g && (g = 1);
if (10 < g || "undefined" == typeof f.getElementsByName) return null;
if (null != f.location && LP.compare_tlds(c.tld, Ta(Wa.URLToASCII(f.location.href))))
for (var h = 0; h < c.otherfields.length; h++) {
var l = c.otherfields[h],
n = f.getElementsByName(l.name);
if (0 == n.length) {
var p = f.getElementById(l.name);
p && (n = Array(p))
}
var q = !1;
if (0 == n.length) {
var q = !0,
r = l.name.match(/^(input|select|textarea)(\d+)$/);
r && (p = r[1], r = parseInt(r[2]), p = f.getElementsByTagName(p), p.length > r && (n = Array(p[r])))
}
for (r = 0; r < n.length; r++) p = n[r], (q || xa(p.form) == l.formname) && "" != l.value && Mg(p)
}
if (e) {
if ("undefined" == typeof d || null == d) d = browser.contentWindow;
if (d && d.frames) {
f = d.frames.length;
10 < f && (f = 10);
for (h = 0; h < f; h++) d.frames[h].document && Pq(c, e, d.frames[h].document, d.frames[h].window,
g + 1)
}
}
}
function Mg(c, e) {
var f = !1;
if (!("text" != c.type && "password" != c.type && "email" != c.type && "tel" != c.type && "url" != c.type)) {
var d = !1;
"undefined" == typeof e && (d = !0, Mb ? (f = !0, d = e = !1) : (e = !0, f = !1));
if (Uq) {
if (!Mb) {
var g = c.style.width.replace(/px/, "");
if ("" == g) try {
var h = c.ownerDocument.defaultView.getComputedStyle(c, ""),
g = h.width.replace(/px/, "")
} catch (l) {}
if (0 < g && 30 > g) return;
var n = c.style.backgroundImage;
if ("" == n) try {
h = c.ownerDocument.defaultView.getComputedStyle(c, ""), n = h.backgroundImage
} catch (p) {}
"none" ==
n && (n = "");
"" == n ? c.style.backgroundImage = e ? "url(data:image/gif;base64,R0lGODlhEAAQAPZVADsBAkECBFEGCmQDBGoEB3UIDWcOEn0dHnZGRnhBQntbXIILEoIMEoENFI8QGI0UHJMQGKERGqURGq4QGIsaIZ4fJq8WI68YJrQXJLIZJbgZJ7gZKLwcK74dLa4gKq4iLLUgLaApMLwpNrwsOKUzOcAfL8EhMcUjM8YkNMgoOJw+QKY8QtA5Sdo/T6dARa5FS6tOUr9MUqRRVrRVWY9pa5BmaZBqbMRKVNlRYclud/14iLyIiKuoqNGbneyPmfOAkPeElNGvsNO3t+aorfGjq+y/w8zMzNXU1N3S0t7W1t3a2uLR0e3U1vLd4OLh4ejo6Png4/bx8ff09Pr5+f7+/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAFYALAAAAAAQABAAAAfEgFaCVlCFhoWDgzk6QD+Oj0A6OYMyLSwdJR2amywtMoITKZgbFRsYIRqaKROCEpgZO1IkMFM7GJgSghGZKEVVQktVQyclJRG6JR8uM1NVVVEvKx7GyDHO11VUVTHUVgEECUlIR+RHSUoJBAGCAAMHKgpO8koIKgcDAIICCwwGRk89gjzhUYABAwGCGly4IIIIkxE3mvgAkeFCA0EPMBQ7gcNEio7FMDwQVAOCBQ6bNnGwAKHGIBoUHMicKZOCjUQ4cw4KBAA7)" :
"" : d = !1;
g = c.offsetWidth;
"" == n && (c.style.paddingRight = e ? "18px" : "0px", c.style.backgroundRepeat = "no-repeat", c.style.backgroundAttachment = "scroll", c.style.backgroundPosition = "center right");
c.style.border = "1px solid #c01f2f";
0 < g && (c.style.width = g + "px", c.style.width = 2 * g - c.offsetWidth + "px")
}
if (f && Mb && !ln(nb(c.ownerDocument.location.href), Ta(c.ownerDocument.location.href)) && (f = c.ownerDocument, !Vq(c) && !mn(f, c))) {
var h = "sites",
n = Ta(f.location.href),
q = LP.getMatchingSites(n, Tk).length,
n = [];
n[h] = 1 != q ? q : 0;
q = !1;
"password" == c.type && c == Uk(f, c.form) && (h = "sites", q = !0);
lj(f, c, h, n, q);
Ba(f, c);
if ((h = kd(f, c)) && h.dofloater) f.g_weaseled = !0
}
d && 0 < g && 54 > g && (c.addEventListener("focus", function() {
Mg(c, !1)
}, !1), c.addEventListener("blur", function() {
Mg(c, !0)
}, !1))
}
}
}
function nn(c, e, f) {
var d = 0;
if (!d && "" != f) {
var g = c.getElementById(f);
if (!g) {
var h = c.getElementsByName(f);
h && 0 < h.length && (g = h[0])
}
if (!g && (h = c.getElementsByTagName("INPUT")))
for (var l = 0; l < h.length; l++) h[l].value == f && (g = h[l]);
if (!g && (h = c.getElementsByTagName("A")))
for (l =
0; l < h.length; l++) h[l].href == f && (g = h[l]);
g && (h = g.ownerDocument.createEvent("MouseEvents"), h.initMouseEvent("click", !0, !0, g.ownerDocument.defaultView, 1, 0, 0, 0, 0, !1, !1, !1, !1, 0, null), g.dispatchEvent(h), d = 1)
}
d || (d = on(c, e, "submit"));
d || (d = on(c, e, "image"));
d || (d = on(c, e, "button"));
if (!d) {
g = "";
try {
g = Ta(Wa.URLToASCII(c.location.href))
} catch (n) {}
var d = f = null,
p = 0;
if (h = c.getElementsByTagName("INPUT"))
for (l = 0; l < h.length; l++) "password" == h[l].type ? f = h[l] : "text" == h[l].type && (d = h[l], p++);
f ? (Wq(13, f, c), Kh(f)) : 1 == p &&
(Wq(13, d, c), Kh(d));
"bankofamerica.com" != g && e && e.method && ("string" == typeof e.method && "POST" == e.method.toUpperCase()) && LP.lpGetCurrentWindow().setTimeout(function() {
Qd(c, e);
var d = c.createEvent("HTMLEvents");
d.initEvent("submit", !0, !0);
e.dispatchEvent(d)
}, 250)
}
}
function Wq(c, e, f) {
e.focus();
var d = f.createEvent("KeyboardEvent");
d.initKeyEvent("keydown", !0, !0, null, !1, !1, !1, !1, c, 0);
e.dispatchEvent(d);
d = f.createEvent("KeyboardEvent");
d.initKeyEvent("keypress", !0, !0, null, !1, !1, !1, !1, c, 0);
e.dispatchEvent(d);
f = f.createEvent("KeyboardEvent");
f.initKeyEvent("keyup", !0, !0, null, !1, !1, !1, !1, c, 0);
e.dispatchEvent(f)
}
function hj(c, e, f, d, g, h) {
f = !0;
var l = d = 0,
n = [],
p = [];
if (("undefined" == typeof e.fields || 0 == e.fields.length) && "undefined" != typeof e.login) e = e.login;
if ("undefined" != typeof e.fields)
if (0 < e.fields.length)
for (var q = 0; q < e.fields.length; q++) {
if (("text" == e.fields[q].type || "email" == e.fields[q].type || "tel" == e.fields[q].type) && d++, "password" == e.fields[q].type && l++, "email" == e.fields[q].type || "tel" == e.fields[q].type ||
"text" == e.fields[q].type || "password" == e.fields[q].type || "select-one" == e.fields[q].type) n[e.fields[q].name] = e.fields[q].value, p[e.fields[q].name] = e.fields[q].type
} else
for (q in e.fields) "undefined" != typeof e.fields[q] && (n[q] = e.fields[q], p[q] = "unknown");
e.uname && (n[e.uname] = e.uname);
e.pname && (n[e.pname] = e.pname);
e.oname && (n[e.oname] = e.oname);
var r = e = !1,
t = !1,
A = !1,
y = 0,
J = 0;
c = c.elements;
for (q = 0; q < c.length; q++)
if (e = !0, "undefined" != typeof c[q].type) {
if (!h && y + J > d + l) {
r = !0;
break
}("text" == c[q].type || "email" ==
c[q].type || "tel" == c[q].type || "url" == c[q].type) && y++;
"password" == c[q].type && J++;
if ("email" == c[q].type || "tel" == c[q].type || "text" == c[q].type || "password" == c[q].type || "select-one" == c[q].type) {
var u = xa(c[q]);
if ("undefined" != typeof n[u]) t = !0, n[u] = null;
else if ("" != u && !("hidden" == c[q].type || "select-one" == c[q].type)) r = !0
}
}
for (q in n) t = !0, null != n[q] && "" != q && "select-one" != p[q] && (A = !0);
h && (h.value = y == d && J == l && (r || A));
if (!e || !t) f = !1;
else if (g) r && A && (f = !1);
else if (r || A) f = !1;
return f
}
function gj(c, e) {
var f = [];
Pk(f,
c, e);
for (var d = 0; d < f.length; d++)
if (0 < f[d].pwnames.length) return f[d].form;
return null
}
function Xq(c, e, f) {
"undefined" == typeof f && (f = 1);
if (10 < f || !c) return e;
var d = c.frames;
e.push(c.document);
for (c = 0; c < d.length; c++) Xq(d[c], e, f + 1);
return e
}
function cb(c) {
for (var e = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); e.hasMoreElements();) {
var f = e.getNext();
if ("function" == typeof f.getBrowser) {
var d = f.getBrowser();
if (null != d) {
f = d.browsers;
"undefined" == typeof f &&
LP.isFennec && (f = Array(d));
for (d = 0;
"undefined" != typeof f && d < f.length; d++)
if ("undefined" != typeof f[d] && c == f[d].contentDocument) return f[d];
for (var g = 0;
"undefined" != typeof f && g < f.length; g++)
if ("undefined" != typeof f[g])
for (var d = Xq(f[g].contentWindow, []), h = 0; h < d.length; h++)
if (c == d[h]) return f[g]
}
}
}
return null
}
function kw(c) {
LP.lpGetCurrentWindow().setTimeout(function() {
nw(c)
}, 900)
}
function nw(c) {
try {
var e = cb((c ? c.target : this).ownerDocument);
if (null != e && !("undefined" != typeof e.contentDocument.m_filledAid &&
e.contentDocument.m_filledAid)) {
for (var f = e.contentWindow; null != f.top && f.top != f;) f = f.top;
var d = f.document;
if (!("undefined" == typeof d || "undefined" == typeof d.forms) && !("undefined" != typeof d.LPlpshowednote && 1 < d.LPlpshowednote)) {
var g = d.forms.length;
100 < g && (g = 100);
for (c = 0; c < g; c++) {
for (var h = d.forms[c].elements, f = !0, l = 0; l < h.length && 100 > l; l++)
if ("undefined" != typeof h[l].type && "password" == h[l].type && !oc(h[l])) {
f = !1;
break
}
if (!0 == f) {
if ("undefined" == typeof d.LPlpclickfilled) d.LPlpclickfilled = [], d.LPlpclickfilled[d.LPlpclickfilled.length] =
c;
else {
f = !1;
for (l = 0; l < d.LPlpclickfilled.length; l++)
if (d.LPlpclickfilled[l] == c) {
f = !0;
break
}
if (f) continue;
else d.LPlpclickfilled[d.LPlpclickfilled.length] = c
}
var n = cb(d);
if ("function" == typeof LP.getBrowser().getNotificationBox) {
LP.lpGetCurrentWindow().setTimeout(function() {
0 == LP.getBrowser().getNotificationBox(e).allNotifications.length && nf(n, n.contentDocument, null, !1 == pn)
}, 500);
Mb && (LP.checkShouldRecheck(e), n && n != e && LP.checkShouldRecheck(n));
break
}
}
}
}
}
} catch (p) {
ga("Error in click handler: " + p + " ln: " +
p.lineNumber, null)
}
}
function Lh(c, e, f) {
try {
if (null != c)
if (null == e) yd && c.lpcurrenturl && LP.compare_tlds(yd.tld, Ta(c.lpcurrenturl)) && !LP.compare_tlds(yd.tld, Ta(f)) && LP.lp_hide_alert(), c.lpcurrenturl = f;
else {
var d = e.ownerDocument;
c.lpcurrenturl = LP.compare_tlds(Ta(Wa.URLToASCII(d.location.href)), Ta(f)) ? f : Wa.URLToASCII(d.location.href)
}
} catch (g) {
c.lpcurrenturl = f
}
}
function qn(c, e) {
var f = null,
d = "undefined" != typeof la[c] ? la[c] : [],
g;
for (g in d)
if (!("undefined" == typeof z[g] || z[g].genpw || z[g].isbookmark || e && z[g].id ==
e) && z[g].logins)
for (d = 0; d < z[g].logins.length; d++)
if (LP.compare_tlds(z[g].logins[d].tld, c)) {
var h = yb(B, z[g].group);
Tb(h, !0) && (null == f && (f = []), f[g] = z[g].logins[d].unencryptedUsername)
}
return f
}
function Vk(c) {
c = c || event;
c.preventDefault ? c.preventDefault() : c.returnValue = !1
}
function Qb(c, e) {
return LP.setTimeout(c, e)
}
function Sa(c, e) {
var f = LP.lpprefsHasUserValue("clearfilledfieldsonlogoff") && LP.lpprefsGetBoolPref("clearfilledfieldsonlogoff");
Fg = null;
P && Gc("logout");
Wc = {};
le = {};
Hc = {};
$c = {};
Rd = {};
Eb = {};
jc = {};
rn = !1;
He = null;
LP.lpCloseNotifications();
LP.deleteallattachments(!0);
LP.lplogoff_win();
LP.lpCloseClickables();
try {
LP.lpprefsHasUserValue("donotclearbasicauth") || T["@mozilla.org/network/http-auth-manager;1"].getService().QueryInterface(ca.nsIHttpAuthManager).clearAll()
} catch (d) {}
Oc ? Pc(!0) : LP.lpMakeRequest(LP.lp_base + "logout.php?ff_plugin=1&from=" + LP.en(e), "", null == c || !0 == c ? ow : null);
Kc = ha = Q = "";
Qg = 0;
ld = "";
Wk = null;
lpsendchallengescore = sn = !1;
lf();
LP.lphelpstats = null;
Xk = Yk = 0;
Zk = !1;
Sf = -1;
yd = null;
"undefined" !=
typeof this.xssargs && (this.xssargs = {});
Sc = "";
LP.lpGetCurrentWindow().setTimeout(function() {
LP.lp_remove_cookie("." + LP.lp_basehost, "PHPSESSID")
}, 30);
LP.lpDisplayAccounts_all(!0);
"undefined" != typeof g_oldpbkdf2 && (g_oldpbkdf2 = 0);
if (f)
for (f = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); f.hasMoreElements();) {
var g = f.getNext();
if ("function" == typeof g.getBrowser && (g = g.getBrowser(), null != g && (g = g.browsers)))
for (var h = 0; h < g.length; h++) Yq(g[h].contentDocument,
g[h].contentWindow)
}
}
function ow(c) {
c && 4 == c.readyState && (!0 == LP.getcontrol("hideformfilltitle") ? Pc(!0) : Pc())
}
function Hh() {
var c = rb(ja);
if ("undefined" != typeof pf && null != pf && "" != pf && "undefined" != typeof Q && null != Q && "" != Q && "undefined" != typeof ha && null != ha && "" != ha) {
var c = Xa.Encrypt({
pass: pf,
data: c,
b64: !0,
mode: "ecb",
bits: 256
}),
e = Xa.Encrypt({
pass: ja,
data: "lastpass rocks",
b64: !0,
mode: "ecb",
bits: 256
}),
c = Tf(c + "\n" + e, !0);
Rb(ha + "_lpall.slps", c);
eb(ha + "_lp.act.key")
}
}
function pw(c, e, f) {
c && 200 == c.status && 4 == c.readyState &&
(Rb(f, c.responseText), "ff.dat" == f ? (Rg = [], tn = [], zd = [], Uf = []) : "sites.dat" == f && Zq())
}
function Zq() {
Mh = [];
var c = Jb("sites.dat");
if (null != c && "" != c)
for (var c = c.split("\n"), e = 0; e < c.length; e++) - 1 != c[e].indexOf(".") && (Mh[c[e]] = "")
}
function me(c, e) {
var f = c.getElementById("lpt_lastpass-compact-btn");
e && f && "BrowserToolbarPalette" == f.parentNode.id && (f = null);
if (!f && "undefined" != typeof c.defaultView.CustomizableUI && c.defaultView.CustomizableUI.getPlacementOfWidget("lpt_lastpass-compact-btn")) {
var d = f = c.defaultView.CustomizableUI.getWidget("lpt_lastpass-compact-btn");
if (d && (d = d.forWindow(c.defaultView))) f = d.node
}
return f
}
function Sd(c, e, f, d, g, h, l, n, p, q, r, t, A, y, J) {
md(1, 1E4);
var u = !1;
e && (q = u = !0);
var ib = !1;
6 == f && (ib = !0);
var s = null;
h && (s = z[h]);
"undefined" == typeof A && (A = 1);
if (10 < A) return "";
1 == A && (Sg = []);
if ("undefined" == typeof r || null == r) r = d ? d.contentDocument : LP.getBrowser().contentDocument;
if ("undefined" != typeof g) {
if ("undefined" != typeof g.LPlpforminfosaved && !p) {
var ia = !1;
if ("undefined" != typeof g && g != g.LPlpforminfosavedform) {
var C = LP.getWindowFromDocument(g.ownerDocument);
if ("undefined" == typeof C || C.top != C.self) ia = !0
}
if (!ia) return
}
g.LPlpforminfosaved = !0;
g.LPlpforminfosavedform = g;
if (1 == f || 3 == f || 4 == f) {
if ("undefined" != typeof g.LPlpforminfouploaded) return;
g.LPlpforminfouploaded = !0
}
}
var F;
F = d && "undefined" != typeof d.lpcurrenturl ? d.lpcurrenturl : "undefined" != typeof r.location ? Wa.URLToASCII(r.location.href) : d ? LP.lpgetcurrenturl(d) : LP.lpgetcurrenturl(LP.getBrowser());
var D = Ta(F),
v = r.getElementsByTagName("form"),
K = v.length,
ea = "";
q && 1 == A && y && (y.siteinfo_save_all_fields_numfields =
0);
for (var ia = [], ra = "", Y = "", E = "", H = "", Rf = "", C = "", G = !1, Q = !1, M = "", L = "", Z = "", Ma = "", w = !P, ca = [], V = "", Qa = "", ka = "", ba = "", ja = [""], W = "undefined" != typeof g && 0 != g ? 0 : 1; W < K + (q || ib ? 2 : 1) && !(1 == W && G); W++) {
var ha = "",
T = 0,
U = 0,
pa = 0,
na, ma, oa, sa;
if (W == K + 1) {
na = null;
ra = "";
ma = [];
oa = [];
Y = ["input", "select", "textarea"];
for (E = 0; E < Y.length; E++)
for (var fa = r.getElementsByTagName(Y[E]), la = 0; la < fa.length; la++)
if (null == fa[la].form || kb(xa(fa[la]), ja)) ma[ma.length] = fa[la], oa[oa.length] = Y[E] + la;
sa = ma.length;
E = Y = ""
} else na = 1 <= W ? v[W - 1] :
g, ra = 1 <= W ? xa(v[W - 1]) : xa(g), ma = 1 <= W ? v[W - 1].elements : g.elements, sa = ma.length, Y = 1 <= W ? v[W - 1].action : g.action, E = 1 <= W ? v[W - 1].method : g.method;
for (var aa = [], ab = [], X = [], bb = [], la = 0; la < sa; la++) "undefined" != typeof aa[ma[la].name] && (X[ma[la].name] = !0), aa[ma[la].name] = !0, "undefined" != typeof ab[ma[la].id] && (bb[ma[la].id] = !0), ab[ma[la].id] = !0;
for (la = 0; la < sa; la++) {
aa = ma[la];
ab = aa.value;
"image" == aa.type && (ab = aa.src);
if (q && "" == ab && aa.name && "" != aa.name) {
for (var fa = r.getElementsByName(aa.name), va = xa(aa), Aa = !1, qa = 0; qa <
fa.length; qa++)
if (xa(fa[qa].form) == ra && xa(fa[qa]) == va && fa[qa].type == aa.type && "" != fa[qa].value) {
Aa = !0;
break
}
if (Aa) continue
}
va = q && "" == ra ? xa(aa, !0) : xa(aa);
if (("" == va || "undefined" != typeof X[va] && "undefined" != typeof bb[va]) && (q || ib))
if (W == K + 1) va = oa[la];
else {
ja[ja.length] = va;
continue
}
if ((!q && !ib || "" != ra) && "undefined" != typeof X[va]) va = xa(aa, !0);
if ((!q || u) && Nh == na)
for (Aa = 0; Aa < Ea.length; Aa++)
if (Ea[Aa].name == xa(aa)) {
if (Ea[Aa].value != ab)
if ("" == ab || ab.match(/^\*+$/)) ab = Ea[Aa].value;
else if (ab.length == Ea[Aa].value.length) {
fa = !0;
for (qa = 0; qa < ab.length; qa++)
if (ab.charAt(qa) != Ea[Aa].value.charAt(qa) && "*" != ab.charAt(qa)) {
fa = !1;
break
}
fa && (ab = Ea[Aa].value)
}
break
}
if ("password" == aa.type && "object" == typeof r.LPlpsharedpasswordfills)
for (Aa = 0; Aa < r.LPlpsharedpasswordfills.length; Aa++)
if (r.LPlpsharedpasswordfills[Aa] == aa) {
ab = "";
break
}
LP.compare_tlds(D, "live.com") && "hidden" == aa.type && "login" == xa(aa) && (aa.type = "text");
"checkbox" == aa.type && (ab = aa.checked ? ab + "-1" : ab + "-0");
"radio" == aa.type && (ab = aa.checked ? ab + "-1" : ab + "-0");
if ("select-one" ==
aa.type || "dropdown" == aa.type || "select-multiple" == aa.type) {
if ("select-multiple" == aa.type) {
fa = ab = "";
for (Aa = 0; Aa < aa.options.length; Aa++) aa.options[Aa].selected && (ab += fa + LP.en(aa.options[Aa].value), fa = "|")
} else ab = 0 > aa.selectedIndex || aa.selectedIndex >= aa.options.length || "undefined" == typeof aa.options[aa.selectedIndex] ? "" : aa.options[aa.selectedIndex].value;
for (Aa = 0; Aa < aa.options.length; Aa++) ha += (q || ib ? ra : W) + "\t" + LP.en(va) + "\t" + LP.en(Tg(aa.options[Aa].value)) + "\tselect-option\n", ha += (q || ib ? ra : W) + "\t" + LP.en(va) +
"\t" + LP.en(Tg(aa.options[Aa].text)) + "\tselect-option-text\n"
}
if (("email" == aa.type || "tel" == aa.type || "text" == aa.type || "url" == aa.type) && "openid_url" != xa(aa) && !aa.readOnly && ("" != ab || n)) {
if (!U && "" == L && "" == Ma || !T && "" == M && "" == Z) M = xa(aa), Z = ab;
T = 1;
Q = !0;
1 != U && "undefined" != typeof Mh[nb(F)] && (U = 1, e = !1)
}
if ("password" == aa.type && ("" != ab || n)) {
if ("" != ab && (U && "" != L && !T && (M = L, Z = Ma, T = 1, Q = !0), "" == L && "" == Ma || oc(aa))) L = xa(aa), Ma = ab;
U = 1
}
if ("openid_url" == xa(aa) && ("" != ab || n)) pa = 1;
Aa = ab = Tg(ab);
if (("email" == aa.type || "tel" ==
aa.type || "url" == aa.type || "text" == aa.type || "password" == aa.type || "textarea" == aa.type || "hidden" == aa.type) && 6 != f) w ? (fa = ca.length, ca[fa] = ab, ab = "__LPENCRYPTEDSTRING" + fa + "__") : (Sg.push(ab), ab = s ? "undefined" != typeof s.username && "" != s.username && ab == O(s.username, s, B) ? s.username : "undefined" != typeof s.password && "" != s.password && ab == O(s.password, s, B) ? s.password : wa(ab, s, B) : da(ab));
ha += (q || ib ? ra : W) + "\t" + LP.en(va) + "\t" + LP.en(ab) + "\t" + LP.en(aa.type) + "\n";
if (q && (fa = !1, "email" == aa.type || "tel" == aa.type || "url" == aa.type ||
"text" == aa.type || "password" == aa.type || "textarea" == aa.type || "select-one" == aa.type || "select-multiple" == aa.type ? (y && y.siteinfo_save_all_fields_numfields++, fa = !0) : "checkbox" == aa.type ? (y && y.siteinfo_save_all_fields_numfields++, fa = !0) : "radio" == aa.type && aa.checked && (y && y.siteinfo_save_all_fields_numfields++, fa = !0), fa)) {
fa = new Nd;
fa.name = va;
fa.type = aa.type;
fa.value = ab;
fa.formname = ra;
if ("checkbox" == aa.type || "radio" == aa.type) fa.checked = aa.checked, fa.value = "string" == typeof fa.value && 2 <= fa.value.length ? fa.value.substring(0,
fa.value.length - 2) : "";
y && (null == y.siteinfo_save_all_fields_fields && (y.siteinfo_save_all_fields_fields = []), y.siteinfo_save_all_fields_fields[y.siteinfo_save_all_fields_fields.length] = fa)
}
va = new Nd;
va.name = xa(aa);
va.type = aa.type;
va.value = w ? Aa : ab;
if ("checkbox" == aa.type || "radio" == aa.type) va.checked = aa.checked, va.value = va.value.substring(0, va.value.length - 2);
q && (va.formname = ra);
if ("radio" != aa.type || aa.checked) ia[ia.length] = va;
if (l && "" == V && ("email" == aa.type || "tel" == aa.type || "url" == aa.type || "text" == aa.type) &&
"" != xa(aa) && "" != aa.value) ab = RegExp(LP.lpgs("ff_username_regexp"), "i"), ab.exec(xa(aa)) ? (V = xa(aa), Qa = Aa) : (va = Oh(aa), "" != va && ab.exec(va) && (V = xa(aa), Qa = Aa));
if (l && "" == ka && ("email" == aa.type || "tel" == aa.type || "url" == aa.type || "text" == aa.type) && "" != xa(aa) && "" != aa.value) ab = RegExp(LP.lpgs("ff_email_regexp"), "i"), ab.exec(xa(aa)) ? (ka = xa(aa), ba = Aa) : (va = Oh(aa), "" != va && ab.exec(va) && (ka = xa(aa), ba = Aa))
}
if (U || pa) {
H = ra;
Rf = Y;
C = E;
na = r.getElementsByTagName("input");
for (la = 0; la < na.length; la++)
if (aa = na[la], va = xa(aa), "image" ==
aa.type && (1 <= W && W <= K && aa.form == r.forms[W - 1] || 1 > W && aa.form == g)) ha += (q || ib ? ra : W) + "\t" + LP.en(va) + "\t" + LP.en(Tg(aa.src)) + "\t" + LP.en(aa.type) + "\n"
}
if (U || pa || e && T && (0 < f || 1 > W || W > K || v[W - 1] == g) || q) ea += ha, q || (ea += (ib ? ra : W) + "\taction\t" + LP.en(Tg(Y)) + "\taction\n", ea += (ib ? ra : W) + "\tmethod\t" + LP.en(Tg(E)) + "\tmethod\n"), G = !0
}
if (!q && G)
for (Aa = 0; Aa < Ea.length; Aa++)
if ("" != Ea[Aa].value && Ea[Aa].formname && "" != Ea[Aa].formname && Ea[Aa].formname != H) {
aa = Ea[Aa];
ab = Tg(aa.value);
if (("email" == aa.type || "tel" == aa.type || "url" == aa.type ||
"text" == aa.type || "password" == aa.type || "textarea" == aa.type || "hidden" == aa.type) && 6 != f) w ? (fa = ca.length, ca[fa] = ab, ab = "__LPENCRYPTEDSTRING" + fa + "__") : (Sg.push(ab), ab = s ? "undefined" != typeof s.username && "" != s.username && ab == O(s.username, s, B) ? s.username : "undefined" != typeof s.password && "" != s.password && ab == O(s.password, s, B) ? s.password : wa(ab, s, B) : da(ab));
ea += aa.formname + "\t" + LP.en(xa(aa)) + "\t" + LP.en(ab) + "\t" + LP.en(aa.type) + "\n"
}
if (q) {
if ("undefined" == typeof t || null == t) t = d ? d.contentWindow : LP.getBrowser().contentWindow;
if (t && t.frames) {
u = t.frames.length;
10 < u && (u = 10);
for (Aa = 0; Aa < u; Aa++) t.frames[Aa].document && (ea += Sd(c, e, f, d, g, h, l, n, p, q, t.frames[Aa].document, t.frames[Aa].window, A + 1, y, J))
}
if (1 < A) return ea
}
if (6 == f) return ea;
"" == H && (H = ra);
"" == Rf && (Rf = Y);
"" == C && (C = E);
if ("" != ea || q) {
g = "undefined" != typeof r.characterSet ? r.characterSet : r.charset;
var ua;
a: {
r = r.location.toString();
try {
if (!LP.compare_tlds(Ta(F), Ta(r))) {
ua = F;
break a
}
} catch (Ia) {}
ua = r
}
c = ea;
r = "data=" + rb(ea) + "&ref=" + LP.en(ac(ua)) + "&charset=" + g;
ea = "&ref=" + LP.en(ac(ua)) +
"&charset=" + g;
"" == V && (V = ka, Qa = ba);
l && (r += "&createacct=1&username_field=" + LP.en(V), ea += "&createacct=1&username_field=" + LP.en(V), "" != Qa && (Z = Qa));
r += LP.GetIdentityParam();
ea += LP.GetIdentityParam();
V = xb(F);
if (1 == f) w ? ga("Was going to potentially upload unencrypted data. upload=1,multi=" + e + ",createacct=" + l + ",allowblank=" + n, null) : (f = 0 != h ? z[h] : {}, f.postdata = r, f.posturl = LP.lp_base + "gm_deliver.php", f.newvalues = Sg, LP.lpMakeRequest(f.posturl, f.postdata, null, null, f));
else {
if (2 == f) return [r, ea, c];
if (3 == f) w ? ga("Was going to potentially upload unencrypted data. upload=3,multi=" +
e + ",createacct=" + l + ",allowblank=" + n, null) : (f = z[h], e = yb(B, f.group), r += !1 == e ? "" : "&sharedfolderid=" + LP.en(e.id), f.postdata = r + "&updatefields=1&aid=" + LP.en(h), f.posturl = LP.lp_base + "gm_deliver.php", f.newvalues = Sg, $q(f, ia), f.logins[0].fields = ia, LP.lpMakeRequest(f.posturl, f.postdata, Ug, null, f));
else if (4 == f) w ? ga("Was going to potentially upload unencrypted data. upload=4,multi=" + e + ",createacct=" + l + ",allowblank=" + n, null) : (f = z[h], e = yb(B, f.group), r += !1 == e ? "" : "&sharedfolderid=" + LP.en(e.id), f.postdata = r + "&addurid=1&aid=" +
LP.en(h), f.posturl = LP.lp_base + "gm_deliver.php", f.newvalues = Sg, 10 > f.otherlogins.length && ($q(f, ia), e = new gd, e.urid = 0, e.url = ua, ua = xb(e.url), e.server = ua.host, e.tld = sc(ua.host, e.url), nb(e.url, ua), e.submit_id = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].submit_id : "", e.captcha_id = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].captcha_id : "", e.custom_js = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].custom_js : "", e.username = f.username, e.password = f.password, e.openid_url =
"", e.method = "", e.action = "", e.unencryptedUsername = O(e.username, f, B), e.uname = "", e.pname = "", e.oname = "", e.fields = ia, e.otherfields = [], f.otherlogins[f.otherlogins.length] = e), LP.lpMakeRequest(f.posturl, f.postdata, Ug, null, f));
else {
fa = new zq;
fa.newvalues = Sg;
fa.upload = f;
fa.postdata = r;
fa.postdataFormData = c;
fa.postdataWithoutData = ea;
fa.url = F;
fa.server = V.host;
fa.hastext = Q;
fa.tld = sc(V.host, F);
ua = xb(Rf);
fa.actiontld = sc(ua.host, Rf);
if (ua = d ? LP.lpgetcurrenturl(d) : LP.lpgetcurrenturl(LP.getBrowser())) fa.topdoctld = Ta(ua);
fa.basic_auth = !1;
fa.uname = M;
fa.username = Z;
fa.pname = L;
fa.encryptedPassword = w ? Ma : da(Ma);
fa.needsEncryption = w;
fa.encryptedStrings = ca;
fa.show_count = 0;
fa.action = Rf;
fa.method = C;
fa.fields = ia;
fa.timeSaved = Ab();
fa.ignorefromcheckadd = "undefined" != typeof J && null != J ? !0 : !1;
if (e) {
ia = !1;
if (5 != f && 0 < Ea.length) {
ab = RegExp(LP.lpgs("ff_search_regexp"), "i");
for (Aa = 0; Aa < Ea.length; Aa++)
if ("" != Ea[Aa].name && "text" == Ea[Aa].type && !ab.exec(Ea[Aa].name)) {
ia = !0;
break
}
}
if (ia || 5 == f) 5 < id.length && id.splice(0, id.length - 5), id.push(fa)
} else Pa["undefined" !=
typeof J && null != J ? J : Rf] = fa, !fa.ignorefromcheckadd && d && LP.setTimeout(function() {
LP.checkAddTimer(d, Rf)
}, 1E4)
}
}
}
}
function $q(c, e) {
for (var f = 0, d = "", g = 0; g < e.length && !("text" == e[g].type && (d = e[g].value, 2 <= ++f)); g++);
if (1 == f && "" != d) {
for (g = f = 0; g < c.logins.length; g++)
for (var h = 0; h < c.logins[g].fields.length; h++)
if ("text" == c.logins[g].fields[h].type || "email" == c.logins[g].fields[h].type || "tel" == c.logins[g].fields[h].type || "url" == c.logins[g].fields[h].type) {
f++;
break
}
if (0 == f)
for (g = 0; g < c.otherlogins.length; g++)
for (h =
0; h < c.otherlogins[g].fields.length; h++)
if ("email" == c.otherlogins[g].fields[h].type || "tel" == c.otherlogins[g].fields[h].type || "text" == c.otherlogins[g].fields[h].type || "url" == c.otherlogins[g].fields[h].type) {
f++;
break
}
if (0 == f) {
c.username = d;
c.unencryptedUsername = O(c.username, c, B);
for (g = 0; g < c.logins.length; g++) c.logins[g].username = c.username, c.logins[g].unencryptedUsername = c.unencryptedUsername;
for (g = 0; g < c.otherlogins.length; g++) c.otherlogins[g].username = c.username, c.otherlogins[g].unencryptedUsername =
c.unencryptedUsername
}
}
}
function mj(c, e) {
var f = lc();
if (f) {
var d;
try {
"object" == typeof f && "undefined" != typeof f.accts_version ? (0 == e ? f.neverurls.neveraccounts.push(c) : 1 == e ? f.neverurls.nevergenerates.push(c) : 2 == e ? f.neverurls.neverformfills.push(c) : 3 == e ? f.neverurls.neverautologins.push(c) : 6 == e && f.neverurls.nevershowicons.push(c), d = !0) : d = !1
} catch (g) {
d = !1
}
d && Vg(f) && wc(f, null, "add_never_to_local_file") && Fb()
}
}
function ar(c, e) {
var f = Pa[c].url,
d, f = e ? Ta(f) : nb(f);
d = "url=" + LP.en(ac(f));
Tc[Tc.length] = f;
mj(f, 0);
LP.lpGetCurrentWindow().setTimeout(function() {
Ph(d)
}, 100)
}
function br(c, e) {
var f, d = e ? Ta(c) : nb(c);
f = "url=" + LP.en(ac(d)) + "&type=3";
Od[Od.length] = d;
mj(d, 3);
LP.lpGetCurrentWindow().setTimeout(function() {
Ph(f)
}, 100)
}
function cr(c, e) {
var f, d = e ? Ta(c) : nb(c);
f = "url=" + LP.en(ac(d)) + "&type=6";
Td[Td.length] = d;
mj(d, 6);
LP.lpGetCurrentWindow().setTimeout(function() {
Ph(f)
}, 100)
}
function gn(c, e, f) {
c += LP.GetIdentityParam();
try {
for (var d in z)
if (z[d].genpw && z[d].tld == Ta(e.url) && O(z[d].password, z[d], B) == O(e.password,
e, B)) {
c += "&delgenpwaid=" + LP.en(d);
break
}
} catch (g) {}
d = yb(B, e.group);
c += !1 == d ? "" : "&sharedfolderid=" + LP.en(d.id);
e.postdata = c;
e.posturl = LP.lp_base + "deliver_and_add.php";
e.newvalues = "undefined" != typeof f && 0 < f.length ? f : [];
LP.lpMakeRequest(e.posturl, e.postdata, Ug, null, e)
}
function dr(c, e) {
return 0 < qf.length && !kb(c, qf) && !kb(e, qf) ? !0 : kb(c, Ud) || kb(e, Ud) ? !0 : !1
}
function er(c, e) {
return 0 < rf.length && !kb(c, rf) && !kb(e, rf) ? !0 : kb(c, Vd) || kb(e, Vd) ? !0 : !1
}
function ln(c, e) {
return 0 < sf.length && !kb(c, sf) && !kb(e, sf) ? !0 : kb(c,
Td) || kb(e, Td) ? !0 : !1
}
function Ph(c) {
LP.lpMakeRequest(LP.lp_base + "add_never.php", c, null)
}
function $k() {
var c = ha;
if ("" == c || null == c) return "";
var e = c + "_icons3.lps";
ma() || (e = c + "_icons3b64.lps");
return e.toUpperCase()
}
function fr(c) {
var e = "";
if (!c) {
c = $k();
if ("" == c) return e;
c = Jb(c);
if (!1 == c) return e
}
if ((c = /iconsversion=([^\n]+)\n/.exec(c)) && 2 == c.length) e = parseInt(c[1]), e = isNaN(e) ? "" : e.toString();
return e
}
function gr(c) {
if (4 == c.readyState && 200 == c.status && c.responseText) {
var e = c.responseText;
if (!("latest" ==
e || "nodata" == e))
if (c = fr(e), "" != c) {
c = "iconsversion=" + c + "\n";
var e = e.substring(c.length),
f = Hk("LastPassIcons<" + e + ">LastPassIcons");
if (null == f) return !1;
e = null;
e = ma() ? da(f) : Hk(f);
if ("" == e || null == e) return ga("Failed to encrypt icons data", null), !1;
f = $k();
"" != f && (ne = !0, Rb(f, c + e), xc(null), LP.lpGetCurrentWindow().setTimeout(function() {
LP.lpDisplayAccounts_all(!0)
}, 0), LP.lpGetCurrentWindow().setTimeout(function() {
LP.lpRebuildToolsMenu_all()
}, 0))
}
}
}
function xc(c, e) {
function f() {
eb($k());
versionff = "0";
var c =
(new Date).getTime();
if (1E4 > c - hr) return d;
hr = c;
LP.isFennecNative || LP.lpMakeRequest(LP.lp_base + "geticon.php", "versionff=" + LP.en(versionff), gr);
return d
}
var d = "data:image/gif;base64,R0lGODlhEAAQAIcAAAAAAExnf1BpgWR0iHZ6hHeBkX+GkYiOmpeaopucoaSlqqWmqrm9w7q+xL+/wry/xcXGyc3Oz9HS1NPU1tnZ2d/h4+Di5OLj5uPl5+Tk5OXm6O7u7+7v8O/w8e/w8vDw8fHx8vLy8/Pz8/Pz9PT09fX19fX29vb29vf39/f3+Pj4+Pj4+fn5+vr6+/v7/Pz8/P39/f7+/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAAAALAAAAAAQABAAAAiQAAEIHEiw4MAFCBEmQCjBIIAFMiLK8CBjA4QIBiFu2Fgh4oYJDgpq5Chxw4KCCiqSlKigIAKVGyowYNDgAYGCB2BWsHABgwYDBQvA/CCiBAoVBQoOUNlBhAkVLV4MKCigIgenK1zAiCGgYICKIEhAhRExgFcZHEKcYEG27NkOI1K0aCvDLMEAePPqteuwr8CAADs=";
if ("sn" == c) return "data:image/gif;base64,R0lGODlhEAAQAPfBAFdCGCpgtyxity1kuS5kuS5luS9lujBlujBmujFmuzFnuzNpvIdhK4JmLjZvvzhxvzt2wTt2xKZoJjx4wT98xUB8xEKAxUKAxkWCxUWCxkeExkmFxEmIxkqIxkuIxWCFrUuJxUuJxkyJxr56Gk2LyE+Lx0+MyE+MyU+NyKqJQ8mFQWWU27yJTMKMSMeMSMWYSWWo0siZZLOfcNqYSduZS9CdRk+y99iaVFGy99mbUVW0+NOfZuChUdejY32y4tilWGG8+2K8/GK9/GO9+2C+/Ge9/GS+/GW++2i//W7C/duxhb+2ptW2etG3kNa5dprJ4+e+d+fAi8zGsMzGs+TJVcLLtpPU/8nNr5TV/+3KbefLd5XW//nHlPnJke3QeM3S2tDUvrjW9O7TebrW9fDTecjV4u7UffHUe9XWve7Vgc3W4fLWeu/SrPDStMHb+PbTrvXcXvXcX8Lc+MTd+fXfW/bdbPffY8Xf+ffhWsfg+sjg+ffiW8jg+8ng+/jiXcjh+8nh+8rh+sni+8vi+83j+83j/Onf0s7j+8/j/M/k/NDk+9Hk/PHjr9Xl/tPm/Nfm8tTm/NTm/fzgxPnjstPn/dXn/dbn/dbn/tfn/tbo/tfo/tjo/tzq9t7q9t7r9t/r9d/s9+Pt9+bw9+jx+Orx+Ory+uvy+Ozy9+zy+Ovz+uzz+e3z+O30+O30+e70+O/0+f/y4PD0+f32wv32xPH1+f/z5f33x/L2+vL3+/P3/PT3+/T4/PX5/Pf6/fj7/fj7//3+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAAAAAAQABAAAAj+AP/9I2GioAkUJ0qAiCCw4YZTrlitmojq1CMfKxr+83ArDyBBfO64CfOryg8lNQSKoFXoEKFBeuSMYQSlTS02Lv6FoIVIUaJCgeZcSTMpyhtJO3TGcgSJ0iJCYMzMqpOlRwyBHV5hslQpEhoxtuLsWcPjg0AOrTZt0iRFiy04eM7QMJRBoAZVmTRNcSLLjh8yM8qUuiAQg6lLS5g0oULHSw41gHBREGhhVKMUsG6MeNHiS58/vSAIrCBKRwMuXVRIgIHDhg1eDgROCJUEAAMWMp5swWLliC4FAh98QlLkiBEjQoYAIRLE1wCBC0iB8tSJE6dUqUrl2gUsQMMDCRAMiD9goEABAgQECAwIADs=";
if (null == Wg || null == c) {
Wg = [];
var g = $k();
if ("" == g) return d;
g = Jb(g);
if ("" == g || null == g) return f();
var h = /(iconsversion=[^\n]+\n)/,
h = h.exec(g);
if (!h || 2 != h.length) return f();
g = g.substring(h[1].length);
try {
h = null, h = ma() ? Ya(g) : Ie(g)
} catch (l) {
return f()
}
if ("" == h || null == h || 0 != h.length % 4 || 50 > h.length) return f();
g = Ie(h);
if (null == g) return f();
h = g.indexOf(">LastPassIcons");
if (-1 == h || 28 >= g.length || 0 != g.indexOf("LastPassIcons<") || h != g.length - 14) return f();
for (g = g.substring(14, h); !(10 > g.length);) {
h = /lp([^:]+):([^:]+):/;
h = h.exec(g);
if (!h || 3 != h.length) break;
var n = h[1],
p = h[2],
h = parseInt(p);
if (isNaN(h)) break;
for (var p = "lp" + n + ":" + p + ":", q = Wg, r = p.length, t = "", A = void 0, y = p.length + h - r, A = 0; A < y; ++A) t += g[A + r];
q[n] = t;
g = g.substring(p.length + h)
}
}
if (null != c) {
if ("undefined" != typeof Wg[c + ".gif"]) d = "data:image/gif;base64," + Wg[c + ".gif"];
else if ("undefined" != typeof Wg[c + ".ico"]) d = "data:image/ico;base64," + Wg[c + ".ico"];
else if (e || "undefined" != typeof Ia[c]) d = "undefined" != typeof Ia[c] && ("undefined" != typeof Ia[c].notetype && "" != Ia[c].notetype ?
g = Ia[c].notetype : (g = Ia[c].extra, 512 < g.length && (g = g.substring(0, 512)), g = LP.getNoteValue("NoteType", O(g, Ia[c], B)), Ia[c].notetype = g), g && "undefined" != typeof al[g]) ? al[g] : null, null == d && (d = "data:image/gif;base64,R0lGODlhEAAQAPfBAFdCGCpgtyxity1kuS5kuS5luS9lujBlujBmujFmuzFnuzNpvIdhK4JmLjZvvzhxvzt2wTt2xKZoJjx4wT98xUB8xEKAxUKAxkWCxUWCxkeExkmFxEmIxkqIxkuIxWCFrUuJxUuJxkyJxr56Gk2LyE+Lx0+MyE+MyU+NyKqJQ8mFQWWU27yJTMKMSMeMSMWYSWWo0siZZLOfcNqYSduZS9CdRk+y99iaVFGy99mbUVW0+NOfZuChUdejY32y4tilWGG8+2K8/GK9/GO9+2C+/Ge9/GS+/GW++2i//W7C/duxhb+2ptW2etG3kNa5dprJ4+e+d+fAi8zGsMzGs+TJVcLLtpPU/8nNr5TV/+3KbefLd5XW//nHlPnJke3QeM3S2tDUvrjW9O7TebrW9fDTecjV4u7UffHUe9XWve7Vgc3W4fLWeu/SrPDStMHb+PbTrvXcXvXcX8Lc+MTd+fXfW/bdbPffY8Xf+ffhWsfg+sjg+ffiW8jg+8ng+/jiXcjh+8nh+8rh+sni+8vi+83j+83j/Onf0s7j+8/j/M/k/NDk+9Hk/PHjr9Xl/tPm/Nfm8tTm/NTm/fzgxPnjstPn/dXn/dbn/dbn/tfn/tbo/tfo/tjo/tzq9t7q9t7r9t/r9d/s9+Pt9+bw9+jx+Orx+Ory+uvy+Ozy9+zy+Ovz+uzz+e3z+O30+O30+e70+O/0+f/y4PD0+f32wv32xPH1+f/z5f33x/L2+vL3+/P3/PT3+/T4/PX5/Pf6/fj7/fj7//3+/v///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////yH5BAEKAP8ALAAAAAAQABAAAAj+AP/9I2GioAkUJ0qAiCCw4YZTrlitmojq1CMfKxr+83ArDyBBfO64CfOryg8lNQSKoFXoEKFBeuSMYQSlTS02Lv6FoIVIUaJCgeZcSTMpyhtJO3TGcgSJ0iJCYMzMqpOlRwyBHV5hslQpEhoxtuLsWcPjg0AOrTZt0iRFiy04eM7QMJRBoAZVmTRNcSLLjh8yM8qUuiAQg6lLS5g0oULHSw41gHBREGhhVKMUsG6MeNHiS58/vSAIrCBKRwMuXVRIgIHDhg1eDgROCJUEAAMWMp5swWLliC4FAh98QlLkiBEjQoYAIRLE1wCBC0iB8tSJE6dUqUrl2gUsQMMDCRAMiD9goEABAgQECAwIADs=");
return d
}
}
function Ug(c, e, f) {
if ((!f || !un(c, {
url: f.posturl,
aid: f.id,
postdata: f.postdata,
handler: Ug,
param: f,
newvalues: f.newvalues
}, "lpAddResponse")) && 4 == c.readyState)
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
c = c.responseXML.documentElement;
e = c.getElementsByTagName("error");
var d = c.getElementsByTagName("result");
if (0 < e.length) e = e[0].getAttribute("msg"), "blacklisted" == e && Ua("ErrorUnsafeSiteMsg");
else if (0 < d.length)
if (e = d[0].getAttribute("msg"), "accountupdated" == e || "accountadded" ==
e || "accountreplaced" == e) {
c = parseInt(d[0].getAttribute("accts_version"));
var g = d[0].getAttribute("attacherror");
g && "" != g && LP.alert(g);
if (Ga || c == vb + ("accountreplaced" == e ? 2 : 1)) {
var h = d[0].getAttribute("aid"),
l = d[0].getAttribute("urid"),
n = d[0].getAttribute("appaid"),
p = d[0].getAttribute("submit_id"),
q = d[0].getAttribute("captcha_id"),
d = d[0].getAttribute("custom_js");
if ("undefined" != typeof f) {
if ("undefined" != typeof f.logins)
for (var r = 0; r < f.logins.length; r++) f.logins[r].submit_id = p, f.logins[r].captcha_id =
q, f.logins[r].custom_js = d;
if ("undefined" != typeof f.otherlogins)
for (r = 0; r < f.otherlogins.length; r++) f.otherlogins[r].submit_id = p, f.otherlogins[r].captcha_id = q, f.otherlogins[r].custom_js = d
}
d = null;
if ("accountadded" == e || "accountreplaced" == e) {
d = new Yb;
"undefined" != typeof f.sharefolderid && (d.sharefolderid = f.sharefolderid);
d.individualshare = "undefined" != typeof f.individualshare ? f.individualshare : !1;
d.pendingshare = !1;
d.url = f.url;
p = Ta(d.url);
d.tld = p;
d.name = f.name;
d.urid = l;
d.id = h;
d.manual = "0";
d.is_http = "0";
d.extra = f.extra;
d.fav = f.fav;
d.favico = "0";
d.autologin = f.autologin;
d.basic_auth = f.basic_auth;
d.group = "" != f.group ? f.group : LP.get_null_group();
d.fiid = h;
d.genpw = !1;
d.isbookmark = f.isbookmark;
d.never_autofill = f.never_autofill;
LP.SetLastTouch(d);
d.sn = "http://sn" == f.url ? !0 : !1;
d.username = f.username;
d.password = f.password;
d.unencryptedUsername = f.unencryptedUsername;
d.save_all = "undefined" != typeof f.save_all ? f.save_all : !1;
d.pwprotect = f.pwprotect;
d.attachkey = f.attachkey;
d.attachpresent = f.attachpresent;
d.realm = f.realm;
d.sharedfromaid = "";
d.logins = [];
d.otherlogins = [];
d.fields = [];
p = new gd;
p.urid = l;
p.url = f.url;
l = xb(p.url);
p.server = l.host;
p.tld = sc(l.host, p.url);
l = nb(p.url, l);
p.submit_id = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].submit_id : "";
p.captcha_id = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].captcha_id : "";
p.custom_js = "undefined" != typeof f.logins && 0 < f.logins.length ? f.logins[0].custom_js : "";
p.username = f.username;
p.password = f.password;
p.openid_url = "";
p.method = "";
p.action = "";
p.unencryptedUsername =
f.unencryptedUsername;
p.uname = "";
p.pname = "";
p.oname = "";
p.fields = [];
q = RegExp(LP.lpgs("ff_captcha_regexp"), "i");
if ("undefined" != typeof f.logins && 0 < f.logins.length && "undefined" != typeof f.logins[0].fields) {
p.method = f.logins[0].method;
p.action = f.logins[0].action;
for (var t = !1, A = !1, y = 0; y < f.logins[0].fields.length; y++) {
var J = f.logins[0].fields[y];
if (("email" == J.type || "tel" == J.type || "text" == J.type || "url" == J.type) && "openid_url" != J.name)
if ("" != p.username && J.value == p.username) p.uname = J.name, t = !0;
else if (!t &&
("" == p.pname || "" == p.uname)) p.uname = J.name;
"password" == J.type && ("" != p.password && J.value == p.password ? (p.pname = J.name, A = !0) : A || (p.pname = J.name));
if (("email" == J.type || "tel" == J.type || "url" != J.type || "text" == J.type) && "openid_url" == J.name) p.oname = J.name;
"" == p.captcha_id && "text" == J.type && q.exec(J.name) && (p.captcha_id = J.name);
p.fields[p.fields.length] = J
}
}
if (d.save_all && "undefined" != typeof f.logins && 0 < f.logins.length && "undefined" != typeof f.logins[0].otherfields) {
if (p.otherfields = f.logins[0].otherfields, "" ==
p.captcha_id)
for (y = 0; y < p.otherfields.length; y++)
if ("text" == p.otherfields[y].type && q.exec(p.otherfields[y].name)) {
p.captcha_id = p.otherfields[y].name;
break
}
} else p.otherfields = [];
d.logins[0] = p;
d.sn ? Ia[h] = d : z[h] = d;
LP.addAidIdentity(h);
tf++;
Dc[Dc.length] = l
}
if ("accountadded" == e) {
p = d.tld;
"undefined" == typeof la[p] && (la[p] = []);
la[p][h] = !0;
for (r = 0; r < $a.length; r++)
if ($a[r].id == h) {
$a.splice(r, 1);
break
}
1 == parseInt(d.fav) && (l = new Zc, l.id = h, l.command = {
aid: h,
manual: d.manual,
is_http: d.is_http
}, $a[$a.length] = l);
if ("undefined" !=
typeof gb[p] && (d = gb[p], "undefined" != typeof gb[d]))
for (p = 0; p < gb[d].length; p++) l = gb[d][p], "undefined" == typeof la[l] && (la[l] = []), la[l][h] = !0
}
kc = vb = c;
nj = h;
d = !0;
p = lc();
null == p && (d = !1);
if (n) {
if (("accountupdated" == e || "accountreplaced" == e) && d && !Qh(p, n, !1)) d = !1
} else if (("accountupdated" == e || "accountreplaced" == e) && d && !nd(p, h, !1)) d = !1;
if (n) {
if (d && !oj(p, LP.get_application(n), "accountadded" == e ? !0 : !1)) d = !1
} else if (d && !Ad(p, "undefined" != typeof z[h] ? z[h] : Ia[h], "accountadded" == e ? !0 : !1)) d = !1;
if ("accountadded" == e &&
d && "undefined" != typeof z[h])
for (r in z) z[r].genpw && z[r].tld == z[h].tld && O(z[r].password, z[r], B) == O(z[h].password, z[r], B) && (nd(p, z[r].id, !0) || (d = !1));
if ("accountadded" == e && f && "undefined" != typeof f.attacharraychanges && (!g || "" == g)) {
if ("undefined" != typeof f.attacharraychanges.add)
for (r in f.attacharraychanges.add) f.attacharraychanges.add.hasOwnProperty(r) && (f.attacharraychanges.add[r].parent = f.id, f.attacharraychanges.add[r].id = f.id + "-" + f.attacharraychanges.add[r].id);
ir(f.attacharraychanges);
p.lp_attaches =
lb
} else if ("accountadded" != e && f && ("undefined" != typeof f.attacharraychanges && g && "" != g) && (r = f.attacharraychanges, "undefined" != typeof r.add))
for (var u in r.add)
if (r.add.hasOwnProperty(u))
for (e = 0; e < lb.length; e++)
if (lb[e].id == r.add[u].id) {
lb.splice(e, 1);
break
}
d && !Wd(p, c) && (d = !1);
d && !wc(p, null, "lpAddResponse") && (d = !1);
d ? Fb() : LP.lpGetAccounts()
} else LP.lpGetAccounts();
Pc();
if ("undefined" != typeof f.retrieveattach && 1 == f.retrieveattach && !LP.isFennec) {
if (null == bc || -1 == bc) try {
(bc = Je(ha + "_version.att", 25)) || (bc =
0)
} catch (ib) {
eb(ha + "_version.att"), bc = 0
}
u = "version=" + LP.en(bc) + "&b64=1&chunked=1";
LP.lpMakeRequest(LP.lp_base + "getattach.php", u, vn);
f.retrieveattach = null
}
LP.lpGetCurrentWindow().setTimeout(function() {
LP.saveGroupState(null, "lpAddResponse")
}, 500)
} else "not logged in" == e && (Sa(!1, "ff_addresponse"), Ua("ErrorSessionMsg", !1, !0));
else u = c.getElementsByTagName("ok"), 0 < u.length ? (c = parseInt(u[0].getAttribute("accts_version")), Ga || c == vb + 1 ? (l = u[0].getAttribute("urid"), 0 < f.logins[0].fields.length && 0 == f.logins[0].urid ?
f.urid = f.logins[0].urid = l : 0 < f.otherlogins.length && 0 == f.otherlogins[f.otherlogins.length - 1].urid && (f.otherlogins[f.otherlogins.length - 1].urid = l), kc = vb = c, d = !0, p = lc(), null == p && (d = !1), d && !nd(p, f.id, !1) && (d = !1), d && !Ad(p, f, !1) && (d = !1), d && !Wd(p, c) && (d = !1), d && !wc(p, null, "lpAddResponse") && (d = !1), d ? Fb() : LP.lpGetAccounts()) : LP.lpGetAccounts()) : LP.lpGetAccounts(), Pc()
} else e = "Problem in lpAddResponse. status=" + c.status, ga(e, null), Ua("ErrorAddAcctMsg")
}
function jr(c, e, f) {
if (4 == c.readyState)
if (200 == c.status && null !=
c.responseXML && null != c.responseXML.documentElement) {
var d = c.responseXML.documentElement.getElementsByTagName("result");
if (0 < d.length && (c = d[0].getAttribute("msg"), "ffadded" == c || "ffupdated" == c || "ffdeleted" == c)) {
e = parseInt(d[0].getAttribute("accts_version"));
if (Ga || e == vb + 1) {
var g = d[0].getAttribute("ffid"),
h = d[0].getAttribute("cfids");
if ("ffadded" == c) {
if ("ffupdated" == c || "ffdeleted" == c)
for (d = 0; d < ka.length; d++)
if (ka[d].ffid == g) {
ka.splice(d, 1);
break
}
if ("ffadded" == c || "ffupdated" == c) f.ffid = g, ka[ka.length] =
f, ka.sort(bl);
LP.addFfidIdentity(g)
}
if (("ffadded" == c || "ffupdated" == c) && "" != h)
for (var h = h.split(","), l = 0, d = 0; d < f.customfields.length && l < h.length; d++) 0 == f.customfields[d].cfid && (f.customfields[d].cfid = h[l++]);
kc = vb = e;
d = !0;
h = lc();
null == h && (d = !1);
if ("ffupdated" == c || "ffdeleted" == c) d && !kr(h, g, "ffdeleted" == c) && (d = !1);
if ("ffadded" == c || "ffupdated" == c) d && !lr(h, f, "ffadded" == c) && (d = !1);
d && !Wd(h, e) && (d = !1);
d && !wc(h, null, "lpFormFillResponse") && (d = !1);
d ? Fb() : LP.lpGetAccounts()
} else LP.lpGetAccounts();
Pc()
}
} else c =
"Problem in lpFormFillResponse. status=" + c.status, ga(c, null), Ua("ErrorSendingMsg")
}
function cl(c) {
if (!ie && !LP.isFennecNative) {
for (var e = "" == LP.getcontrol("vaulturloverride") ? "chrome://lastpass/content/home2.xul" : LP.getcontrol("vaulturloverride"), f = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""), d = 0; f.hasMoreElements() && !d;) {
var g = f.getNext();
if ("function" == typeof g.getBrowser && (g = g.getBrowser(), null != g))
for (var g = g.browsers, h = 0; g && h < g.length; h++)
if ("undefined" !=
typeof g[h].currentURI.spec && 0 == g[h].currentURI.spec.indexOf(e)) {
d = 1;
break
}
}
d || dc(e + (c ? "?cmd=" + c : ""))
}
}
function Pc(c, e) {
var f = !1;
"undefined" != typeof c && c && (f = !0);
var d = (new Date).getTime();
if (f || !(null != wn && d < wn + 2E3))
if (!f && null != Fg && d < Fg + 1E4) Fg = null;
else {
wn = d;
for (d = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); d.hasMoreElements();) {
var g = d.getNext();
if ("function" == typeof g.getBrowser && (g = g.getBrowser(), null != g))
for (var h = g.browsers, l = h ? h.length : -1; 0 <=
l; l--) try {
if ("undefined" != typeof h[l] && LP.lp_url_is_lastpass(h[l].currentURI.spec, null, h[l].currentURI.asciiHost, !0, !0) && (f || -1 == h[l].currentURI.spec.indexOf("lpnorefresh=1") && -1 == h[l].currentURI.spec.indexOf("&l=1"))) {
var n = ca.nsIWebNavigation.LOAD_FLAGS_BYPASS_HISTORY | ca.nsIWebNavigation.LOAD_FLAGS_BYPASS_PROXY | ca.nsIWebNavigation.LOAD_FLAGS_BYPASS_CACHE,
p = h[l].webNavigation.sessionHistory.getEntryAtIndex(h[l].webNavigation.sessionHistory.index, !1).QueryInterface(ca.nsISHEntry).referrerURI,
q = h[l].webNavigation.currentURI.spec,
q = q.replace("&nk=1", "");
e ? -1 != h[l].currentURI.path.indexOf("/" + e) && g.removeTab(g.tabs[l]) : h[l].webNavigation.loadURI(q, n, p, null, null)
}
} catch (r) {
ga("Error in lprefreshwindows:" + r + " ln: " + r.lineNumber, null)
}
}
}
}
function dc(c, e, f) {
"" != mr && (c += (0 <= c.indexOf("?") ? "&" : "?") + "partnername=" + encodeURIComponent(mr));
var d = LP.lpGetPageOpenSetting(""),
g = LP.lpGetPageOpenSetting("same");
e && (g = !1);
Rh && (g = !1);
d ? (g ? LP.mostRecent().getBrowser().selectedTab = LP.mostRecent().loadURI(c) : LP.isFennecNative ? LP.fennecBrowser.selectedTab =
LP.fennecBrowser.addTab(c) : LP.isFennec ? LP.mostRecent().getBrowser().selectedTab = LP.fennecBrowser.addTab(c) : LP.mostRecent().getBrowser().selectedTab = LP.mostRecent().getBrowser().addTab(c), f && (e = LP.mostRecent().getBrowser().getBrowserForTab(LP.mostRecent().getBrowser().selectedTab), "undefined" != typeof e && (e.loginAid = f))) : (qw++, LP.lpGetCurrentWindow().open(c).focus())
}
function oe(c, e, f) {
var d = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile);
f && (d.append("fftmp"), (!d.exists() || !d.isDirectory()) && d.create(ca.nsIFile.DIRECTORY_TYPE, 511));
try {
if (LP.lpis_win && !Vf() && !LP.isFennec) {
var g = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("LocalAppData", ca.nsIFile);
if (g.isDirectory() && g.exists()) {
var h = g.clone();
h.path.indexOf("\\Local") == h.path.length - 6 ? (h = h.parent, h.append("LocalLow"), h.isDirectory() && h.exists() ? g = h.clone() : h = g.clone()) : h = g.clone();
h.append("LastPass");
(!h.exists() || !h.isDirectory()) && h.create(ca.nsIFile.DIRECTORY_TYPE,
511);
f && (h.append("fftmp"), (!h.exists() || !h.isDirectory()) && h.create(ca.nsIFile.DIRECTORY_TYPE, 511));
g = h.clone();
h.append(c);
if (!h.exists() && e) {
var l = d.clone();
l.append(c);
l.exists() && l.moveTo(g, c)
}
return g
}
} else if ((LP.lpis_mac || LP.lpis_linux) && !Vf() && !LP.isFennec) {
var n = nr();
if (null != n && n && "" != n) {
var p = T["@mozilla.org/file/local;1"].createInstance(ca.nsILocalFile);
p.initWithPath(n);
(!p.exists() || !p.isDirectory()) && p.create(ca.nsIFile.DIRECTORY_TYPE, 511);
if (p.isDirectory() && p.exists()) return h = p.clone(),
f && (h.append("fftmp"), (!h.exists() || !h.isDirectory()) && h.create(ca.nsIFile.DIRECTORY_TYPE, 511)), g = h.clone(), h.append(c), !h.exists() && e && (l = d.clone(), l.append(c), l.exists() && l.moveTo(g, c)), g
}
}
} catch (q) {
ga("Error in lpGetFileDir:" + q + " ln: " + q.lineNumber, null)
}
return d
}
function Rb(c, e, f, d) {
Ga && 0 != c.indexOf("LPIS") && ("rfdefaults" != c && "singlefactortype" != c) && (c = "local_" + c);
if (rn && ("undefined" == typeof f || !f))
if (0 <= c.indexOf("_lpall.slps") || 0 <= c.indexOf("_lps.act.sxml") || 0 <= c.indexOf("_lp.act.xml") || 0 <=
c.indexOf("_ff.sotp")) return;
20 < e.length && e.substring(0, 20);
try {
var g = null;
null == f ? (g = oe(c, !1, d), g.append(c)) : g = f;
if (LP.lpis_mac && Ga && 3 <= c.length && ("lps" == c.substring(c.length - 3) || "xml" == c.substring(c.length - 3) || "cac" == c.substring(c.length - 3)) && ma() && "function" == typeof Z.write_file) Z.write_file(g.path, e);
else {
var h = T["@mozilla.org/network/safe-file-output-stream;1"].createInstance(ca.nsIFileOutputStream);
h.init(g, 42, 384, 0);
h.write(e, e.length);
h instanceof ca.nsISafeOutputStream ? h.finish() : h.close()
}
} catch (l) {
ga("lpWriteFile : " +
c + " " + l + " ln: " + l.lineNumber)
}
}
function Jb(c, e, f) {
try {
Ga && 0 != c.indexOf("LPIS") && ("rfdefaults" != c && "singlefactortype" != c) && (c = "local_" + c);
var d;
"undefined" == typeof e || !e ? (d = oe(c), d.append(c), d.exists() || (d = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile), d.append(c))) : (d = T["@mozilla.org/file/local;1"].createInstance(ca.nsILocalFile), d.initWithPath(c));
if (!d.exists()) return !1;
if (LP.lpis_mac && Ga && 3 <= c.length && ("lps" == c.substring(c.length - 3) || "xml" == c.substring(c.length -
3) || "cac" == c.substring(c.length - 3)) && ma() && "function" == typeof Z.read_file) return Z.read_file(d.path);
var g = T["@mozilla.org/network/file-input-stream;1"].createInstance(ca.nsIFileInputStream);
g.init(d, -1, -1, !1);
var h = T["@mozilla.org/binaryinputstream;1"].createInstance(ca.nsIBinaryInputStream);
h.setInputStream(g);
var l = h.available(),
n = h.readBytes("number" == typeof f && f < l ? f : l);
g.close();
return n
} catch (p) {
return ga("lpReadFile : " + c + " " + p + " ln: " + p.lineNumber), !1
}
}
function or(c) {
try {
var e = oe(c);
e.append(c);
e.exists() || (e = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile), e.append(c));
return !e.exists() ? !1 : e.lastModifiedTime
} catch (f) {
return ga("lpLastModifiedFile : " + c + " " + f + " ln: " + f.lineNumber), !1
}
}
function eb(c) {
Ga && 0 != c.indexOf("LPIS") && ("rfdefaults" != c && "singlefactortype" != c) && (c = "local_" + c);
if (!Ga || !c.match(/(lps|xml|cac)$/)) try {
var e = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile);
e.append(c);
e.exists() &&
e.remove(!1);
var f = oe(c, !1);
f.append(c);
f.exists() && f.remove(!1)
} catch (d) {}
}
function Hg(c, e) {
if (!Ga || !c.match(/(lps|xml)$/))
for (var f = oe("", !1, e).directoryEntries; f.hasMoreElements();) {
var d = f.getNext();
d.QueryInterface(ca.nsIFile);
if (d.isFile() && d.leafName.toLowerCase().indexOf(c.toLowerCase()) == d.leafName.length - c.length || "*" == c) try {
d.remove(!1)
} catch (g) {}
}
}
function $b(c) {
try {
var e = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile),
f = oe(c, !1);
e.append(c);
f.append(c);
return e.exists() || f.exists()
} catch (d) {}
return !1
}
function Sh(c, e) {
try {
var f = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("ProfD", ca.nsIFile);
if (LP.lpis_win && !Vf() && !LP.isFennec) {
var d = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("LocalAppData", ca.nsIFile);
if (d.isDirectory() && d.exists()) {
var g = d.clone();
g.path.indexOf("\\Local") == g.path.length - 6 ? (g = g.parent, g.append("LocalLow"), g.isDirectory() && g.exists() ? d = g.clone() : g = d.clone()) :
g = d.clone();
g.append("LastPass");
(!g.exists() || !g.isDirectory()) && g.create(ca.nsIFile.DIRECTORY_TYPE, 511);
d = g.clone();
f = d.clone()
}
} else if ((LP.lpis_mac || LP.lpis_linux) && !Vf() && !LP.isFennec) {
var h = nr();
if (null != h && h && "" != h) {
var l = T["@mozilla.org/file/local;1"].createInstance(ca.nsILocalFile);
l.initWithPath(h);
(!l.exists() || !l.isDirectory()) && l.create(ca.nsIFile.DIRECTORY_TYPE, 511);
l.isDirectory() && l.exists() && (f = l.clone())
}
}
f.append(c);
f.exists() && f.moveTo(null, e)
} catch (n) {}
}
function xn(c) {
Zk ? c && (pr =
Ab()) : (Zk = !0, qr = Ab(), c ? LP.lplogincheck("frompipes") : LP.httptest())
}
function rw(c) {
for (var e = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); e.hasMoreElements();) {
var f = e.getNext();
if (f != this && f.document != c && "undefined" != typeof f.LP) return !0
}
return !1
}
function Fb(c) {
(new Date).getTime();
try {
eb(Q + "_lp.act.xml");
eb(Q + "_lps.act.xml");
ma() && eb(ha + "_lp.act.xml");
var e = lc(ha, !0, !1);
if (e) {
var f = T["@mozilla.org/xmlextras/domparser;1"].createInstance(ca.nsIDOMParser),
d, g;
if ("LPAV" == e.substring(0, 4)) d = null, g = parseInt(dl(e));
else {
d = f.parseFromString(e, "text/xml");
if (!d) {
LP.lpGetAccounts();
return
}
var h = d.documentElement.getElementsByTagName("accounts");
g = -1;
0 < h.length && (g = parseInt(h[0].getAttribute("accts_version")))
} if (Ga || g == kc || -1 == kc) f = [], f.responseXML = d, f.responseText = e, f.readyState = 4, f.status = 0, "undefined" == typeof c && (c = !1), LP.lpPopulateAccounts(f, !0, !0, c);
!(Ga || vb == kc) && -1 != kc && LP.lpGetAccounts()
} else LP.lpGetAccounts()
} catch (l) {
ga("lpGetAccountsLocal : " +
l + " ln: " + l.lineNumber), LP.lpGetAccounts()
}
}
function yn(c, e) {
if (0 == c.getAttribute("id").indexOf("_favorites_menu")) return -1;
if (0 == e.getAttribute("id").indexOf("_favorites_menu")) return 1;
c = c.getAttribute("label").toLowerCase();
e = e.getAttribute("label").toLowerCase();
return c < e ? -1 : 1
}
function rr(c) {
c && "undefined" != typeof c.getAttribute && (Vc = "1" == c.getAttribute("login_site_prompt") ? !0 : !1, pe = "1" == c.getAttribute("edit_site_prompt") ? !0 : !1, uf = "1" == c.getAttribute("edit_sn_prompt") ? !0 : !1, Ke = "1" == c.getAttribute("view_pw_prompt") ? !0 : !1, qe = "1" == c.getAttribute("view_ff_prompt") ? !0 : !1, pj = "1" == c.getAttribute("improve") ? !0 : !1, qj = "1" == c.getAttribute("switch_identity_prompt") ? !0 : !1, el = "1" == c.getAttribute("multifactor_reprompt") ? !0 : !1, zn = "1" == c.getAttribute("generatedpw") ? !0 : !1)
}
function bl(c, e) {
return c.profilename.toLowerCase() < e.profilename.toLowerCase() ? -1 : 1
}
function sr(c, e) {
return c.iname.toLowerCase() < e.iname.toLowerCase() ? -1 : 1
}
function tr(c, e) {
return parseInt(c.ordernum) < parseInt(e.ordernum) ? -1 : 1
}
function An(c) {
if ("undefined" !=
typeof z[c]) return Bn && 1 == parseInt(z[c].autologin) && Ab() - z[c].last_touch > ur ? (LP.SetLastTouch(z[c]), !0) : !1
}
function vr(c) {
try {
if ("undefined" == typeof PrivateBrowsingUtils && Components.utils.import("resource://gre/modules/PrivateBrowsingUtils.jsm"), c && PrivateBrowsingUtils.isWindowPrivate(c)) return !0
} catch (e) {}
return !1
}
function Bd(c, e) {
if (!vr(e) && (!Xg || !Xg.privateBrowsingEnabled)) {
var f = z[c];
f || (f = Ia[c]);
f || (f = LP.get_application(c));
if (f) {
if (!(5 > Ab() - f.last_touch)) {
if (0 < ad) {
var d = "id=" + LP.en(c) + "&method=" +
LP.get_method();
if (1 < ad && f) {
if (2 == (ad & 2) && "http://sn" != f.url) {
var g = f.url,
h = LP.getBrowser().selectedTab;
h && h.linkedBrowser && (g = h.linkedBrowser.contentDocument.location.href);
d += "&u=" + LP.en(ac(g))
}
4 == (ad & 4) && (d += "&n=" + LP.en(ac(f.name)));
8 == (ad & 8) && "http://sn" != f.url && (d += "&un=" + LP.en(ac(fb(f, 0))))
}
g = !0;
f && ((h = yb(B, f.group)) && (d += "&sharedfolderid=" + LP.en(h.id)), "http://sn" == f.url && 4 != (ad & 4) && (g = !1));
g && LP.lpMakeRequest(LP.lp_base + "loglogin.php", d, null)
}
LP.SetLastTouch(f);
g = Jb(ha + "_lt.cac");
d = "";
if (!1 !=
g) {
g = g.split("\n");
for (h = 0; h < g.length; h++) 0 != g[h].indexOf(c + " ") && "" != g[h] && (d += g[h] + "\n")
}
d += c + " " + f.last_touch + "\n";
Rb(ha + "_lt.cac", d)
}
} else 0 < ad && "export" == c && (d = "id=" + LP.en(c) + "&method=" + LP.get_method(), LP.lpMakeRequest(LP.lp_base + "loglogin.php", d, null))
}
}
function Cn(c, e, f, d) {
if (!vr(d) && (!Xg || !Xg.privateBrowsingEnabled) && ad) {
d = "ffid=" + LP.en(c);
f && (d += f);
if (e) {
if ("" == f) return;
d += "&onlymisses=1"
}
for (e = 0; e < ka.length; e++)
if (f = ka[e], f.ffid == c) {
d += "&locale=" + LP.en(O(f.profilelanguage, f, B));
(c = yb(B,
f.group)) && (d += "&sharedfolderid=" + LP.en(c.id));
break
}
LP.lpMakeRequest(LP.lp_base + "logformfill.php", d, null)
}
}
function sw(c) {
if (c && 4 == c.readyState && 200 == c.status)
if (c.responseXML) {
if (c = c.responseXML.documentElement)
if (c = c.getElementsByTagName("login"), 0 != c.length) {
for (var e = c[0].getAttribute("url"), f = 0; f < c.length; f++) {
for (var d = c[f].getAttribute("aid"), g = c[f].getAttribute("url"), h = c[f].getAttribute("submit_id"), l = c[f].getAttribute("captcha_id"), n = c[f].getAttribute("custom_js"), p = c[f].getAttribute("u"),
q = c[f].getAttribute("p"), r = c[f].getAttribute("o"), t = 0; t < Va.length && g != Va[t].url; t++);
Va[t] = [];
Va[t].aid = d;
Va[t].multi = f < c.length - 1 ? !0 : !1;
Va[t].secondary = 0 < f ? !0 : !1;
Va[t].url = g;
Va[t].submit_id = h;
Va[t].captcha_id = l;
Va[t].custom_js = n;
Va[t].u = p;
Va[t].p = q;
Va[t].o = r;
Va[t].uname = "";
Va[t].pname = "";
Va[t].oname = "";
Va[t].login = c[f];
Va[t].create_time = Ab();
Va[t].onlyfill = !1;
Va[t].fields = [];
d = c[f].getElementsByTagName("field");
g = !1;
for (h = 0; h < d.length; h++) {
p = d[h].getAttribute("type");
l = d[h].getAttribute("name");
n = d[h].getAttribute("value");
if (("text" == p || "email" == p || "tel" == p) && "openid_url" != l)
if ("" != Va[t].u && n == Va[t].u) Va[t].uname = l, g = !0;
else if (!g && ("" == Va[t].pname || "" == Va[t].uname)) Va[t].uname = l;
"password" == p && (Va[t].pname = l);
if (("text" == p || "email" == p || "tel" == p) && "openid_url" == l) Va[t].oname = l;
if ("radio" == p || "checkbox" == p)
if (p = d[h].getAttribute("checked"), !p || 1 != parseInt(p)) continue;
Va[t].fields[l] = n
}
}
dc(e)
}
} else ga("Invalid response from server=" + c.status + " text= " + c.responseText, null), Ua("ErrorServerMsg")
}
function rj(c) {
var e = !1;
"undefined" != typeof c.sn && (e = c.sn);
return xc(LP.is_application(c) ? "a" + c.fiid : c.id, e)
}
function tw(c) {
try {
for (var e = c.target.parentNode, f = e.childNodes.length, d = 0; d < f; d++) e.childNodes[d].setAttribute("style", "-moz-appearance:none !important;background-color: white !important;");
c.target.setAttribute("style", "-moz-appearance:none !important;background-color: #FAFAD2 !important;")
} catch (g) {}
}
function vc(c, e, f, d, g, h, l, n, p, q) {
if ("undefined" == typeof HIDEALLNOTIFICATIONS) {
"change" !=
d && (c = LP.lpgs(c));
var r = !0;
"error" != d && !Rk && (r = !1);
try {
if ("function" != typeof LP.getBrowser || "function" != typeof LP.getBrowser().getNotificationBox) return
} catch (t) {
return
}
var A = e ? LP.getBrowser().getNotificationBox(e) : LP.getBrowser().getNotificationBox(),
y = LP.mostRecent().document;
d || (d = "autologin");
var J = [],
u = [];
if ("login" == d) {
if (!r || !Rk || !wr || LP.NO_LOGIN_NOTIFICATION_UNTIL_LOGIN && !LP.lpprefsHasUserValue("ffhasloggedinsuccessfully", !1)) return;
J.push({
label: LP.lpgs("Save Passwords With LastPass"),
accessKey: "",
popup: null,
callback: uw
});
u[u.length] = LP.lpgs("TTLogin");
J.push({
label: LP.lpgs("NeverAskAgain"),
accessKey: "",
popup: null,
callback: vw
});
u[u.length] = LP.lpgs("TTNeverAskAgain")
} else if ("change" == d) {
if (!xr) return;
J.push({
label: LP.lpgs("Confirm"),
accessKey: "",
popup: null,
callback: ww
});
u[u.length] = LP.lpgs("TTChange");
"undefined" != typeof Pa[g.key] && null != Pa[g.key] && (J.push({
label: LP.lpgs("Save New Site"),
accessKey: "",
popup: null,
callback: yr
}), u[u.length] = LP.lpgs("TTAdd"))
} else if ("captcha" == d) {
if (!r) return
} else if ("offline" ==
d) {
if (Ga) return
} else if ("addconfirm" == d) J.push({
label: LP.lpgs("SaveSite"),
accessKey: "",
popup: null,
callback: yr
}), u[u.length] = LP.lpgs("TTAdd"), r = fl(0, y, g), J.push({
label: LP.lpgs("Never For This ..."),
accessKey: "",
popup: r,
callback: null
}), u[u.length] = LP.lpgs("TTNever"), J.push({
label: LP.lpgs("NotThisLogin"),
accessKey: "",
popup: null,
callback: xw
}), u[u.length] = LP.lpgs("TTNotThisLogin");
else if ("addformfill" == d) J.push({
label: LP.lpgs("AddProfile"),
accessKey: "",
popup: null,
callback: yw
}), u[u.length] = LP.lpgs("TTAddFormFill"),
J.push({
label: LP.lpgs("NeverAskAgain"),
accessKey: "",
popup: null,
callback: zw
}), u[u.length] = "";
else if ("viewalert" == d) J.push({
label: LP.lpgs("ViewAlert"),
accessKey: "",
popup: null,
callback: Aw
}), u[u.length] = l, J.push({
label: LP.lpgs("Cancel"),
accessKey: "",
popup: null,
callback: Bw
}), u[u.length] = "";
else if ("generate" == d) {
if (!r || !P) return;
if (l) {
e.contentDocument.ffidindex = -1;
var ib, s;
ib = LP.lpgs("FillForm") + " (" + ka.length + ")";
Dn && zr() ? (r = null, s = function() {
LP.choose_profile_and_credit_card();
return !0
}) : (r = Ar(null,
y), s = null);
J.push({
label: ib,
accessKey: "",
popup: r,
callback: s
});
u[u.length] = LP.lpgs("TTFillForm")
}
if (n && 0 < f.length) {
ib = LP.lpgs("Fill Current");
if (1 < f.length) {
ib += " (" + f.length + ")";
r = {};
s = {};
var ia = Br(f, !1, r, s, y, !0),
r = ia[0];
s = null
} else r = null, s = Cw;
J.push({
label: ib,
accessKey: "",
popup: r,
callback: s
});
u[u.length] = LP.lpgs("TTFillCurrent")
}
J.push({
label: LP.lpgs("Generate"),
accessKey: "",
popup: null,
callback: Dw
});
u[u.length] = LP.lpgs("TTGenerate");
r = fl(1, y, g);
J.push({
label: LP.lpgs("Never For This ..."),
accessKey: "",
popup: r,
callback: null
});
u[u.length] = LP.lpgs("TTNeverForThisSite")
} else if ("error" == d) g.feedback ? (J.push({
label: LP.lpgs("Feedback"),
accessKey: "",
popup: null,
callback: Ew
}), u[u.length] = LP.lpgs("TTFeedback")) : g.custombutton && g.customaction ? (J.push({
label: g.custombutton,
accessKey: "",
popup: null,
callback: function() {
LP.lpopen(g.customaction)
}
}), u[u.length] = "") : g.login && (J.push({
label: LP.lpgs("TryAgain"),
accessKey: "",
popup: null,
callback: Cr
}), u[u.length] = LP.lpgs("TTTryAgain")), g.createaccount && !gl && (J.push({
label: LP.lpgs("Create Account"),
accessKey: "",
popup: null,
callback: LP.OpenCreateAccount
}), u[u.length] = LP.lpgs("TTCreateAccount")), g.multifactor_disable_url && (J.push({
label: LP.lpgs("Disable Multifactor Authentication"),
accessKey: "",
popup: null,
callback: function() {
LP.lpbaseopen(g.multifactor_disable_url)
}
}), u[u.length] = LP.lpgs("TTDisableMultifactorAuthentication"));
else if ("formfill" == d) {
if (!r || !P) return;
e.contentDocument.ffidindex = -1;
ib = LP.lpgs("FillForm") + " (" + ka.length + ")";
Dn && zr() ? (r = null, s = LP.choose_profile_and_credit_card) : (r =
Ar(null, y), s = null);
J.push({
label: ib,
accessKey: "",
popup: r,
callback: s
});
u[u.length] = LP.lpgs("TTFillForm");
r = fl(2, y, g);
J.push({
label: LP.lpgs("Never For This ..."),
accessKey: "",
popup: r,
callback: null
});
u[u.length] = LP.lpgs("TTNeverForThisSite2")
} else {
if (!Dr) return;
if ("object" != typeof f || 1 == f.length || 1 < f.length) {
r = {};
s = {};
ia = 4 <= LP.lp_getFFVersionFloat() && 1 < f.length ? 1 : 0;
if ("undefined" != typeof ia && 0 < ia) {
var B = !g,
F = r,
C = s,
ia = [],
D = null,
K = null,
ea = null,
ra = null,
Y = null,
v = null,
E = null,
ra = ea = ra = E = ra = null,
ea = "",
v = y.getElementById("mainPopupSet"),
H = null,
O = null,
D = y.createElement("panel"),
H = Th("popup");
ia[0] = H;
D.setAttribute("id", H);
v.appendChild(D);
D.sizeTo(500, 170);
ea = y.createElement("vbox");
ea.setAttribute("id", "vbox" + H);
D.appendChild(ea);
Y = y.createElement("hbox");
Y.setAttribute("id", "autofillsearchbox_hbox");
ea.appendChild(Y);
ea = "autofillsearchbox" + H;
E = y.createElement("label");
E.setAttribute("value", LP.lpgs("AutoFill") + " " + LP.lpgs("Filter"));
E.setAttribute("control", ea);
Y.appendChild(E);
E = y.createElement("textbox");
E.setAttribute("id", ea);
E.setAttribute("type", "search");
E.setAttribute("oncommand", "LP.lppopuptablefilter(document, '" + ea + "', '" + H + "');");
Y.appendChild(E);
B && (K = y.createElement("panel"), O = Th("popup"), ia[1] = O, K.setAttribute("id", O), v.appendChild(K), K.sizeTo(500, 170), ra = y.createElement("vbox"), K.appendChild(ra), v = y.createElement("hbox"), v.setAttribute("id", "autologinsearchbox_hbox"), ra.setAttribute("id", "vbox" + O), ra.appendChild(v), ea = "autologinsearchbox" + O, ra = y.createElement("label"), ra.setAttribute("value", LP.lpgs("AutoLogin") +
" " + LP.lpgs("Filter")), ra.setAttribute("control", ea), v.appendChild(ra), ra = y.createElement("textbox"), ra.setAttribute("id", ea), ra.setAttribute("type", "search"), ra.setAttribute("oncommand", "LP.lppopuptablefilter(document, '" + ea + "', '" + O + "');"), v.appendChild(ra), Uh(f, !0, null, C, y, Vh, O, !0), Uh(f, !0, null, C, y, Wh, O, !0), (ra = Uh(f, !0, null, C, y, sj, O, !1)) || (ia[1] = null), C.value < Cd ? v.setAttribute("hidden", "true") : v.setAttribute("hidden", "false"));
Uh(f, !1, F, null, y, Vh, H, !0);
Uh(f, !1, F, null, y, Wh, H, !0);
(ea = Uh(f, !1, F, null,
y, sj, H, !1)) || (ia[0] = null);
!0 == B && null != ra && (B = null, B = y.getElementById(ra), C.value <= Cd ? (ra = 24 * (C.value + 1), B.setAttribute("rows", C.value), K.sizeTo(500, ra)) : B.setAttribute("rows", Cd));
null != ea && (C = null, C = y.getElementById(ea), F.value <= Cd ? (ra = 24 * (F.value + 1), C.setAttribute("rows", F.value), D.sizeTo(500, ra)) : C.setAttribute("rows", Cd));
F.value < Cd ? Y.setAttribute("hidden", "true") : Y.setAttribute("hidden", "false");
F = [];
for (Y = 0; Y < f.length; Y++) C = [], B = z[f[Y].id], "undefined" != typeof B && (ea = ra = "", v = 0, B.logins && 0 < B.logins.length &&
(ra = B.name, ea = B.logins[0].unencryptedUsername, v = B.last_touch, C.push(ra), C.push(ea)), C.push(hl(v)), C = C.join(" "), C = C.toLowerCase(), F[f[Y].id] = C);
for (ib in F) LP.lp_popup_search_array[ib] = F[ib];
null != D && (D.setAttribute("onpopupshowing", "LP.lppopuptable_showing_handler(event, '" + H + "',document);"), D.setAttribute("popuphiding", "LP.lppopuptable_hiding_handler(event,'" + H + "',document);"), D.setAttribute("onmouseover", "LP.lppopuptable_mouseover_handler(event, '" + H + "',document);"));
null != K && (K.setAttribute("onpopupshowing",
"LP.lppopuptable_showing_handler(event, '" + O + "',document);"), K.setAttribute("popuphiding", "LP.lppopuptable_hiding_handler(event,'" + O + "',document);"), K.setAttribute("onmouseover", "LP.lppopuptable_mouseover_handler(event, '" + O + "',document);"))
} else ia = Br(f, !g, r, s, y); if (!g) {
D = null;
if (null != ia && null == ia[1])
for (ib = 0; ib < f.length; ib++) {
if (!f[ib].onlyfill) var G = ib,
D = function(c) {
il(f[G], c)
}
} else 1 >= f.length && s.value && (D = function(c) {
il(f, c)
});
s = 1 < s.value ? " (" + s.value + ")" : "";
J.push({
label: LP.lpgs("AutoLogin") +
s,
accessKey: "",
popup: null != ia ? ia[1] : null,
callback: D
});
u[u.length] = LP.lpgs("TTAutoLogin")
}
if (!l || 1 < f.length) s = 1 < r.value ? " (" + r.value + ")" : "", J.push({
label: LP.lpgs("AutoFill") + s,
accessKey: "",
popup: null != ia ? ia[0] : null,
callback: 1 < f.length ? null : function(c) {
il(f, c, !0)
}
}), u[u.length] = LP.lpgs("TTAutoFill");
r = fl(3, y, g, l);
J.push({
label: LP.lpgs("Never ..."),
accessKey: "",
popup: r,
callback: null
});
u[u.length] = LP.lpgs("TTNever2")
}
} if (!A.getNotificationWithValue("lp_notificationAction" + d) || p || q) {
if ("captcha" != d && !p)
for (; A.currentNotification;) A.removeCurrentNotification();
h = !h || 0 == h ? A.PRIORITY_WARNING_MEDIUM : A.PRIORITY_CRITICAL_LOW;
if (p) {
if ((c = A.currentNotification) && ("undefined" == typeof c.lock || !1 == c.lock)) {
c.lock = !0;
q = c.getElementsByTagName("button");
for (r = q.length - 1; 0 <= r; r--) c.removeChild(q[r]);
for (ib = 0; ib < J.length; ib++) q = y.createElement("button"), q.setAttribute("label", J[ib].label), q.setAttribute("popup", J[ib].popup), q.tooltipText = u[ib], null != J[ib].callback && (0 == J[ib].label.indexOf(Za("AutoLogin")) ? q.addEventListener("command", function() {
LP.lp_noteAcceptPre(null)
}, !1) : 0 == J[ib].label.indexOf(Za("AutoFill")) ? q.addEventListener("command", function() {
LP.lp_noteAcceptPre(!0)
}, !1) : 0 == J[ib].label.indexOf(Za("NeverAutoFill")) && q.addEventListener("command", function() {
LP.lp_noteAcceptNeverPre()
}, !1)), c.appendChild(q);
c.lock = !1
}
} else En && LP.patchNotificationBox(A, "bottom"), c = A.appendNotification(c, "lp_notificationAction" + d, "chrome://lastpass/skin/icon.gif", h, J); if ("addconfirm" == d || "change" == d || "addformfill" == d) c.persistence = 1;
LP.lpis_linux && (c.style.backgroundColor = "#FFFFE1");
"error" == d ? c.style.color = "#fff" : h && 0 != h && (c.style.color = "#000");
if (("addconfirm" == d || "addformfill" === d) && !LP.lpis_mac) c.style.backgroundColor = "#87d087";
c.aid = f;
c.browser = e;
c.extra = g;
c.extra2 = l;
c.extra3 = n;
c.nb = A;
c.choices = d;
if (!p)
if (q = c.getElementsByTagName("button"), q.length == u.length)
for (ib = 0; ib < q.length; ib++) q.item(ib).tooltipText = u[ib];
else ga("#Tooltips!=#Buttons: " + d + " " + q.length + " vs " + u.length);
c.addEventListener("command", Fw, !0)
}
}
}
function fl(c, e, f, d) {
var g = null,
h = e.getElementById("mainPopupSet"),
g = e.createElement("menupopup"),
l = Th("popup");
g.setAttribute("id", l);
h.appendChild(g);
h = "";
"object" == typeof f && "string" == typeof f.key && (h = f.key);
var n = "";
"object" == typeof f && "string" == typeof f.tld && (n = f.tld);
var p = "";
"object" == typeof f && "undefined" != typeof f.currenturl && (p = f.currenturl);
d && (f = e.createElement("menuitem"), f.setAttribute("label", LP.lpgs("NeverAutoFill")), f.addEventListener("command", function() {
LP.never_helper(null, null, null, null, null, LP.lpes(d))
}), g.appendChild(f));
f = e.createElement("menuitem");
f.setAttribute("label", LP.lpgs("NeverForThisSite"));
f.setAttribute("oncommand", "LP.never_helper(" + c + ", false, '" + ke(h) + "', '" + ke(n) + "', '" + ke(p) + "');");
g.appendChild(f);
e = e.createElement("menuitem");
e.setAttribute("label", LP.lpgs("Never For This Domain"));
e.setAttribute("oncommand", "LP.never_helper(" + c + ", true, '" + ke(h) + "', '" + ke(n) + "', '" + ke(p) + "');");
g.appendChild(e);
return l
}
function Br(c, e, f, d, g, h) {
var l = [],
n = null,
p = null,
q = g.getElementById("mainPopupSet"),
n = g.createElement("menupopup");
l[0] = Th("popup");
n.setAttribute("id", l[0]);
q.appendChild(n);
e && (p = g.createElement("menupopup"), l[1] = Th("popup"), p.setAttribute("id", l[1]), q.appendChild(p));
for (var r = q = 0; r < c.length; r++) {
var t = z[c[r].id];
if ("undefined" != typeof t) {
t = Yg(t);
if (e && !c[r].onlyfill) {
var A = g.createElement("menuitem");
A.setAttribute("label", t);
A.setAttribute("oncommand", "LP.lp_noteAcceptHelper('" + c[r].id + "',null,false, true);");
p.appendChild(A);
q++
}
A = g.createElement("menuitem");
A.setAttribute("label", t);
h ? function(c) {
A.addEventListener("command",
function() {
LP.fill_current(c)
})
}(c[r].id) : function(c) {
A.addEventListener("command", function() {
LP.lp_noteAcceptHelper(c, null, !0, !0)
})
}(c[r].id);
h || (0 == r && A.setAttribute("key", "lpt_key_lpPrevAutoFill"), r == c.length - 1 && A.setAttribute("key", "lpt_key_lpNextAutoFill"));
n.appendChild(A)
}
}
1 >= c.length && (l[0] = null);
1 >= q && (l[1] = null);
f.value = l[0] && n.hasChildNodes() ? n.childNodes.length : 0;
d.value = l[1] && p.hasChildNodes() ? p.childNodes.length : 0;
return l
}
function Uh(c, e, f, d, g, h, l, n) {
var p = null,
p = g.getElementById("vbox" +
l);
if (null == p || 1 >= c.length) return null;
for (var q = 0, r = [], t = 0; t < c.length; t++) {
var A = z[c[t].id];
if ("undefined" != typeof A && 1 != A.basic_auth) {
if (!0 == e)
if (c[t].onlyfill) continue;
else q++;
var y = "",
J = "",
u = 0;
A.logins && 0 < A.logins.length && (y = A.name, J = A.logins[0].unencryptedUsername, u = A.last_touch);
r[t] = {
id: c[t].id
};
h == Vh ? r[t].sortkey = y : h == Wh ? r[t].sortkey = J : h == sj && (r[t].sortkey = u)
}
}
if (1 >= q && !0 == e) return null;
h == Vh || h == Wh ? r.sort(Gw) : r.sort(Hw);
var A = t = A = A = A = t = q = null,
ib = 0,
q = g.createElement("listbox");
p.appendChild(q);
t = g.createElement("listcols");
q.appendChild(t);
A = g.createElement("listcol");
A.setAttribute("flex", "5");
A.setAttribute("minwidth", "150");
t.appendChild(A);
A = g.createElement("listcol");
A.setAttribute("minwidth", "100");
A.setAttribute("flex", "4");
t.appendChild(A);
A = g.createElement("listcol");
A.setAttribute("flex", "1");
A.setAttribute("minwidth", "110");
t.appendChild(A);
t = g.createElement("listhead");
q.appendChild(t);
A = g.createElement("listheader");
A.setAttribute("id", "tablehdrsite" + h + "_" + l);
A.setAttribute("label",
LP.lpgs("Site"));
A.addEventListener("click", function() {
LP.lppopuptableshowAsort(document, Vh, l)
});
t.appendChild(A);
A = g.createElement("listheader");
A.setAttribute("id", "tablehdrusername" + h + "_" + l);
A.setAttribute("label", LP.lpgs("Username"));
A.addEventListener("click", function() {
LP.lppopuptableshowAsort(document, Wh, l)
});
t.appendChild(A);
A = g.createElement("listheader");
A.setAttribute("id", "tablehdrtouch" + h + "_" + l);
A.setAttribute("label", LP.lpgs("Last Touch"));
A.addEventListener("click", function() {
LP.lppopuptableshowAsort(document,
sj, l)
});
t.appendChild(A);
q.setAttribute("flex", "1");
q.setAttribute("seltype", "single");
q.setAttribute("hidden", n ? "true" : "false");
p = "popuptable" + h + "_" + l;
q.setAttribute("id", p);
q.setAttribute("disableKeyNavigation", "true");
q.setAttribute("onselect", "LP.lp_popup_select_handler(document,'" + p + "','" + l + "'," + e + ", event);");
for (t = 0; t < c.length; t++)
if ("undefined" != typeof r[t] && (A = z[r[t].id], "undefined" != typeof A && 1 != A.basic_auth)) {
J = y = "";
u = 0;
if (A.logins && 0 < A.logins.length) {
y = A.name;
J = A.logins[0].unencryptedUsername;
if (!J || !J.length) J = fb(A, 0);
u = A.last_touch;
hl(A.last_touch)
}
ib++;
h = g.createElement("listitem");
n = g.createElement("listcell");
var u = g.createElement("listcell"),
s = g.createElement("listcell");
n.setAttribute("label", y);
u.setAttribute("label", J);
s.setAttribute("label", hl(A.last_touch));
h.setAttribute("rowid", r[t].id);
h.setAttribute("class", "highlight-row-listbox");
q.appendChild(h);
h.appendChild(n);
h.appendChild(u);
h.appendChild(s)
}
0 < ib ? !0 == e ? null != d && (d.value = ib, d.value < Cd ? q.setAttribute("rows", d.value) :
q.setAttribute("rows", Cd)) : null != f && (f.value = ib, 5 > f.value ? q.setAttribute("rows", f.value) : q.setAttribute("rows", Cd)) : !0 == e ? null != d && (d.value = 0) : null != f && (f.value = 0);
return p
}
function Hw(c, e) {
return "undefined" != typeof c.sortkey && "undefined" != typeof e.sortkey ? e.sortkey - c.sortkey : 0
}
function Gw(c, e) {
if ("undefined" != typeof c.sortkey && "undefined" != typeof e.sortkey) {
var f = c.sortkey,
d = e.sortkey;
return f > d ? 1 : f < d ? -1 : 0
}
return 0
}
function Fn(c) {
null != c && Zg & Gn && (c.suppressonselect = !0)
}
function Hn(c) {
null != c && Zg &
Gn && (c.suppressonselect = !1)
}
function $g(c) {
null != c && Zg & In && 0 <= c.selectedIndex && (c.selectedIndex = -1)
}
function Er(c, e) {
if (null != c && "false" == c.getAttribute("hidden") && Zg & Fr) {
var f = e.getAttribute("value");
e.setAttribute("value", f + " ");
var f = e.getElementsByTagName("listcell"),
d;
for (d in f)
if (f.hasOwnProperty(d)) {
d = f[d];
f = d.getAttribute("label");
d.setAttribute("label", f + ".");
d.setAttribute("label", f);
break
}
c.ensureElementIsVisible(e)
}
}
function Gr(c, e, f) {
var d = c.getElementById(e);
if (null != d) {
if (Zg & Hr && "false" ==
d.getAttribute("hidden") && f < Cd) {
for (var g = 0; g < 2 * Cd; g++) {
var h = c.createElement("listitem");
h.setAttribute("id", "gross" + g);
h.setAttribute("value", " ");
d.appendChild(h)
}
1 < f && d.scrollToIndex(f);
for (g = 0; g < 2 * Cd; g++) h = c.getElementById("gross" + g), d.removeChild(h)
}
if (Zg & Ir && "false" == d.getAttribute("hidden") && f < Cd && (g = [], c = c.getElementById(e), null != c)) {
$g(c);
e = c.getElementsByTagName("listitem");
for (var l in e) e.hasOwnProperty(l) && g.push(e[l]);
for (l in g) e.hasOwnProperty(l) && c.appendChild(g[l])
}
1 < f && null != d &&
d.scrollToIndex(d.getRowCount())
}
}
function Ar(c, e) {
var f = LP.lpprefsHasUserValue("defaultffid") ? LP.lpprefsGetCharPref("defaultffid") : "0",
d = e.getElementById("mainPopupSet"),
g = e.createElement("menupopup"),
h = Th("popup");
g.setAttribute("id", h);
d.appendChild(g);
for (var l = d = !1, n = 0; n < ka.length; n++) {
var p = ka[n];
0 == p.profiletype && (d = !0);
"" != p.ccnum && (l = !0);
var q = e.createElement("menuitem");
q.setAttribute("label", p.profilename);
c ? q.setAttribute("oncommand", "LP.lp_generatePasswordAndFillFormsHelper(" + p.ffid +
");") : (q.setAttribute("oncommand", "LP.lp_fillFormsHelper(" + p.ffid + ");"), p.ffid == f && q.setAttribute("key", "lpt_key_lpdefaultffid"));
0 == n && q.setAttribute("key", "lpt_key_lpPrevAutoFill");
n == ka.length - 1 && q.setAttribute("key", "lpt_key_lpNextAutoFill");
g.appendChild(q)
}
q = e.createElement("menuseparator");
g.appendChild(q);
LP.isFennec || (q = e.createElement("menuitem"), q.setAttribute("label", LP.lpgs("AddProfile")), q.addEventListener("command", function() {
LP.lpEditFormFillProfile(0)
}, !1), g.appendChild(q), q = e.createElement("menuitem"),
q.setAttribute("label", LP.lpgs("Add Credit Card")), q.addEventListener("command", function() {
LP.lpEditFormFillProfile(0, !1, 1)
}, !1), g.appendChild(q));
q = e.createElement("menuitem");
q.setAttribute("label", LP.lpgs("Clear Forms"));
q.addEventListener("command", function() {
LP.lpClearFormsHelper()
}, !1);
g.appendChild(q);
d && l && (q = e.createElement("menuitem"), q.setAttribute("label", LP.lpgs("Choose Profile and Credit Card")), q.addEventListener("command", function() {
LP.choose_profile_and_credit_card()
}, !1), g.appendChild(q));
return h
}
function Th(c) {
for (var e = c + md(1, 1E4); null != LP.mostRecent().document.getElementById(e);) e = c + md(1, 1E4);
return e
}
function vw() {
LP.lpprefsSetBoolPref("showLoginNotifications", !1, !1);
LP.flush_prefs()
}
function Ew() {
LP.lpOpenPrefs("Feedback")
}
function ww(c) {
"undefined" != typeof c.extra.matchingaccts ? LP.lpGetCurrentWindow().openDialog(zb + "content/changepw.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", c.extra.matchingaccts, c.extra.password, "0", c.extra.tld) : z[c.extra.id] && O(z[c.extra.id].password,
z[c.extra.id], B) == c.extra.password || jl(c.extra.username, c.extra.password, c.extra.id)
}
function Cw(c) {
LP.fill_current(c.aid[0].id);
return !0
}
function Dw(c) {
LP.lpGetCurrentWindow().setTimeout(function() {
LP.lpOpenGenPWWindow(c)
}, 0);
return c.extra2 || c.extra3 && 0 < c.aid.length
}
function yr(c) {
var e = c.extra;
if ("undefined" != typeof e.saveall && e.saveall) LP.lpOpenEditWindow(0, !1, !1, null, !0, e.postdata, e.fi);
else {
var f = e.key,
e = e.tld;
win = LP.lpGetCurrentWindow().openDialog(zb + "content/addconfirm.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal",
e, LP.get_default_group(Pa[f].url), f, Pa[f].username, Pa[f].encryptedPassword, Wf(Pa[f].url));
wd(c.browser, c.browser.contentDocument, !1)
}
}
function xw(c) {
var e = c.extra;
"undefined" != typeof e.saveall && e.saveall || (kl(e.key, e.tld), wd(c.browser, c.browser.contentDocument, !1))
}
function yw(c) {
c = Jr(c.extra);
LP.lpGetCurrentWindow().openDialog(zb + "content/formfill.xul", "_blank", "resizable=yes,chrome,titlebar,toolbar,centerscreen,modal", -1, 1, 0, c)
}
function zw() {
Jn = !1;
LP.lpprefsSetBoolPref("capturenewformfill", !1, !0);
LP.flush_prefs()
}
function kl(c, e) {
if (null != Pa[c]) {
var f = Pa[c].username,
d = Pa[c].encryptedPassword,
g = new dw;
g.username = f;
g.encryptedPassword = d;
g.tld = e;
g.rejectedTime = Ab();
Pf[Pf.length] = g;
Pa[c] = null;
id = []
}
}
function Iw(c) {
if (c && P && 4 == c.readyState)
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
c = c.responseXML.documentElement;
var e = c.getElementsByTagName("error");
if (0 < e.length && (e = e[0].getAttribute("notloggedin"), 1 == parseInt(e))) Sa(!1, "ff_genpwresponse");
else {
var f = c.getElementsByTagName("ok");
if (0 < f.length) {
e = Kb(f[0].getAttribute("url"));
c = f[0].getAttribute("password");
var d = Ya(c),
g = f[0].getAttribute("nofill");
if (re[e]) try {
re[e].elements
} catch (h) {
re[e] = Xf[e] = null
}
if (!re[e]) {
var l, n, p;
"undefined" != typeof LP ? (l = LP.getBrowser().selectedTab.linkedBrowser, n = l.contentDocument, p = null) : (l = null, n = document, p = window);
re[e] = Lg(l, n, !0, p)
}
if (re[e]) {
form = re[e];
var q = null,
q = Xf[e] ? Xf[e] : ah(form);
l = !1;
var r = null,
g = null;
for (p = 1; 2 >= p; p++) {
for (var t = 1; 2 >= t; t++) {
l = !1;
var r = g = null,
A = -1;
if (1 == t) {
if (q)
for (var y =
0; y < form.elements.length; y++)
if (form.elements[y] == q) {
A = y + 1;
break
}
} else A = 0; if (-1 != A) {
for (y = A; y < form.elements.length; y++)
if (A = form.elements[y], 1 == p && !oc(A)) l = !1;
else if ("password" == A.type) {
if (l || !r || !g)
if (g = r, r = A, l && r && g) break;
l = !0
} else l = !1; if (r && g) break
}
}
if (r && g) break
}
if (r && g) {
if (("" != g.value || g == q) && "" == r.value && y < form.elements.length - 1)
for (y += 1; y < form.elements.length; y++)
if (A = form.elements[y], "password" == A.type && "" == A.value) {
g = r;
r = A;
break
} else if ("hidden" != A.type) break;
r.focus();
r.value = d;
Qc(r);
g.focus();
g.value = d;
Qc(g);
0 <= e.indexOf("bankofamerica.com") && Qb(function() {
r.focus();
Qc(r)
}, 250);
"undefined" != typeof LP && (y = {}, y.target = r, LP.lpfieldchange(y), y.target = g, LP.lpfieldchange(y))
} else r ? (r.focus(), r.value = d, Qc(r)) : ga("Couldn't find password fields after generating. form:" + form, null)
} else "0" == g && ga("Could not find lpgenpassforms when generating pw", null);
Mb && ((y = Xd) || (y = Kn), y && y.ownerDocument && (y.ownerDocument.location && "undefined" != typeof Wa && e == Wa.URLToASCII(y.ownerDocument.location.href) &&
"password" == y.type && q != y && "" == y.value && oc(y)) && (y.focus(), y.value = d, Qc(y), "undefined" != typeof Ba && Ba(n, y)));
n = parseInt(f[0].getAttribute("accts_version"));
if (Ga || n == vb + 1) {
f = f[0].getAttribute("aid");
q = new Yb;
q.individualshare = !1;
q.pendingshare = !1;
q.url = e;
y = Ta(q.url);
q.tld = y;
q.name = LP.lpgs("Generated Password for") + " " + q.tld;
q.urid = "0";
q.id = f;
q.manual = "0";
q.is_http = "0";
q.extra = "";
q.fav = "0";
q.favico = "0";
q.autologin = "0";
q.basic_auth = !1;
q.group = LP.get_null_group();
q.fiid = f;
q.genpw = !0;
q.isbookmark = !1;
q.never_autofill =
"0";
LP.SetLastTouch(q);
q.sn = !1;
q.username = "";
q.password = c;
q.unencryptedUsername = "";
q.save_all = !1;
q.realm = "";
q.sharedfromaid = "";
q.attachkey = "";
q.attachpresent = "0";
q.logins = [];
q.otherlogins = [];
q.fields = [];
d = new gd;
d.urid = "0";
d.url = e;
e = xb(d.url);
d.server = e.host;
d.tld = sc(e.host, d.url);
nb(d.url, e);
d.submit_id = "";
d.captcha_id = "";
d.custom_js = "";
d.username = "";
d.password = c;
d.openid_url = "";
d.method = "";
d.action = "";
d.unencryptedUsername = "";
d.uname = "";
d.pname = "";
d.oname = "";
d.fields = [];
d.otherfields = [];
q.logins[0] =
d;
z[f] = q;
tf++;
"undefined" == typeof la[y] && (la[y] = []);
la[y][f] = !0;
LP.addAidIdentity(f);
vf[f] = !0;
if ("undefined" != typeof gb[y] && (c = gb[y], "undefined" != typeof gb[c]))
for (e = 0; e < gb[c].length; e++) y = gb[c][e], "undefined" == typeof la[y] && (la[y] = []), la[y][f] = !0;
kc = vb = n;
c = !0;
e = lc();
null == e && (c = !1);
c && !Ad(e, q, !0) && (c = !1);
c && !Wd(e, n) && (c = !1);
c && !wc(e, null, "lpPopulateGeneratedPassword") && (c = !1);
c ? Fb() : LP.lpGetAccounts()
} else LP.lpGetAccounts();
Pc()
}
}
} else ga("Problem with save gen pw response. status=" + c.status + " text= " +
c.responseText, null), Ua("ErrorSaveGenPwMsg")
}
function il(c, e, f) {
"object" == typeof c && 1 <= c.length && (c = c[0]);
if ("undefined" == typeof f || null == f) f = e.extra;
LP.lp_noteAcceptHelper(c.id, e.browser, f)
}
function Kr(c) {
var e = "aid=" + LP.en(c.extra2);
LP.lpMakeRequest(LP.lp_base + "set_never_autofill.php", e, null);
z[c.extra2].never_autofill = "1";
z[c.extra2].autologin = "0";
(e = lc()) && nd(e, c.extra2, !1) && Ad(e, z[c.extra2], !1) && Vg(e) && wc(e, null, "lp_noteAcceptNever") && Fb()
}
function Fw() {
LP.getBrowser().contentDocument.LPlpshowednote =
2
}
function ga(c) {
if (!1 != pj && (Ln++, !(100 < Ln))) {
var e = c.match(/^(.*)location:\s+/);
e && (c = e[1]);
var e = "msg=ff(" + LP.lp_getFFVersion() + ") lp(" + nc + ") errors(" + Ln + "): " + LP.en(c),
f = Ab(),
e = e + ("&secsrunning=" + LP.en(f - Jw));
c.match(/NS_ERROR_NOT_INITIALIZED/) || -1 != c.indexOf("this.docShell is null") || -1 != c.indexOf("this._closedNotification.parentNode is null") || -1 != c.indexOf("browsers[i] is undefined") || LP.lpMakeRequest(LP.lp_base + "error.php", e, null)
}
}
function Lr(c) {
c.getElementById("debug-btn") && (c.getElementById("debug-btn").label =
LP.lpgs(Jh ? "DisableDebug" : "EnableDebug"), c.getElementById("debug-btn").setAttribute("checked", Jh ? "true" : "false"))
}
function Ua(c, e, f, d, g, h, l) {
if (LP.isFennec) Cb(LP.lpgs(c));
else {
var n = [];
h && l ? (n.custombutton = h, n.customaction = l) : e ? n.feedback = 1 : f && (n.login = 1);
d && (n.createaccount = 1);
g && (n.multifactor_disable_url = g);
vc(c, null, 0, "error", n, 1)
}
}
function jl(c, e, f, d, g, h) {
LP.lpGetCurrentWindow().setTimeout(function() {
var l = "xml=1";
if (d) l += d;
else {
var n = z[f];
null == n && (n = Ia[f]);
h = n ? yb(B, n.group) : !1;
n = !1 == h ? ja : h.sharekey;
if (!Tb(h)) return;
l += "&username=" + LP.en(da(null == c ? "" : c, n)) + "&password=" + LP.en(da(e, n)) + "&id=" + LP.en(f)
}
try {
for (var p in z)
if (z[p].genpw && O(z[p].password, z[p], B) == e) {
l += "&delgenpwaid=" + LP.en(p);
break
}
} catch (q) {}
l += !1 == h ? "" : "&sharedfolderid=" + LP.en(h.id);
p = "undefined" != typeof g ? g : [];
null != c && p.push(c);
p.push(e);
n = {};
n.aid = null != f && "undefined" != typeof z[f] ? f : null == f ? 0 : f;
n.postdata = l;
n.posturl = LP.lp_base + "change_pw.php";
n.newvalues = p;
n.url = n.posturl;
n.handler = Mr;
LP.lpMakeRequest(n.posturl, n.postdata,
Mr, null, n)
}, 100)
}
function Mr(c, e, f) {
if (!un(c, f, "lpChangePwResponse") && c && 4 == c.readyState)
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
var d = c.responseXML.documentElement.getElementsByTagName("ok");
if (0 < d.length)
if (c = parseInt(d[0].getAttribute("accts_version")), Ga || c == vb + 1) {
e = d[0].getAttribute("newpassword");
f = [];
for (var g = [], h = ""; d[0].hasAttribute("oldpassword" + h);) {
var l = parseInt(d[0].getAttribute("id" + h)),
n = d[0].getAttribute("oldpassword" + h),
p = z[l];
kb(p.tld, g) || (g[g.length] =
p.tld);
p.password == n && (p.password = e);
if (p.logins) {
for (l = 0; l < p.logins.length; l++) {
p.logins[l].password == n && (p.logins[l].password = e);
for (var q = 0; q < p.logins[l].fields.length; q++) "password" == p.logins[l].fields[q].type && p.logins[l].fields[q].value == n && (p.logins[l].fields[q].value = e);
for (q = 0; q < p.logins[l].otherfields.length; q++) "password" == p.logins[l].otherfields[q].type && p.logins[l].otherfields[q].value == n && (p.logins[l].otherfields[q].value = e)
}
for (l = 0; l < p.otherlogins.length; l++) {
p.otherlogins[l].password ==
n && (p.otherlogins[l].password = e);
for (q = 0; q < p.otherlogins[l].fields.length; q++) "password" == p.otherlogins[l].fields[q].type && p.otherlogins[l].fields[q].value == n && (p.otherlogins[l].fields[q].value = e);
for (q = 0; q < p.otherlogins[l].otherfields.length; q++) "password" == p.otherlogins[l].otherfields[q].type && p.otherlogins[l].otherfields[q].value == n && (p.otherlogins[l].otherfields[q].value = e)
}
}
f[f.length] = p;
"" == h ? h = 1 : h++
}
kc = vb = c;
d = !0;
h = lc();
null == h && (d = !1);
if (d) {
for (l = 0; l < f.length; l++) {
if (!nd(h, f[l].id, !1)) {
d = !1;
break
}
if (!Ad(h, f[l], !1)) {
d = !1;
break
}
}
for (l in z) z[l].genpw && kb(z[l].tld, g) && O(z[l].password, z[l], B) == Ya(e) && (nd(h, z[l].id, !0) || (d = !1))
}
d && !Wd(h, c) && (d = !1);
d && !wc(h, null, "lpChangePwResponse_win") && (d = !1);
d ? Fb() : LP.lpGetAccounts()
} else LP.lpGetAccounts();
else Ua("ErrorServerMsg")
} else ga("Problem with change pw response. status=" + c.status + " text= " + c.responseText, null), Ua("ErrorChangePwMsg")
}
function Mn(c, e) {
var f = cb(c),
d = null;
f && (d = f.contentWindow);
for (var f = [], g = 1E3, h = c.getElementsByTagName("object"),
l = 0; l < h.length; l++)
if ("" == h[l].style.visibility || "visible" == h[l].style.visibility) {
var n = h[l].id;
"" == n && (n = "lpobj" + g++, h[l].id = n);
h[l].style.visibility = "hidden";
f[f.length] = n
}
l = c.getElementsByTagName("embed");
for (h = 0; h < l.length; h++)
if ("" == l[h].style.visibility || "visible" == l[h].style.visibility) n = l[h].id, "" == n && (n = "lpobj" + g++, l[h].id = n), l[h].style.visibility = "hidden", f[f.length] = n;
l = c.getElementsByTagName("applet");
for (h = 0; h < l.length; h++)
if ("" == l[h].style.visibility || "visible" == l[h].style.visibility) n =
l[h].id, "" == n && (n = "lpobj" + g++, l[h].id = n), l[h].style.visibility = "hidden", f[f.length] = n;
if ("undefined" != typeof FROMPARTNER && "undefined" != typeof z[e]) f = z[e], c.body && "undefined" != typeof f.submit_html && (d = c.createElement("div"), d.innerHTML = f.submit_html, c.body.appendChild(d)), "undefined" != typeof f.submit_js && LP.lpGetCurrentWindow().eval(f.submit_js), f.submit_js = "", f.submit_html = "";
else {
g = c.createElement("script");
n = 'function lphideoverlay(user){try{document.getElementById("lpoverlay1").style.display="none";document.getElementById("lpmsgbox1").style.display="none";';
for (h = 0; h < f.length; h++) n += 'document.getElementById("' + ke(f[h]) + '").style.visibility="visible";';
n += "if(user){var i=document.createElement('image'); i.src='" + LP.lp_base + "error.php?msg=userCloseOverlay%20aid%20" + (e ? e : "") + "'; i.style.display='none'; document.appendChild(i);}}catch(e){} }";
n = c.createTextNode(n);
g.appendChild(n);
c.body && c.body.appendChild(g);
c.LPlphideIds = f;
if (c.getElementById("lpoverlay1") && c.getElementById("lpmsgbox1")) c.getElementById("lpoverlay1").style.display = "", c.getElementById("lpmsgbox1").style.display =
"";
else {
g = c.createElement("div");
g.id = "lpoverlay1";
n = 0;
"undefined" != typeof c.documentElement && "undefined" != typeof c.documentElement.scrollLeft && 0 < c.documentElement.scrollLeft ? n = c.documentElement.scrollLeft : "undefined" != typeof c.body && c.body && ("undefined" != typeof c.body.scrollLeft && 0 < c.body.scrollLeft) && (n = c.body.scrollLeft);
f = 0;
"undefined" != typeof c.documentElement && "undefined" != typeof c.documentElement.scrollTop && 0 < c.documentElement.scrollTop ? f = c.documentElement.scrollTop : "undefined" != typeof c.body &&
c.body && ("undefined" != typeof c.body.scrollTop && 0 < c.body.scrollTop) && (f = c.body.scrollTop);
g.style.cssText = "position: absolute; left: " + n + "px; top: " + f + "px; width: 100%; height: 100%; background-color: #666666; opacity: .7; filter: alpha(opacity=70); z-index: 9980;";
c.body && c.body.appendChild(g);
h = -1;
g = 200;
d && "undefined" != typeof d.innerWidth && 0 < d.innerWidth && (h = d.innerWidth);
if (0 >= h && ("undefined" != typeof c.documentElement && "undefined" != typeof c.documentElement.clientWidth && 0 < c.documentElement.clientWidth &&
(h = c.documentElement.clientWidth), "undefined" != typeof c.body && c.body && "undefined" != typeof c.body.clientWidth && 0 < c.body.clientWidth && (0 >= h || c.body.clientWidth < h))) h = c.body.clientWidth;
300 < h && (g = h / 2 - 150);
g += n;
h = -1;
n = 200;
d && "undefined" != typeof d.innerHeight && 0 < d.innerHeight && (h = d.innerHeight);
if (0 >= h && ("undefined" != typeof c.documentElement && "undefined" != typeof c.documentElement.clientHeight && 0 < c.documentElement.clientHeight && (h = c.documentElement.clientHeight), "undefined" != typeof c.body && c.body && "undefined" !=
typeof c.body.clientHeight && 0 < c.body.clientHeight && (0 >= h || c.body.clientHeight < h))) h = c.body.clientHeight;
0 < h && (n = h / 2 - 20);
n += f;
d = c.createElement("div");
d.id = "lpmsgbox1";
d.style.cssText = "background-color: white; color: black; border:1px solid #c01f2f; position:absolute; text-align:center; display:block; width:300px; height:auto; z-index: 9990; left: " + g + "px; top: " + n + "px; font-family:arial; font-size:13px;";
f = "<div style='float:right'><a style='WIDTH:16px;HEIGHT:16px;COLOR:black;BACKGROUND-COLOR:white' href='#' onclick='lphideoverlay(1); return false;'><img alt=\"x\" src=\"data:image/gif;base64,R0lGODlhEAAQAIABAAAAAP///yH5BAEKAAEALAAAAAAQABAAAAIjjI+pq+DpAIwnSmRlbpmufjEbE4AiGFZWuWIe+7gpTNb2TRYAOw==\"/ border=0></a></div><br/><img src=\"data:image/gif;base64,R0lGODlhEAAQAPZVADsBAkECBFEGCmQDBGoEB3UIDWcOEn0dHnZGRnhBQntbXIILEoIMEoENFI8QGI0UHJMQGKERGqURGq4QGIsaIZ4fJq8WI68YJrQXJLIZJbgZJ7gZKLwcK74dLa4gKq4iLLUgLaApMLwpNrwsOKUzOcAfL8EhMcUjM8YkNMgoOJw+QKY8QtA5Sdo/T6dARa5FS6tOUr9MUqRRVrRVWY9pa5BmaZBqbMRKVNlRYclud/14iLyIiKuoqNGbneyPmfOAkPeElNGvsNO3t+aorfGjq+y/w8zMzNXU1N3S0t7W1t3a2uLR0e3U1vLd4OLh4ejo6Png4/bx8ff09Pr5+f7+/v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAAFYALAAAAAAQABAAAAfEgFaCVlCFhoWDgzk6QD+Oj0A6OYMyLSwdJR2amywtMoITKZgbFRsYIRqaKROCEpgZO1IkMFM7GJgSghGZKEVVQktVQyclJRG6JR8uM1NVVVEvKx7GyDHO11VUVTHUVgEECUlIR+RHSUoJBAGCAAMHKgpO8koIKgcDAIICCwwGRk89gjzhUYABAwGCGly4IIIIkxE3mvgAkeFCA0EPMBQ7gcNEio7FMDwQVAOCBQ6bNnGwAKHGIBoUHMicKZOCjUQ4cw4KBAA7\"/>" +
(" " + LP.lpgs("LoginOverlayText") + "<br/><span id='lpoverlaystatus' style='color:#c1243f;font-size:11px;'></span><br/><br/>");
try {
d.innerHTML = f
} catch (p) {
hn(c);
return
}
c.body && c.body.appendChild(d)
}
}
}
function hn(c) {
if (cb(c)) {
var e = c.getElementById("lpoverlay1");
e && (e.style.display = "none");
if (e = c.getElementById("lpmsgbox1")) e.style.display = "none";
if ("undefined" != typeof c.LPlphideIds)
for (e = 0; e < c.LPlphideIds.length; e++) {
var f = c.getElementById(c.LPlphideIds[e]);
f && (f.style.visibility = "visible")
}
}
}
function Nn(c,
e) {
c.getElementById("lpoverlaystatus") && (c.getElementById("lpoverlaystatus").innerHTML = e)
}
function tj(c, e, f, d, g, h) {
for (var l = 0; l < e.length; l++) {
var n = e[l];
n == d ? c.push({
type: f,
url: n,
domain: 0,
title: h
}) : n == g && c.push({
type: f,
url: n,
domain: 1,
title: h
})
}
}
function Nr(c, e) {
for (var f = -1, d = 0; d < c.length; d++)
if (c[d] == e) {
f = d;
break
} - 1 != f && c.splice(f, 1)
}
function ma() {
if (!Or && (Or = !0, null == Z)) try {
var c = "WINNT" == T["@mozilla.org/xre/app-info;1"].getService(ca.nsIXULRuntime).OS,
e = "Darwin" == T["@mozilla.org/xre/app-info;1"].getService(ca.nsIXULRuntime).OS,
f = "Linux" == T["@mozilla.org/xre/app-info;1"].getService(ca.nsIXULRuntime).OS,
d = -1 != T["@mozilla.org/xre/app-info;1"].getService(ca.nsIXULRuntime).XPCOMABI.indexOf("64");
if (c || e || f) {
Components.utils["import"]("resource://gre/modules/ctypes.jsm");
var g = __LOCATION__.parent.parent;
g.append("platform");
for (var h = d ? 2 : 1, d = d ? 0 : -1; d < h; d++) try {
var l = g.clone();
c ? (l.append(0 == d ? "WINNT_x86_64-msvc" : "WINNT_x86-msvc"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.dll" : "lpxpcom.dll")) : e ? (l.append(0 == d ? "Darwin_x86_64-gcc3" :
"Darwin"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.dylib" : "lpxpcom.dylib")) : f && (l.append(0 == d ? "Linux_x86_64-gcc3" : "Linux_x86-gcc3"), l.append("components"), l.append(0 == d ? "lpxpcom_x86_64.so" : "lpxpcom.so"));
if (l.exists()) {
sa = ctypes.open(l.path);
ua = c && 0 != d ? ctypes.winapi_abi : ctypes.default_abi;
Pr = l.path;
break
}
} catch (n) {}
if (null != sa) {
Hb = sa.declare("lp_free", ua, ctypes.void_t, ctypes.void_t.ptr);
sa.declare("lp_setusingctypes", ua, ctypes.void_t)();
Z = {
encrypt: function(c, d) {
try {
var e = sa.declare("lp_encrypt",
ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
decrypt: function(c, d) {
try {
var e = sa.declare("lp_decrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
encryptcbc: function(c, d) {
try {
var e = sa.declare("lp_encryptcbc", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
decryptcbc: function(c, d) {
try {
var e = sa.declare("lp_decryptcbc", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
iscbcencrypted: function(c) {
try {
return sa.declare("lp_iscbcencrypted", ua, ctypes.bool, ctypes["char"].ptr)(c)
} catch (d) {
return !1
}
},
xCryptoHash: function(c) {
try {
var d = sa.declare("lp_xCryptoHash", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
xCryptoSHA256: function(c) {
try {
var d = sa.declare("lp_xCryptoSHA256", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
xCryptoBin2Hex: function(c) {
try {
var d = sa.declare("lp_xCryptoBin2Hex", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
xCryptoHex2Bin: function(c) {
try {
var d = sa.declare("lp_xCryptoHex2Bin", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
xCryptoEncrypt: function(c, d) {
try {
var e = sa.declare("lp_xCryptoEncrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoDecrypt: function(c, d) {
try {
var e = sa.declare("lp_xCryptoDecrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoEncryptCBC: function(c,
d) {
try {
var e = sa.declare("lp_xCryptoEncryptCBC", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoDecryptCBC: function(c, d) {
try {
var e = sa.declare("lp_xCryptoDecryptCBC", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoRSAGenerateKeys: function(c, d) {
try {
var e = sa.declare("lp_xCryptoRSAGenerateKeys", ua, ctypes["char"].ptr)(),
f;
if (e.isNull()) return !1;
f = e.readString();
Hb(e);
var g = f.split("|");
return 2 == g.length ? (c.value = Ie(g[0]), d.value = Ie(g[1]), !0) : !1
} catch (h) {
return !1
}
},
xCryptoRSAGeneratePublic: function(c) {
try {
var d = sa.declare("lp_xCryptoRSAGeneratePublic", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
xCryptoRSAEncrypt: function(c, d) {
try {
var e = sa.declare("lp_xCryptoRSAEncrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ?
f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoRSADecrypt: function(c, d) {
try {
var e = sa.declare("lp_xCryptoRSADecrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoRSASign: function(c, d) {
try {
var e = sa.declare("lp_xCryptoRSASign", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
xCryptoRSAVerify: function(c,
d, e) {
try {
return sa.declare("lp_xCryptoRSAVerify", ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e)
} catch (f) {
return !1
}
},
xGenerateKeys: function(c, d, e) {
try {
var f = sa.declare("lp_xGenerateKeys", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
g;
if (f.isNull()) return !1;
g = f.readString();
Hb(f);
var h = g.split("|");
return 2 == h.length ? (d.value = Ie(h[0]), e.value = Ie(h[1]), !0) : !1
} catch (l) {
return !1
}
},
protect_data: function(c) {
try {
var d = sa.declare("lp_protect_data", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
unprotect_data: function(c) {
try {
var d = sa.declare("lp_unprotect_data", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
StartNamedPipeServer: function() {
try {
return sa.declare("lp_StartNamedPipeServer", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
SendNamedPipeMessage: function(c, d) {
try {
return sa.declare("lp_SendNamedPipeMessage", ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr)(c,
d)
} catch (e) {
return !1
}
},
SendNamedPipeMessageToAll: function(c) {
try {
return sa.declare("lp_SendNamedPipeMessageToAll", ua, ctypes.bool, ctypes["char"].ptr)(c)
} catch (d) {
return !1
}
},
NamedPipeNumClients: function() {
try {
return sa.declare("lp_NamedPipeNumClients", ua, ctypes["int"])()
} catch (c) {
return 0
}
},
trueapi_supported: function() {
try {
return sa.declare("lp_trueapi_supported", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
trueapi_store_hash: function(c, d) {
try {
return sa.declare("lp_trueapi_store_hash", ua, ctypes.bool, ctypes["char"].ptr,
ctypes["char"].ptr)(c, d)
} catch (e) {
return !1
}
},
trueapi_get_hash: function(c) {
try {
var d = sa.declare("lp_trueapi_get_hash", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
trueapi_store_default_login: function(c, d, e) {
try {
return sa.declare("lp_trueapi_store_default_login", ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e)
} catch (f) {
return !1
}
},
trueapi_get_default_login: function(c, d, e) {
try {
var f = sa.declare("lp_trueapi_get_default_login",
ua, ctypes["char"].ptr)(),
g;
if (f.isNull()) return !1;
g = f.readString();
Hb(f);
var h = g.split("|");
return 3 == h.length ? (c.value = Ie(h[0]), d.value = Ie(h[1]), e.value = Ie(h[2]), !0) : !1
} catch (l) {
return !1
}
},
trueapi_default_login_exists: function(c) {
try {
return sa.declare("lp_trueapi_default_login_exists", ua, ctypes.bool, ctypes["char"].ptr)(c)
} catch (d) {
return !1
}
},
trueapi_delete_default_login: function() {
try {
return sa.declare("lp_trueapi_delete_default_login", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
getappdatapath: function() {
try {
var c =
sa.declare("lp_getappdatapath", ua, ctypes["char"].ptr)(),
d;
c.isNull() ? d = "" : (d = c.readString(), Hb(c));
return d
} catch (e) {
return ""
}
},
read_file: function(c) {
try {
var d = sa.declare("lp_read_file", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
write_file: function() {
try {
sa.declare("lp_write_file", ua, ctypes.void_t, ctypes["char"].ptr, ctypes["char"].ptr)
} catch (c) {}
},
lpvt_supported: function() {
try {
return sa.declare("lp_lpvt_supported", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
lpvt_store_data: function(c, d, e, f, g) {
try {
return sa.declare("lp_lpvt_store_data", ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e, f, g)
} catch (h) {
return !1
}
},
lpvt_has_data: function() {
try {
return sa.declare("lp_lpvt_has_data", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
lpvt_verify_user: function(c, d, e, f, g) {
try {
var h = sa.declare("lp_lpvt_verify_user", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr,
ctypes["char"].ptr)(c, d, e, f, g),
l;
h.isNull() ? l = "" : (l = h.readString(), Hb(h));
return l
} catch (n) {
return ""
}
},
lpvt_verify_file_contents: function(c) {
try {
return sa.declare("lp_lpvt_verify_file_contents", ua, ctypes.bool, ctypes["char"].ptr)(c)
} catch (d) {
return !1
}
},
lpvt_setup_if: function() {
try {
sa.declare("lp_lpvt_setup_if", ua, ctypes.void_t)
} catch (c) {}
},
validity_supported: function() {
try {
return sa.declare("lp_validity_supported", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
validity_store_data: function(c, d, e, f) {
try {
return sa.declare("lp_validity_store_data",
ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e, f)
} catch (g) {
return !1
}
},
validity_has_data: function() {
try {
return sa.declare("lp_validity_has_data", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
validity_verify_user: function(c, d, e, f) {
try {
var g = sa.declare("lp_validity_verify_user", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e, f),
h;
g.isNull() ? h = "" : (h = g.readString(), Hb(g));
return h
} catch (l) {
return ""
}
},
winbio_supported: function() {
try {
return sa.declare("lp_winbio_supported",
ua, ctypes.bool)()
} catch (c) {
return !1
}
},
winbio_store_data: function(c, d, e, f) {
try {
return sa.declare("lp_winbio_store_data", ua, ctypes.bool, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d, e, f)
} catch (g) {
return !1
}
},
winbio_has_data: function() {
try {
return sa.declare("lp_winbio_has_data", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
winbio_verify_user: function(c, d, e, f) {
try {
var g = sa.declare("lp_winbio_verify_user", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr,
ctypes["char"].ptr)(c, d, e, f),
h;
g.isNull() ? h = "" : (h = g.readString(), Hb(g));
return h
} catch (l) {
return ""
}
},
winbio_delete_default_login: function() {
try {
return sa.declare("lp_winbio_delete_default_login", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
winbio_has_fingerprints: function() {
try {
return sa.declare("lp_winbio_has_fingerprints", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
winbio_launch_enrollment: function() {
try {
sa.declare("lp_winbio_launch_enrollment", ua, ctypes.void_t)()
} catch (c) {}
},
GetStringResource: function(c, d) {
try {
var e =
sa.declare("lp_GetStringResource", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["int"])(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
GetImageResource: function(c, d) {
try {
var e = sa.declare("lp_GetImageResource", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["int"])(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
GetAdditionalToolbarImages: function(c, d) {
try {
var e = sa.declare("lp_GetAdditionalToolbarImages", ua, ctypes["char"].ptr, ctypes["int"],
ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
AdditionalToolbarImagesClick: function(c) {
try {
sa.declare("lp_AdditionalToolbarImagesClick", ua, ctypes.void_t, ctypes["int"])(c)
} catch (d) {}
},
LPShowLastPassSearch: function(c, d) {
try {
return sa.declare("lp_LPShowLastPassSearch", ua, ctypes["int"], ctypes["int"], ctypes["char"].ptr)(c, d)
} catch (e) {
return 0
}
},
LPSearchCoordinates: function(c, d, e, f, g, h) {
try {
return sa.declare("lp_LPSearchCoordinates", ua, ctypes["int"], ctypes["int"],
ctypes["char"].ptr, ctypes["int"], ctypes["int"], ctypes["int"], ctypes["int"])(c, d, e, f, g, h)
} catch (l) {
return 0
}
},
omnikey_supported: function() {
try {
return sa.declare("lp_omnikey_supported", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
omnikey_get_public_key: function(c) {
try {
var d = sa.declare("lp_omnikey_get_public_key", ua, ctypes["char"].ptr, ctypes["char"].ptr)(c),
e;
d.isNull() ? e = "" : (e = d.readString(), Hb(d));
return e
} catch (f) {
return ""
}
},
omnikey_encrypt: function(c, d) {
try {
var e = sa.declare("lp_omnikey_encrypt", ua, ctypes["char"].ptr,
ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
omnikey_decrypt: function(c, d) {
try {
var e = sa.declare("lp_omnikey_decrypt", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr)(c, d),
f;
e.isNull() ? f = "" : (f = e.readString(), Hb(e));
return f
} catch (g) {
return ""
}
},
LPGetIdleTimeTicks: function() {
try {
return sa.declare("lp_LPGetIdleTimeTicks", ua, ctypes.unsigned)()
} catch (c) {
return 0
}
},
launch_importer: function() {
try {
return sa.declare("lp_launch_importer",
ua, ctypes.bool)()
} catch (c) {
return !1
}
},
wlan_works: function() {
try {
return sa.declare("lp_wlan_works", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
wlan_pull_csv: function() {
try {
var c = sa.declare("lp_wlan_pull_csv", ua, ctypes["char"].ptr)(),
d;
c.isNull() ? d = "" : (d = c.readString(), Hb(c));
return d
} catch (e) {
return ""
}
},
wlan_push: function(c) {
try {
sa.declare("lp_wlan_push", ua, ctypes.void_t, ctypes["char"].ptr)(c)
} catch (d) {}
},
wlan_has_exe: function() {
try {
return sa.declare("lp_wlan_has_exe", ua, ctypes.bool)()
} catch (c) {
return !1
}
},
run_file: function(c) {
try {
sa.declare("lp_run_file", ua, ctypes.void_t, ctypes["char"].ptr)(c)
} catch (d) {}
}
};
try {
var p = sa.declare("lp_pbkdf2", ua, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["char"].ptr, ctypes["int"], ctypes["int"]);
"function" == typeof p && (Z.pbkdf2 = function(c, d, e, f) {
try {
var g = p(c, d, e, f),
h;
g.isNull() ? h = "" : (h = g.readString(), Hb(g));
return h
} catch (l) {
return ""
}
})
} catch (q) {}
}
}
} catch (r) {}
return null != Z
}
function Xh() {
return ma()
}
function Ya(c, e) {
On != ja && (On = ja, Le = [], Le[""] = "");
"undefined" == typeof Le &&
(Le = [], Le[""] = "");
if ((null == e || e == ja) && null != Le[c]) return Le[c];
var f = Pn(c, e);
if (null == e || e == ja) Le[c] = f;
return f
}
function Pn(c, e, f) {
if (null == c || 0 == c.length || "string" != typeof c) return "";
var d = null;
if ("undefined" == typeof e || null == e) {
if ("string" != typeof ja || 0 == ja.length) return "";
e = ja;
d = wf
}
null == d && (d = rb(e));
if ("!" == c[0]) {
if (ma() && "function" == typeof Z.decryptcbc) c = Z.decryptcbc(d, c);
else {
e = Xa.StringToKeyIv(e, 256);
d = [];
for (oa = 0; oa < e.key.length; ++oa) d[oa] = e.key[oa];
c = c.split("|", 2);
c = 2 !== c.length ? "" : Xa.Decrypt({
key: d,
iv: Xa.B64ToBytes(c[0].substring(1)),
data: c[1],
b64: !0,
bits: 256,
mode: "cbc"
})
}
return c
}
return ma() ? Z.decrypt(d, c) : Xa.Decrypt({
pass: e,
data: c,
b64: !0,
mode: "ecb",
bits: 256
}, f)
}
function Ie(c) {
try {
return atob(c)
} catch (e) {
ga("ERROR: lpatob: on string:" + c + " err:" + e + " ln: " + e.lineNumber, null)
}
return null
}
function Hk(c) {
try {
return btoa(c)
} catch (e) {
ga("ERROR: lpbtoa : " + e + " ln: " + e.lineNumber, null)
}
return null
}
function an(c, e, f) {
if (ma() && "function" == typeof Z.encryptcbc) return "" == f ? "" : Z.encryptcbc(f, c);
f = Xa.StringToKeyIv(e,
256);
e = [];
for (oa = 0; oa < f.key.length; ++oa) e[oa] = f.key[oa];
f = Xa.CreateIV(16);
return "!" + Xa.eb64(f.str) + "|" + Xa.Encrypt({
key: e,
iv: f.arr,
data: c,
b64: !0,
bits: 256,
mode: "cbc"
})
}
function da(c, e, f) {
var d = null;
if ("undefined" == typeof e || null == e) {
if ("string" != typeof ja || 0 == ja.length || null == c || 0 == c.length) {
if (null != c && 0 != c.length && P) return ga("We're trying to encrypt a string, while logged in, but somehow we don't have the key, typeof:" + typeof ja, null), Sa(!1, "ff_nokey"), "";
null == c || 0 == c.length || (d = "Was going to return unenc string back. length: " +
c.length + " typeof key: " + typeof ja + " loggedin: " + P + " called by: " + arguments.callee.caller.toString().substring(0, arguments.callee.caller.toString().indexOf("{")), ga(d, null));
return ""
}
e = ja;
d = wf
} else if (null == c || 0 == c.length) return "";
null == d && (d = rb(e));
return "string" != typeof c ? "" : uj && !f ? an(c, e, d) : ma() ? Z.encrypt(d, c) : Xa.Encrypt({
pass: e,
data: c,
b64: !0,
mode: "ecb",
bits: 256
})
}
function Qr(c, e) {
return Ya(c, e)
}
function ke(c) {
if ("string" != typeof c) {
try {
c = "" + c
} catch (e) {}
if ("string" != typeof c) return ""
}
c = c.replace(/\\/g,
"\\\\");
c = c.replace(/'/g, "\\'");
return c.replace(/"/g, '\\"')
}
function Rr() {
if (P && null == Yf("active")) {
var c = LP.lp_base + "poll_server.php",
e = "";
if ((!ll || "" == Q || "" == Kc) && "" != ld && "" != Sc) c = c.replace(/^https:\/\//, "http://"), e = "sidhash=" + LP.en(Fa(Sc));
sn && null != Wk && (e += "&mpstrength=" + LP.en(Wk));
LP.lpMakeRequest(c, e, Kw);
vj = Ab()
}
}
function Kw(c) {
if (4 == c.readyState)
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
if (c = c.responseXML.documentElement.getElementsByTagName("ok"), 0 < c.length) {
ml =
"1" == c[0].getAttribute("logoff_other_ses") ? !0 : !1;
c[0].getAttribute("accts_version") > vb && LP.lpGetAccounts();
var e = c[0].getAttribute("attachversion");
if (null == bc || -1 == bc) try {
(bc = Je(ha + "_version.att", 25)) || (bc = 0)
} catch (f) {
eb(ha + "_version.att"), bc = 0
}
e > bc && !LP.isFennec && (e = "version=" + LP.en(bc) + "&b64=1&chunked=1", LP.lpMakeRequest(LP.lp_base + "getattach.php", e, vn));
sn = null != c[0].getAttribute("sendmpstrength") ? !0 : !1;
if ((e = c[0].getAttribute("note_title")) && e.length) {
var d = c[0].getAttribute("note_text");
c = c[0].hasAttribute("note_url") ?
c[0].getAttribute("note_url") : null;
vc(e, null, 0, "viewalert", c, !0, d)
}
}
} else ga("Problem in poll_server_response. status=" + c.status, null)
}
function Aw(c) {
LP.lpanyopen(c.extra)
}
function Bw() {}
function Yg(c) {
if (!c) return "";
var e = c.name;
c = fb(c, 0);
"" != c && (e += " (" + c + ")");
return e
}
function fb(c, e) {
if (!c) return "";
if (2 == e) return "undefined" == typeof c.url || "http://sn" == c.url || LP.is_application(c) ? "" : c.url;
if (LP.is_application(c)) {
for (var f = 0; f < c.fields.length; f++) {
var d = c.fields[f];
if (0 == e && "" == d.type && "" != d.value ||
1 == e && "password" == d.type && "" != d.value) return O(d.value, c, B)
}
return ""
}
if (!c.logins || 0 == c.logins.length) return "";
if (c.save_all)
for (var g = 0; g < c.logins.length; g++) {
for (var h = c.logins[g], f = 0; f < h.otherfields.length; f++)
if (d = h.otherfields[f], 0 == e && ("text" == d.type || "email" == d.type || "tel" == d.type || "url" == d.type) && "" != d.value || 1 == e && "password" == d.type && "" != d.value) return O(d.value, c, B);
for (f = 0; f < h.fields.length; f++)
if (d = h.fields[f], 0 == e && ("text" == d.type || "email" == d.type || "tel" == d.type || "url" == d.type) && "" !=
d.value || 1 == e && "password" == d.type && "" != d.value) return O(d.value, c, B)
} else {
if ("http://sn" == c.url) {
f = O(c.extra, c, B);
g = LP.getNoteValue("NoteType", f);
if ("undefined" != typeof yc[g] && "undefined" != typeof yc[g].Username && 0 == e) return LP.getNoteValue("Username", f);
if ("undefined" != typeof yc[g] && "undefined" != typeof yc[g].Password && 1 == e) return LP.getNoteValue("Password", f)
}
if (0 == e) return c.logins[0].unencryptedUsername;
if (1 == e) return O(c.logins[0].password, c, B)
}
return ""
}
function Lw(c, e) {
if (!c || !c.logins || 0 == c.logins.length) return !1;
if (c.save_all)
for (var f = 0; f < c.logins.length; f++) {
for (var d = c.logins[f], g = 0; g < d.otherfields.length; g++) {
var h = d.otherfields[g];
if (0 == e && ("text" == h.type || "email" == h.type || "tel" == h.type || "url" == h.type) && "" != h.value || 1 == e && "password" == h.type && "" != h.value) return !0
}
for (g = 0; g < d.fields.length; g++)
if (h = d.fields[g], 0 == e && ("text" == h.type || "email" == h.type || "tel" == h.type || "url" == h.type) && "" != h.value || 1 == e && "password" == h.type && "" != h.value) return !0
} else {
if (0 == e) return "" != c.logins[0].unencryptedUsername;
if (1 == e) return "" !=
c.logins[0].password
}
return !1
}
function Qn(c, e) {
var f = 0,
d = T["@mozilla.org/passwordmanager;1"],
g, h;
d ? d = d.getService(ca.nsIPasswordManager) : (g = T["@mozilla.org/login-manager;1"].getService(ca.nsILoginManager), h = new Components.Constructor("@mozilla.org/login-manager/loginInfo;1", ca.nsILoginInfo, "init"));
for (var l in z)
if ("http://group" != z[l].url) {
var n = z[l];
if (!(null != n.sharedfromaid && "" != n.sharedfromaid && "0" != n.sharedfromaid)) {
var p = null;
0 < n.logins.length && (p = n.logins[0]);
if (n.url.length && (e || c && n.url.match(/^chrome:/))) {
var q =
fb(n, 0),
r = fb(n, 1),
t = null,
A = n.url,
y = p.url;
n.url.match(/^chrome:/) && (p.uname = "", p.pname = "");
if (n = n.url.match(/^(.*) \(([^\)]+)\)/)) t = n[2], A = n[1], y = null;
if ("" != r) {
(n = A.match(/^(https?:\/\/[^\/]+)\//)) && (A = n[1]);
y && (n = y.match(/^(https?:\/\/[^\/]+)\//)) && (y = n[1]);
try {
d ? d.addUser(Wa.URLToUnicode(A), q, r) : g.addLogin(new h(Wa.URLToUnicode(A), Wa.URLToUnicode(y), t, q, r, p.uname, p.pname)), f++
} catch (J) {}
}
}
}
}
Bd("export");
LP.lpalert_ex(LP.lpgs("LastPass accounts exported to Firefox") + ": " + f)
}
function Zf(c) {
c.match(/,|\r|\n|"/) &&
(c = '"' + c.replace(/"/g, '""') + '"');
return c
}
function Mw(c) {
c && 4 == c.readyState && (200 == c.status && (0 < c.responseText.indexOf("OK") ? (LP.lpGetAccounts(), Pc(), Rn = !0, Sn || LP.lpConfirmYesNo(LP.lpgs("FFImportSuccessful")) && Sr(nl)) : LP.lpalert_ex(LP.lpgs("FFImportFailed"))), Sn && LP.welcome_accept_click(ec, $f))
}
function Sr(c) {
var e = T["@mozilla.org/passwordmanager;1"];
if (e) {
pm = e.getService(ca.nsIPasswordManager);
for (e = 0; e < c.length; e++) pm.removeUser(c[e].login.host, c[e].login.user)
} else
for (var f = T["@mozilla.org/login-manager;1"].getService(ca.nsILoginManager),
e = 0; e < c.length; e++) f.removeLogin(c[e].login)
}
function Tr(c) {
if (LP.is_application(c)) c = LP.get_appaid(c), delete qb[c], LP.deleteAppAidIdentity(c);
else {
var e = z[c],
f = !1,
d = !1;
null == e && (e = Ia[c], f = !0);
null == e && (e = bd[c], d = !0);
var g = e.tld;
"undefined" != typeof la[g] && "undefined" != typeof la[g][c] && delete la[g][c];
e.genpw && delete vf[c];
if ("undefined" != typeof gb[g] && (e = gb[g], "undefined" != typeof gb[e]))
for (g = 0; g < gb[e][g]; g++) {
var h = gb[e][g];
"undefined" != typeof la[h] && "undefined" != typeof la[h][c] && delete la[h][c]
}
f ?
delete Ia[c] : d || delete z[c];
tf--;
LP.deleteAidIdentity(c);
for (f = 0; f < $a.length; f++)
if ($a[f].id == c) {
$a.splice(f, 1);
break
}
}
}
function Tn(c) {
if (4 == c.readyState)
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
var e = c.responseXML.documentElement.getElementsByTagName("result");
if (0 < e.length && "delete" == e[0].getAttribute("action")) {
c = parseInt(e[0].getAttribute("accts_version"));
if (Ga || c == vb + 1) {
var f = e[0].getAttribute("aid"),
f = "" != f ? f.split(",") : [];
kc = vb = c;
var d = !0,
g = lc();
null == g &&
(d = !1);
for (var h = 0; h < f.length; h++)
if (LP.is_application(f[h]) || e[0].getAttribute("app")) {
if (d && !Qh(g, LP.get_appaid(f[h]), !0)) {
d = !1;
break
}
} else if (d && !nd(g, f[h], !0)) {
d = !1;
break
}
d && !Wd(g, c) && (d = !1);
d && !wc(g, null, "lpDeleteResponse") && (d = !1);
d ? Fb() : LP.lpGetAccounts()
} else LP.lpGetAccounts();
Pc()
} else e = "Problem in lpDeleteResponse. status=" + c.status, ga(e, null), Ua("ErrorDeleteAcctMsg")
} else e = "Problem in lpDeleteResponse. status=" + c.status, ga(e, null), Ua("ErrorDeleteAcctMsg")
}
function Un(c, e) {
try {
var f = !0;
Ur = e;
var d = c.getElementById("nav-bar");
if (d) {
var g = me(c, !0);
if (g && g.parentNode == d && !e) g.style.display = "none";
else if (g && g.parentNode == d && e) g.style.display = "";
else if (!g && e && "undefined" != typeof d.insertItem) {
d.insertItem("lpt_lastpass-compact-btn", null, null, !1);
var h = d.currentSet;
"string" == typeof h && "" != h && "lpt_lastpass-compact-btn" != h && -1 != h.indexOf("lpt_lastpass-compact-btn") ? (d.setAttribute("currentset", h), c.persist("nav-bar", "currentset")) : f = !1
}
}
try {
LP.isFennecXUL && (c.getElementById("lpt_fennec-bar-login").height =
sb, c.getElementById("lpt_lpidentitiesmenu4").height = sb, ya(c, "lpt_lastpasshome1").height = sb, c.getElementById("lpt_fennec-securenotes").height = sb, c.getElementById("lpt_fennec-applications").height = sb, c.getElementById("lpt_lpfillformsmenu6").height = sb);
g = "sxipper onepass keepass clipperz ewallet fireform pwcoral passworddragon hppwsafe passwordsmax pins splashid sticky darnpasswords dashlane lastpass mypwsafe passpack pwsafe roboform turbopasswords passkeep csv msi pwagent".split(" ");
LP.sr(c, "lpt_viewSidebar",
"label", "LastPass Sites");
LP.sr(c, "lpt_viewSidebar", "sidebartitle", "LastPass Sites");
var l = me(c);
l && (l.setAttribute("label", LP.lpgs("LastPass")), l.setAttribute("tooltiptext", LP.lpgs("LastPass")));
LP.sr(c, "lpt_comp-bar-login", "label", "Login");
LP.sr(c, "lpt_lpidentitiesmenu1", "label", "Identities");
LP.sr(c, "lpt_lastpasshome", "label", "My LastPass Vault");
LP.sr(c, "lpt_lastpasshome1", "label", "My LastPass Vault");
LP.sr(c, "lpt_lastpasshome", "hidden", ie);
LP.sr(c, "lpt_comp-bar-showmatchingsites", "label", "Show Matching Sites");
LP.sr(c, "lpt_comp-bar-recentlyused", "label", "Recently Used");
LP.sr(c, "lpt_non-comp-bar-recentlyused", "label", "Recently Used");
var n = 0 == LP.get_recentUsedCount();
LP.sr(c, "lpt_comp-bar-recentlyused", "hidden", n);
LP.sr(c, "lpt_non-comp-bar-recentlyused", "hidden", n);
LP.sr(c, "lpt_comp-bar-accts", "label", "Sites");
LP.sr(c, "lpt_compbaritem", "label", "Retrieving Sites...");
LP.sr(c, "lpt_compbaritem2", "label", "Retrieving Sites...");
LP.sr(c, "lpt_comp-bar-accts2", "label", "Sites");
LP.sr(c, "lpt_comp-bar-securenotes",
"label", "SecureNotes");
LP.sr(c, "lpt_comp-bar-applications", "label", "Applications");
LP.sr(c, "lpt_fennec-securenotes", "label", "SecureNotes");
LP.sr(c, "lpt_fennec-applications", "label", "Applications");
LP.sr(c, "lpt_comp-bar-securenotes", "hidden", Yd);
LP.sr(c, "lpt_comp-bar-fav", "label", "OpenFavorites");
LP.sr(c, "lpt_lpfillformsmenu1", "label", "Form Fills");
LP.sr(c, "lpt_lppreferences", "label", "Preferences");
LP.sr(c, "lpt_lphelp", "label", "Help...");
LP.sr(c, "lpt_comp-bar-tools", "label", "Tools");
LP.sr(c, "lpt_comp-bar-advanced-tools",
"label", "Advanced Tools");
LP.sr(c, "lpt_lpgenpw", "label", "Generate Secure Password");
LP.sr(c, "lpt_lpsearch", "label", "Site Search");
LP.sr(c, "lpt_lpsearch", "hidden", LP.getcontrol("hidesitesearch"));
LP.sr(c, "lpt_lprecheck", "label", "Recheck Page");
LP.sr(c, "lpt_lprefresh", "label", "RefreshAccounts");
LP.sr(c, "lpt_lprefresh", "hidden", Ga);
LP.sr(c, "lpt_comp-bar-fav", "hidden", LP.getcontrol("hideopenfavorites"));
ag && LP.sr(c, "lpt_lpimportfrom", "hidden", ag);
LP.sr(c, "lpt_lpimportfrom", "label", "Import From");
LP.sr(c,
"lpt_lpimportff", "label", "Firefox Password Manager");
LP.sr(c, "lpt_lpimportwl", "hidden", Oc || Dd || LP.getcontrol("hidewlanimport") || !LP.lpis_win && !LP.lpis_mac ? !0 : !1);
LP.sr(c, "lpt_lpimportwl", "label", "Wi-Fi Passwords");
LP.sr(c, "lpt_lpimportsxipper", "label", "Sxipper");
LP.sr(c, "lpt_lpimportonepass", "label", "1Password");
LP.sr(c, "lpt_lpimportkeepass", "label", "KeePass");
LP.sr(c, "lpt_lpimportclipperz", "label", "Clipperz");
LP.sr(c, "lpt_lpimportewallet", "label", "eWallet");
LP.sr(c, "lpt_lpimportfireform", "label",
"FireForm");
LP.sr(c, "lpt_lpimportpwcoral", "label", "Password Corral");
LP.sr(c, "lpt_lpimportpassworddragon", "label", "Password Dragon");
LP.sr(c, "lpt_lpimporthppwsafe", "label", "HP Password Safe");
LP.sr(c, "lpt_lpimportpasswordsmax", "label", "Passwords Max");
LP.sr(c, "lpt_lpimportpins", "label", "PINs Password Manager");
LP.sr(c, "lpt_lpimportsplashid", "label", "SplashID");
LP.sr(c, "lpt_lpimportsticky", "label", "Sticky Password");
LP.sr(c, "lpt_lpimportdarnpasswords", "label", "Darn! Passwords!");
LP.sr(c, "lpt_lpimportdashlane",
"label", "Dashlane");
LP.sr(c, "lpt_lpimportlastpass", "label", "LastPass");
LP.sr(c, "lpt_lpimportmypwsafe", "label", "MyPasswordSafe");
LP.sr(c, "lpt_lpimportpasspack", "label", "PassPack");
LP.sr(c, "lpt_lpimportpwsafe", "label", "Password Safe");
LP.sr(c, "lpt_lpimportroboform", "label", "RoboForm");
LP.sr(c, "lpt_lpimportturbopasswords", "label", "TurboPasswords");
LP.sr(c, "lpt_lpimportpasskeep", "label", "Password Keeper");
LP.sr(c, "lpt_lpimportcsv", "label", "Generic CSV File");
LP.sr(c, "lpt_lpimportmsi", "label", "MSI PasswordKeeper");
LP.sr(c, "lpt_lpimportpwagent", "label", "Password Agent");
if (Ga)
for (var p = 0; p < g.length; p++) LP.sr(c, "lpt_lpimport" + g[p], "hidden", !0);
for (p = 1; ya(c, "lpt_lpimport" + p); p++) LP.sr(c, "lpt_lpimport" + p, "label", "Import"), LP.sr(c, "lpt_lpinstructions" + p, "label", "Instructions");
bg && LP.sr(c, "lpt_lpexportto", "hidden", bg);
LP.sr(c, "lpt_lpexportto", "label", "Export To");
LP.sr(c, "lpt_lpexportcsv", "label", "LastPass CSV File");
LP.sr(c, "lpt_lpexportff", "label", "Firefox");
LP.sr(c, "lpt_lpexportenc", "label", "LastPass Encrypted File");
LP.sr(c, "lpt_lpexportwl", "hidden", Oc || Dd || LP.getcontrol("hidewlanexport") || !LP.lpis_win ? !0 : !1);
LP.sr(c, "lpt_lpexportwl", "label", "Wi-Fi Passwords");
LP.sr(c, "lpt_lpexportformfill", "label", "Form Fill Profiles");
bh && LP.sr(c, "lpt_lpprint", "hidden", bh);
LP.sr(c, "lpt_lpprint", "label", "Print");
LP.sr(c, "lpt_lpprintaccounts", "label", "Sites");
LP.sr(c, "lpt_lpprintsn", "label", "SecureNotes");
LP.sr(c, "lpt_lpprintsn", "hidden", Yd);
LP.sr(c, "lpt_lpabout", "label", "About...");
LP.sr(c, "lpt_lpabout", "hidden", LP.getcontrol("hideabout"));
LP.sr(c, "lpt_lpseccheck", "label", "Security Check");
LP.sr(c, "lpt_lpseccheck", "hidden", Ga || LP.getcontrol("hideseccheck"));
LP.sr(c, "lpt_lpothersessions", "label", "Other Sessions");
LP.sr(c, "lpt_lpothersessions", "hidden", Ga || LP.getcontrol("hideothersessions"));
LP.sr(c, "lpt_lpmyaccount", "label", "My Account");
LP.sr(c, "lpt_lpmyaccount", "hidden", Ga || LP.getcontrol("hidemyaccount"));
LP.sr(c, "lpt_lpclearcache1", "label", "Clear Local Cache");
LP.sr(c, "lpt_lpclearcache1", "hidden", Ga || LP.getcontrol("hideclearcache"));
LP.sr(c, "lpt_lpclearcache2", "label", "Clear Local Cache");
LP.sr(c, "lpt_lpclearcache2", "hidden", Ga || LP.getcontrol("hideclearcache"));
LP.sr(c, "lpt_lpedit", "label", "Edit");
LP.sr(c, "lpt_lpdelete", "label", "Delete");
LP.sr(c, "lpt_lpgotourl", "label", "Go to URL");
LP.sr(c, "lpt_lpcopyun", "label", "Copy Username");
LP.sr(c, "lpt_lpcopypw", "label", "Copy Password");
LP.sr(c, "lpt_lpcopyurl", "label", "Copy URL");
LP.sr(c, "lpt_lastpass-toolbar", "toolbarname", "LastPassToolbar");
LP.sr(c, "lpt_lastpass-login", "label", "Login");
LP.sr(c, "lpt_lastpass-com", "label", "My LastPass Vault");
LP.sr(c, "lpt_lastpass-com", "hidden", ie);
LP.sr(c, "lpt_lastpass-com-sep", "hidden", ie);
LP.sr(c, "lpt_lastpass-accts-btn", "label", "Sites");
LP.sr(c, "lpt_lastpassitem", "label", "Retrieving Sites...");
LP.sr(c, "lpt_lastpass-securenotes-btn", "label", "SecureNotes");
LP.sr(c, "lpt_lastpass-securenotes-btn", "hidden", Yd);
LP.sr(c, "lpt_lastpass-securenotes-sep", "hidden", Yd);
LP.sr(c, "lpt_lastpassitem2", "label", "Retrieving Sites...");
LP.sr(c, "lpt_lastpass-fav", "label",
"OpenFavorites");
LP.sr(c, "lpt_lpfillformsmenu2", "label", "Fill Forms");
LP.sr(c, "lpt_lpfillformsmenu6", "label", "Fill Forms");
LP.sr(c, "lpt_search-btn", "label", "Search");
LP.sr(c, "lpt_tools-btn", "label", "Tools");
LP.sr(c, "lpt_lpidentitiesmenu2", "label", "Identities");
LP.sr(c, "lpt_prefs-btn", "label", "Preferences");
LP.sr(c, "lpt_lpncgenpw", "label", "Generate Secure Password");
LP.sr(c, "lpt_lpncrecheck", "label", "Recheck Page");
LP.sr(c, "lpt_lpncrefresh", "label", "RefreshAccounts");
LP.sr(c, "lpt_lpncrefresh", "hidden",
Ga);
LP.sr(c, "lpt_lastpass-fav", "hidden", LP.getcontrol("hideopenfavorites"));
ag && LP.sr(c, "lpt_lpncimportfrom", "hidden", ag);
LP.sr(c, "lpt_lpncimportfrom", "label", "Import From");
LP.sr(c, "lpt_lpncimportff", "label", "Firefox Password Manager");
LP.sr(c, "lpt_lpncimportwl", "hidden", Oc || Dd || LP.getcontrol("hidewlanimport") || !LP.lpis_win && !LP.lpis_mac ? !0 : !1);
LP.sr(c, "lpt_lpncimportwl", "label", "Wi-Fi Passwords");
LP.sr(c, "lpt_lpncimportsxipper", "label", "Sxipper");
LP.sr(c, "lpt_lpncimportonepass", "label", "1Password");
LP.sr(c, "lpt_lpncimportkeepass", "label", "KeePass");
LP.sr(c, "lpt_lpncimportclipperz", "label", "Clipperz");
LP.sr(c, "lpt_lpncimportewallet", "label", "eWallet");
LP.sr(c, "lpt_lpncimportfireform", "label", "FireForm");
LP.sr(c, "lpt_lpncimportpwcoral", "label", "Password Corral");
LP.sr(c, "lpt_lpncimportpassworddragon", "label", "Password Dragon");
LP.sr(c, "lpt_lpncimporthppwsafe", "label", "HP Password Safe");
LP.sr(c, "lpt_lpncimportpasswordsmax", "label", "Passwords Max");
LP.sr(c, "lpt_lpncimportpins", "label", "PINs Password Manager");
LP.sr(c, "lpt_lpncimportsplashid", "label", "SplashID");
LP.sr(c, "lpt_lpncimportsticky", "label", "Sticky Password");
LP.sr(c, "lpt_lpncimportdarnpasswords", "label", "Darn! Passwords!");
LP.sr(c, "lpt_lpncimportdashlane", "label", "Dashlane");
LP.sr(c, "lpt_lpncimportlastpass", "label", "LastPass");
LP.sr(c, "lpt_lpncimportmypwsafe", "label", "MyPasswordSafe");
LP.sr(c, "lpt_lpncimportpasspack", "label", "PassPack");
LP.sr(c, "lpt_lpncimportpwsafe", "label", "Password Safe");
LP.sr(c, "lpt_lpncimportroboform", "label", "RoboForm");
LP.sr(c, "lpt_lpncimportturbopasswords", "label", "TurboPasswords");
LP.sr(c, "lpt_lpncimportpasskeep", "label", "Password Keeper");
LP.sr(c, "lpt_lpncimportcsv", "label", "Generic CSV File");
LP.sr(c, "lpt_lpncimportmsi", "label", "MSI PasswordKeeper");
for (p = 1; c.getElementById("lpt_lpncimport" + p); p++) LP.sr(c, "lpt_lpncimport" + p, "label", "Import"), LP.sr(c, "lpt_lpncinstructions" + p, "label", "Instructions");
LP.sr(c, "lpt_lpncimportpwagent", "label", "Password Agent");
if (Ga)
for (p = 0; p < g.length; p++) LP.sr(c, "lpt_lpncimport" +
g[p], "hidden", !0);
bg && LP.sr(c, "lpt_lpncexportto", "hidden", bg);
LP.sr(c, "lpt_lpncexportto", "label", "Export To");
LP.sr(c, "lpt_lpncexportcsv", "label", "LastPass CSV File");
LP.sr(c, "lpt_lpncexportff", "label", "Firefox");
LP.sr(c, "lpt_lpncexportenc", "label", "LastPass Encrypted File");
LP.sr(c, "lpt_lpncexportwl", "hidden", Oc || Dd || LP.getcontrol("hidewlanexport") || !LP.lpis_win ? !0 : !1);
LP.sr(c, "lpt_lpncexportwl", "label", "Wi-Fi Passwords");
LP.sr(c, "lpt_lpncexportformfill", "label", "Form Fill Profiles");
bh && LP.sr(c,
"lpt_lpncprint", "hidden", bh);
LP.sr(c, "lpt_lpncprint", "label", "Print");
LP.sr(c, "lpt_lpncprintaccounts", "label", "Sites");
LP.sr(c, "lpt_lpncprintsn", "label", "SecureNotes");
LP.sr(c, "lpt_lpncprintsn", "hidden", Yd);
LP.sr(c, "lpt_lpnchelp", "label", "Help...");
LP.sr(c, "lpt_lpncabout", "label", "About...");
LP.sr(c, "lpt_lpncseccheck", "label", "Security Check");
LP.sr(c, "lpt_lpncseccheck", "hidden", Ga);
LP.sr(c, "lpt_lpncothersessions", "label", "Other Sessions");
LP.sr(c, "lpt_lpncothersessions", "hidden", Ga || LP.getcontrol("hideothersessions"));
LP.sr(c, "lpt_restart-btn", "label", "Restart Firefox");
LP.sr(c, "lpt_admin-tools-btn", "label", "Admin Tools");
LP.sr(c, "lpt_admin-tools-compact", "label", "Admin Tools");
LP.sr(c, "lpt_upload-btn", "label", "Upload Forms");
LP.sr(c, "lpt_upload-btn2", "label", "Upload Forms");
LP.sr(c, "lpt_uploadall-btn", "label", "Upload All Forms");
LP.sr(c, "lpt_uploadall-btn2", "label", "Upload All Forms");
LP.sr(c, "lpt_debug-btn", "label", "EnableDebug");
LP.sr(c, "lpt_debug-btn2", "label", "EnableDebug");
LP.sr(c, "lpt_adminpage-btn", "label",
"Admin Page");
LP.sr(c, "lpt_adminpage-btn2", "label", "Admin Page");
LP.sr(c, "lpt_testxpcom-btn", "label", "Test XPCOM");
LP.sr(c, "lpt_testxpcom-btn2", "label", "Test XPCOM");
LP.sr(c, "lpt_lpcontentareacontextmenu", "label", "LastPass");
LP.sr(c, "lpt_lpcontextgenpw", "label", "Generate Secure Password");
LP.sr(c, "lpt_lpcontextrecheck", "label", "Recheck Page");
LP.sr(c, "lpt_lpcopyusernamemenu", "label", "Copy Username");
LP.sr(c, "lpt_lpcopypasswordmenu", "label", "Copy Password");
LP.sr(c, "lpt_lpcopyurlmenu", "label", "Copy URL");
LP.sr(c, "lpt_lpautofillmenu", "label", "AutoFill");
LP.sr(c, "lpt_lpfillformsmenu4", "label", "LastPass Fill Forms");
LP.sr(c, "lpt_lplogintolastpass", "label", "Login to LastPass");
3 > LP.lp_getFFVersionFloat() ? LP.sr(c, "lpt_menu_search_box", "hidden", !0) : LP.sr(c, "lpt_menu_search_box", "placeholder", "Search LastPass Vault")
} catch (q) {
ga("set_toolbar_text: " + q + " ln: " + q.lineNumber)
}
var r = c.getElementById("lpt_lastpass-toolbar");
if (r) {
if (LP.is_palemoon(c) && d) {
var t = c.getElementById("navigator-toolbox"),
A = c.getElementById("lpt_site-context-menu");
t && d.parentNode == t && (r.parentNode == t && A.parentNode == t) && (t.removeChild(A), t.removeChild(r), e ? (t.insertBefore(A, d), t.insertBefore(r, d)) : (t.appendChild(A), t.appendChild(r)))
}
r.hidden = e
}
var y = c.getElementById("lpt_lp-statusbarpanel");
y && (y.hidden = Nw || e);
P && (LP.lp_handle_buttons("in", c), LP.lpDisplayAccounts_win(c));
Vn(c);
Vr(c);
if (!LP.lpprefsHasUserValue("toolbarinitdone", !1) || LP.lpprefsGetBoolPref("toolbarinitdone", !1) != f || !LP.lpprefsHasUserValue("toolbarinitversion", !1) || 3 != LP.lpprefsGetIntPref("toolbarinitversion", !1)) LP.lpprefsSetBoolPref("toolbarinitdone", f, !1), f && LP.lpprefsSetIntPref("toolbarinitversion", 3, !1), LP.flush_prefs()
} catch (J) {
ga("lpChangeToolbarMode_win: " + J + " ln: " + J.lineNumber)
}
}
function lf() {
var c = Yh;
c != Ur && LP.lpUpdateAllToolbars(c)
}
function Tf(c, e) {
if (e && !LP.lpis_win || 0 == c.length || Vf()) return c;
if (ma() && "function" == typeof Z.protect_data) {
var f = Z.protect_data(c);
if (null != f && ("" != f || "" == c)) return f
}
return c
}
function Ih(c, e) {
if (e && !LP.lpis_win || c.match(/=[^=]/) || 0 == c.length || Vf()) return c;
if (ma() &&
"function" == typeof Z.unprotect_data) {
var f = Z.unprotect_data(c);
if (null != f && ("" != f || "" == c)) return f
}
return c
}
function ol(c, e) {
var f = T["@mozilla.org/embedcomp/prompt-service;1"].getService(ca.nsIPromptService);
e || (e = LP.lpGetCurrentWindow());
return 0 == f.confirmEx(e, LP.lpgs("LastPass FF Toolbar"), c, f.STD_YES_NO_BUTTONS, null, null, null, null, {
value: !1
})
}
function Cb(c, e) {
var f = T["@mozilla.org/embedcomp/prompt-service;1"].getService(ca.nsIPromptService),
d = "";
"undefined" != typeof LP && "undefined" != typeof LP.lpformalname &&
(e || (e = LP.lpGetCurrentWindow()), d = LP.lpformalname);
f.alert(e, d, c)
}
function Wr(c) {
if ("" == c || null == c) return "";
var e = T["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(ca.nsIScriptableUnicodeConverter);
e.charset = "UTF-8";
var f = T["@mozilla.org/security/hash;1"].createInstance(ca.nsICryptoHash);
c = e.convertToByteArray(c, {});
f.init(f.MD5);
f.update(c, c.length);
return f.finish(!0)
}
function Fa(c) {
if ("" == c || null == c) return "";
var e = T["@mozilla.org/intl/scriptableunicodeconverter"].createInstance(ca.nsIScriptableUnicodeConverter);
e.charset = "UTF-8";
var f = T["@mozilla.org/security/hash;1"].createInstance(ca.nsICryptoHash);
c = e.convertToByteArray(c, {});
f.init(f.SHA256);
f.update(c, c.length);
f = f.finish(!1);
e = "";
for (c = 0; c < f.length; c++) {
var d;
d = ("0" + f.charCodeAt(c).toString(16)).slice(-2);
e += d
}
return e
}
function rb(c) {
return "" == c || null == c ? "" : Xa.bin2hex(c)
}
function Zb(c) {
return "" == c || null == c ? "" : Xa.hex2bin(c)
}
function Kb(c) {
return "" == c || null == c ? "" : Xa.hex2url(c)
}
function ac(c) {
return "" == c || null == c ? "" : Xa.url2hex(c)
}
function Pd(c, e, f) {
return "function" !=
typeof LP.getBrowser().getNotificationBox ? !1 : (c = LP.getBrowser().getNotificationBox(c).currentNotification) && "undefined" != typeof c.choices && c.choices == e && (f || "undefined" == typeof c.lpoldnotification) ? !0 : !1
}
function Zh() {
for (var c = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); c.hasMoreElements();) {
var e = c.getNext();
Vn(e.document)
}
}
function Vn(c, e) {
for (var f = LP.lpprefsHasUserValue("defaultffid") ? LP.lpprefsGetCharPref("defaultffid") : "0", d = 1; 6 >= d; d++) {
var g =
"lpt_lpfillformsmenu" + d;
if (g = ya(c, g))
if (P ? (g.disabled = !1, g.setAttribute("disabled", "false")) : (g.disabled = !0, g.setAttribute("disabled", "true")), g = "lpt_lpfillformspopup" + d, g = ya(c, g)) {
for (var h = g.childNodes.length - 1; 0 <= h; h--) g.removeChild(g.childNodes.item(h));
for (var l = !1, n = !1, h = 0; h < ka.length; h++) {
0 == ka[h].profiletype && (l = !0);
"" != ka[h].ccnum && (n = !0);
if (LP.isFennec) {
var p = c.createElement("menuitem");
p.height = sb;
p.setAttribute("label", ka[h].profilename);
(function(c) {
p.addEventListener("command", function() {
LP.lp_fillFormsHelper(c)
})
})(ka[h].ffid);
f == ka[h].ffid && p.setAttribute("key", "lpt_key_lpdefaultffid")
} else {
p = c.createElement("menu");
p.setAttribute("label", ka[h].profilename);
p.setAttribute("class", "");
var q = c.createElement("menupopup");
q.setAttribute("ignorekeys", !1);
if ("undefined" == typeof e || 1 != e) {
var r = c.createElement("menuitem");
r.setAttribute("label", LP.lpgs("FillForm"));
(function(c) {
r.addEventListener("command", function() {
LP.lp_fillFormsHelper(c)
})
})(ka[h].ffid);
f == ka[h].ffid && r.setAttribute("key", "lpt_key_lpdefaultffid");
q.appendChild(r)
}
var t =
c.createElement("menuitem");
t.setAttribute("label", LP.lpgs("Edit"));
(function(c) {
t.addEventListener("command", function() {
LP.lpEditFormFillProfile(c)
})
})(ka[h].ffid);
q.appendChild(t);
var A = c.createElement("menuitem");
A.setAttribute("label", LP.lpgs("Copy"));
(function(c) {
A.addEventListener("command", function() {
LP.lpCopyFormFillProfile(c)
})
})(ka[h].ffid);
q.appendChild(A);
var y = c.createElement("menuitem");
y.setAttribute("label", LP.lpgs("Delete"));
y.setAttribute("oncommand", "setTimeout('LP.lpDeleteFormFillProfile(" +
ka[h].ffid + ");', 0);");
q.appendChild(y);
p.appendChild(q)
}
g.appendChild(p)
}
0 < ka.length && (p = c.createElement("menuseparator"), g.appendChild(p));
LP.isFennec || (q = c.createElement("menuitem"), q.setAttribute("label", LP.lpgs("AddProfile")), q.addEventListener("command", function() {
LP.lpEditFormFillProfile(0)
}, !1), q.setAttribute("class", ""), g.appendChild(q), t = c.createElement("menuitem"), t.setAttribute("label", LP.lpgs("Add Credit Card")), t.addEventListener("command", function() {
LP.lpEditFormFillProfile(0, !1, 1)
}, !1), t.setAttribute("class", ""), g.appendChild(t));
if ("undefined" == typeof e || 1 != e) r = c.createElement("menuitem"), LP.isFennec && (r.height = sb), r.setAttribute("label", LP.lpgs("Clear Forms")), r.addEventListener("command", function() {
LP.lpClearFormsHelper()
}, !1), g.appendChild(r), l && n && (A = c.createElement("menuitem"), LP.isFennec && (A.height = sb), A.setAttribute("label", LP.lpgs("Choose Profile and Credit Card")), A.addEventListener("command", function() {
LP.choose_profile_and_credit_card()
}, !1), g.appendChild(A))
}
}
}
function pl() {
for (var c = T["@mozilla.org/appshell/window-mediator;1"].getService(ca.nsIWindowMediator).getEnumerator(""); c.hasMoreElements();) {
var e = c.getNext();
Vr(e.document)
}
}
function Vr(c) {
LP.GetIdentity();
for (var e = 1; 4 >= e; e++) {
var f = "lpt_lpidentitiesmenu" + e,
d = ya(c, f);
if (d && (LP.sr(c, f, "hidden", $h), !$h && (P ? (d.disabled = !1, d.setAttribute("disabled", "false"), d.setAttribute("label", LP.lpgs("Identities") + " (" + LP.GetIdentity(!0) + ")")) : (d.disabled = !0, d.setAttribute("disabled", "true"), d.setAttribute("label",
LP.lpgs("Identities"))), f = "lpt_lpidentitiespopup" + e, f = ya(c, f)))) {
for (var g = f.childNodes.length - 1; 0 <= g; g--) f.removeChild(f.childNodes.item(g));
var d = "",
h = !1;
LP.lpprefsHasUserValue("identity") && (d = LP.lpprefsGetCharPref("identity"));
for (g = 0; g < Oa.length; g++) d == Oa[g].iid && (h = !0);
g = c.createElement("menuitem");
LP.isFennec && (g.height = sb);
g.setAttribute("label", LP.lpgs("All"));
g.addEventListener("command", function() {
LP.lpIdentityHelper("")
}, !1);
h || (g.setAttribute("checked", "true"), g.setAttribute("type", "checkbox"),
g.setAttribute("autocheck", "false"));
f.appendChild(g);
for (g = 0; g < Oa.length; g++) h = c.createElement("menuitem"), LP.isFennec && (h.height = sb), h.setAttribute("label", Oa[g].iname), h.setAttribute("oncommand", "LP.lpIdentityHelper(" + Oa[g].iid + ");"), d == Oa[g].iid && (h.setAttribute("checked", "true"), h.setAttribute("type", "checkbox"), h.setAttribute("autocheck", "false")), f.appendChild(h);
h = c.createElement("menuseparator");
f.appendChild(h);
d = c.createElement("menuitem");
LP.isFennec && (d.height = sb);
d.setAttribute("label",
LP.lpgs("AddIdentity"));
d.addEventListener("command", function() {
LP.lpIdentityHelper("add")
}, !1);
f.appendChild(d)
}
}
}
function Me(c, e, f) {
(e = f.getElementById(e)) && c.removeChild(e)
}
function Ne(c, e, f, d, g, h) {
if (d) {
h = h.createElement("key");
h.setAttribute("command", f);
h.setAttribute("id", e);
h.setAttribute("modifiers", g);
if (48 <= d && 122 >= d) h.setAttribute("key", String.fromCharCode(d));
else if ("undefined" != typeof LP.mostRecent().KeyEvent)
for (var l in LP.mostRecent().KeyEvent) LP.mostRecent().KeyEvent[l] == d && h.setAttribute("keycode",
l.replace("DOM_", ""));
c.appendChild(h)
}
}
function ch(c, e, f) {
if (!un(c, f, "lpFieldsResponse") && (4 == c.readyState && 200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) && (c = c.responseXML.documentElement.getElementsByTagName("result"), !(0 < c.length && (c = parseInt(c[0].getAttribute("accts_version")), Ga || c == vb)))) LP.lpGetAccounts(), Pc()
}
function Xr() {
He = {};
Yr++;
var c = !LP.lpprefsHasUserValue("searchNotes") || LP.lpprefsGetBoolPref("searchNotes") ? !0 : !1,
e = null,
f = ql(z, c);
for (e in f) He[e] = f[e];
f =
ql(Ia, c);
for (e in f) He[e] = f[e];
f = ql(qb, c);
for (e in f) He[e] = f[e];
f = ql(bd, !1);
for (e in f) He[e] = f[e]
}
function ql(c, e) {
var f = {}, d;
for (d in c) {
var g = c[d],
h = "id" + LP.get_record_id(g);
"undefined" != typeof g.group && (g.group = LP.fix_group_name(g.group));
if ("http://group" == g.url) "undefined" != typeof g.group && (f[h] = g.group.toLowerCase());
else {
var l;
l = [];
l.push(g.name);
l.push(g.group);
"http://group" != g.url && "http://sn" != g.url && l.push(g.url);
g.unencryptedUsername && l.push(g.unencryptedUsername);
LP.is_application(g) &&
(l.push(g.appname), l.push(fb(g, 0)));
if (e && "undefined" != typeof g.extra && 0 < g.extra.length && ("undefined" == typeof g.url || "http://group" != g.url)) g = O(g.extra, g, B), "" != g && l.push(g);
l = l.join(" ");
l = l.toLowerCase();
f[h] = l
}
}
return f
}
function rl(c, e) {
for (var f = 1, d = "id" + c, g = 0; g < e.length; g++)
if (!(He[d] && -1 != He[d].indexOf(e[g]))) {
f = 0;
break
}
return f
}
function wj(c, e) {
c = c.toLowerCase();
Zr++;
(null == He || 0 == He.length) && Xr();
var f, d = c;
f = [];
if (d)
if (-1 == d.indexOf('"')) f = d.split(/\s+/);
else
for (var g = [], g = d.split('"'), d =
0; d < g.length; d++)
if (d % 2) f.push(g[d]);
else
for (var h = [], h = g[d].split(/\s+/), l = 0; l < h.length; l++) h[l] = h[l].replace(/^\s+/, ""), h[l] = h[l].replace(/\s+$/, ""), 0 < h[l].length && f.push(h[l]);
!LP.lpprefsHasUserValue("searchNotes") || LP.lpprefsGetBoolPref("searchNotes");
var g = [],
n;
for (n in z)
if (d = z[n], e || "http://group" != d.url) d.isbookmark || rl(LP.get_record_id(d), f) && (g[g.length] = d);
for (n in Ia) d = Ia[n], rl(LP.get_record_id(d), f) && (g[g.length] = d);
for (n in bd) d = bd[n], rl(LP.get_record_id(d), f) && (g[g.length] = d);
for (n in qb) d =
qb[n], rl(LP.get_record_id(d), f) && (g[g.length] = d);
return g
}
function sl(c, e, f, d, g) {
if ("undefined" == typeof g || "" == g) g = e;
var h = e.match(/^(.*)\\(.*)$/);
if (h) {
var l = h[1];
"" == l && (l = LP.get_null_group());
g = "_" + l;
"undefined" == typeof d.c[g] && (l = sl(c, l, f, d), d.c[g] = l[0], d.i[g] = l[1]);
l = sl(c, h[2], f, d, e);
e = null;
for (f = 0; f < d.c[g].childNodes.length; f++)
if (c = d.c[g].childNodes[f], "true" != c.getAttribute("container")) {
e = c;
break
} else if (h[2].toLowerCase() < c.getAttribute("group").toLowerCase()) {
e = c;
break
}
e ? d.c[g].insertBefore(l[1],
e) : d.c[g].appendChild(l[1]);
return l
}
d = c.createElement("treeitem");
d.setAttribute("container", "true");
d.setAttribute("group", e);
d.setAttribute("orig_group", g);
d.setAttribute("isgroup", !0);
l = c.createElement("treerow");
l.setAttribute("allowevents", "true");
l.setAttribute("crop", "end");
h = c.createElement("treecell");
h.setAttribute("label", LP.fix_group_name(e));
h.setAttribute("properties", "group");
l.appendChild(h);
d.appendChild(l);
c = c.createElement("treechildren");
d.appendChild(c);
"undefined" != typeof f[e] &&
f[e] ? d.setAttribute("open", "false") : d.setAttribute("open", "true");
h.setAttribute("src", LP.get_folder_image(g));
return [c, d]
}
function hl(c) {
if (31536E3 > c) return LP.lpgs("Never");
c = Ab() - c;
if (0 > c) return LP.lpgs("just now");
if (60 > c) return c + " " + (1 == c ? LP.lpgs("second") : LP.lpgs("seconds")) + " " + LP.lpgs("ago");
if (3600 > c) return c = Math.floor(c / 60), c + " " + (1 == c ? LP.lpgs("minute") : LP.lpgs("minutes")) + " " + LP.lpgs("ago");
if (86400 > c) return c = Math.floor(c / 60 / 60), c + " " + (1 == c ? LP.lpgs("hour") : LP.lpgs("hours")) + " " + LP.lpgs("ago");
if (604800 > c) return c = Math.floor(c / 60 / 60 / 24), c + " " + (1 == c ? LP.lpgs("day") : LP.lpgs("days")) + " " + LP.lpgs("ago");
if (2678400 > c) return c = Math.floor(c / 60 / 60 / 24 / 7), c + " " + (1 == c ? LP.lpgs("week") : LP.lpgs("weeks")) + " " + LP.lpgs("ago");
if (31536E3 > c) return c = Math.floor(c / 60 / 60 / 24 / 31), c + " " + (1 == c ? LP.lpgs("month") : LP.lpgs("months")) + " " + LP.lpgs("ago");
c = Math.floor(c / 60 / 60 / 24 / 365);
return c + " " + (1 == c ? LP.lpgs("year") : LP.lpgs("years")) + " " + LP.lpgs("ago")
}
function lc(c, e, f, d) {
(new Date).getTime();
c = "undefined" == typeof c ?
ha : c;
e = "undefined" == typeof e ? !0 : e;
f = "undefined" == typeof f ? !0 : f;
try {
var g = c + (ma() ? "_lps.act.sxml" : "_lp.act.xml"),
h;
if ("undefined" == typeof d || !d) {
if (h = Jb(g)) h = Ih(h, !0);
else if (h = Jb(c + "_lps.act.xml")) {
var l = Tf(h, !0);
Rb(c + "_lps.act.sxml", l);
eb(c + "_lps.act.xml")
}
if (!h) return null;
var n = LP.get_key_iterations(Q),
p = h.substring(0, 20);
if (0 == p.indexOf("iterations=")) {
var q = /iterations=(\d*);/.exec(p);
if (1 < q.length && n == q[1]) h = h.substring(h.indexOf(";") + 1);
else return null
} else if (1 != n) return null;
if (!e) return h;
ma() && (h = Pn(h));
if (h && "" != h) {
c = null;
if (pc("password_offline") && "" != pc("password_offline") && 0 == h.substring(0, 30).indexOf("type=sesameoffline\ndata=")) h = h.substring(24), c = pc("password_offline");
else if (cc("password_offline") && "" != cc("password_offline") && (0 == h.substring(0, 30).indexOf("type=trueapioffline\ndata=") || 0 == h.substring(0, 30).indexOf("type=omnikeyoffline\ndata="))) h = h.substring(25), c = cc("password_offline");
else if (Pb("password_offline") && "" != Pb("password_offline") && 0 == h.substring(0, 30).indexOf("type=yubikeyoffline\ndata=")) h =
h.substring(25), c = Pb("password_offline");
else if (Pb("password_server") && "" != Pb("password_server") && Pb("password_keysline") && "" != Pb("password_keysline") && 0 == h.substring(0, 50).indexOf("type=yubikeyofflinemulti\nkeys=")) {
var r = h.indexOf("\n", 30);
0 < r && (h.substring(30, r), h = h.substring(r + 6), c = Pb("password_server"))
}
c && (h = Pn(h, Zb(c)));
h && "LPB64" == h.substring(0, 5) && (h = atob(h.substring(5)));
h && "<?xml" != h.substring(0, 5) && ("LPAV" != h.substring(0, 4) && "LPB64" != h.substring(0, 5)) && (h = '<?xml version="1.0" encoding="UTF-8"?>' +
h)
}
} else h = d; if (!f) return h;
if ("LPAV" == h.substring(0, 4)) {
var t = {
sites: [],
securenotes: [],
prompts: [],
formfills: [],
identities: [],
equivalentdomains: [],
neverurls: [],
pendings: [],
shareeautopushes: [],
maxid: [],
urlrules: [],
groups: [],
prefs: [],
lpshares: [],
lp_attaches: [],
applications: [],
attachversion: [],
pending_pushed_sites: []
};
se = dh = ai = 0;
Sb = ja;
Ub = rb(Sb);
La = Xa;
xj = RegExp(LP.lpgs("ff_captcha_regexp"), "i");
var A = Wn(h, h.length, -1, 0, Ow, t.sites, t.securenotes, t.prompts, t.formfills, t.identities, t.equivalentdomains, t.neverurls, !0, !0, null, t.pendings, t.shareeautopushes, t.maxid, t.urlrules, t.groups, t.prefs, eh, t.lpshares, null, null, null, t.applications, t.lp_attaches, t.attachversion, t.pending_pushed_sites);
Ub = Sb = "";
A ? (t.encrypted_username = A, t.accts_version = parseInt(dl(h)), t.premium_exp = ai, t.enterpriseuser = dh, t.trueapi_trial_exp = se) : t = null;
return t
}
return "<?xml" != h.substring(0, 5) ? null : (t = T["@mozilla.org/xmlextras/domparser;1"].createInstance(ca.nsIDOMParser).parseFromString(h, "text/xml")) ? t : null
} catch (y) {
return null
}
}
function Ow(c,
e, f, d, g, h, l, n, p, q, r, t, A, y, J, u, s, jd, ia) {
for (f = 0; f < c.length; f++) c[f].url = Zb(c[f].url);
for (f = 0; f < e.length; f++) e[f].url = Zb(e[f].url);
for (f = 0; f < ia.length; f++) ia[f].appname = Zb(ia[f].appname);
y.maxid > Zd && (Zd = y.maxid);
return n ? r : !1
}
function wc(c, e, f, d) {
(new Date).getTime();
try {
var g;
if ("object" == typeof c && "undefined" != typeof c.accts_version) {
Sb = ja;
Ub = rb(Sb);
La = Xa;
var h = c.accts_version,
l = c.sites,
n = c.securenotes,
p = c.prompts,
q = c.formfills,
r = c.identities,
t = c.equivalentdomains,
A = c.neverurls,
y = c.premium_exp,
J =
c.encrypted_username,
u = c.pendings,
s = c.shareeautopushes,
jd = Math.max(Zd, c.maxid.maxid),
ia = c.urlrules,
z = c.prefs,
F = c.lpshares,
B = c.applications,
C = c.enterpriseuser,
K = c.lp_attaches;
Lc = jd;
"number" != typeof Lc && (Lc = "undefined" != typeof Lc ? parseInt(Lc) : 0);
c = "";
c += "LPAV" + D(h);
y && 0 != y && (c += "PREM" + D(y));
se && 0 != se && (c += "TATE" + D(se));
yj && 0 != yj && (c += "WOTE" + D(yj));
Oe && 0 != Oe && (c += "FETE" + D(Oe));
"undefined" != typeof J && "" != J && (c += "ENCU" + D(J));
c += "CBCU" + D(uj ? "1" : "0");
C && 0 != C && (c += "ENTU" + D(C));
var C = {}, jd = 0,
h = [],
y = [],
J = [],
ea;
for (ea in l)
if (parseInt(ea) == ea) {
var ra = parseInt(l[ea].aid);
ra > Lc && (Lc = ra);
if ("undefined" != typeof l[ea].sharefolderid) {
var Y = l[ea].sharefolderid;
"undefined" == typeof h[Y] && (h[Y] = []);
h[Y].push(l[ea])
} else {
var v = "undefined" != typeof l[ea].group ? l[ea].group : "";
"" != v && ("undefined" == typeof C[v] && (C[v] = jd, ++jd), l[ea].groupid = C[v]);
c += Xn(l[ea])
}
}
for (ea in n) parseInt(ea) == ea && (ra = parseInt(n[ea].aid), ra > Lc && (Lc = ra), "undefined" != typeof n[ea].sharefolderid ? (Y = n[ea].sharefolderid, "undefined" == typeof h[Y] && (h[Y] = []), h[Y].push(n[ea])) : (v = "undefined" != typeof n[ea].group ? n[ea].group : "", "" != v && ("undefined" == typeof C[v] && (C[v] = jd, ++jd), n[ea].groupid = C[v]), c += Xn(n[ea])));
l = "";
l += D(p.login_site_prompt ? "1" : "0");
l += D(p.edit_site_prompt ? "1" : "0");
l += D(p.edit_sn_prompt ? "1" : "0");
l += D(p.view_pw_prompt ? "1" : "0");
l += D(p.view_ff_prompt ? "1" : "0");
l += D(p.improve ? "1" : "0");
l += D(p.switch_identity_prompt ? "1" : "0");
l += D(p.switch_f_prompt ? "1" : "0");
l += D(p.multifactor_reprompt ? "1" : "0");
l += D(p.company_login_site_prompt ? "1" : "0");
l += D(p.company_copyview_site_prompt ?
"1" : "0");
c += "SPMT" + D(l);
if (z) {
p = !1;
for (ea in z) {
p = !0;
break
}
p && (l = "", l += D(z.allowmasterpasswordsave), l += D(z.logoffclosebrowser), l += D(z.logoffidle), "undefined" == typeof z.noexport && (z.noexport = "0"), l += D(z.noexport), "undefined" == typeof z.logofflock && (z.logofflock = "0"), l += D(z.logofflock), "undefined" == typeof z.logoffscreen && (z.logoffscreen = "0"), l += D(z.logoffscreen), "undefined" == typeof z.logoffshutdown && (z.logoffshutdown = "0"), l += D(z.logoffshutdown), "undefined" == typeof z.sitepwlen && (z.sitepwlen = ""), l += D(z.sitepwlen),
"undefined" == typeof z.hideidentities && (z.hideidentities = "0"), l += D(z.hideidentities), "undefined" == typeof z.savesitestopersonal && (z.savesitestopersonal = ""), l += D(z.savesitestopersonal), c += "PREF" + D(l))
}
if (q) {
var E = q.length;
for (ea = 0; ea < E; ea++) {
var H = q[ea],
l = "",
O = parseInt(H.ffid);
O > Lc && (Lc = O);
"undefined" != typeof H.sharefolderid ? (Y = H.sharefolderid, "undefined" == typeof J[Y] && (J[Y] = []), J[Y].push(H)) : c += $r(H)
}
}
if (t)
for (var G in t)
if ("function" != typeof t[G] && !G.match(/^[0-9]+$/)) {
var M = t[G],
l = "",
l = l + D(M),
l = l +
D(La.url2hex(G));
c += "EQDN" + D(l)
}
if (r) {
E = r.length;
for (ea = 0; ea < E; ea++) {
var Q = r[ea],
l = "",
l = l + D(Q.iid),
l = l + D(Q.iname),
l = l + D(Q.aids),
l = l + D(Q.ffids),
l = l + D(("undefined" != typeof Q.pw_prompt ? Q.pw_prompt : "undefined" != typeof Q.pwprotect && Q.pwprotect) ? "1" : "0"),
l = l + D(Q.appaids);
c += "IDNT" + D(l)
}
}
if (u) {
var da = u.length;
for (ea = 0; ea < da; ea++) {
var Ma = u[ea],
l = "",
l = l + D(Ma.id),
l = l + D(Ma.fiid),
l = l + D(Ma.sharerusername),
l = l + D(Ma.sharedfromaid),
l = l + D(Ma.sharemessage),
l = l + D(Ma.sharekeyenchex),
l = l + D(Ma.sharekeyenchexsig),
l = l + D(Ma.sharename),
l = l + D(Ma.sharegroup),
l = l + D(Ma.username),
l = l + D(Ma.password),
l = l + D(Ma.extra),
l = l + D(Ma.shareautoaccept),
q = 0,
r = "",
w;
for (w in Ma.shareafids) q++, r += D(w), r += D(Ma.shareafids[w]);
l += D(q);
l += r;
c += "PNDG" + D(l)
}
}
try {
if (s)
for (ra in s) {
var L = s[ra][0],
l = "",
l = l + D(ra),
V;
for (V in L) "aid" != V && (l += D(V), l += D(L[V]));
c += "SHAP" + D(l)
}
} catch (Z) {}
if (A) {
for (ea = 0;
"undefined" != typeof A.neveraccounts && ea < A.neveraccounts.length; ea++) {
var W = D("0") + D(La.url2hex(A.neveraccounts[ea]));
c += "NEVR" + D(W)
}
for (ea = 0;
"undefined" != typeof A.nevergenerates &&
ea < A.nevergenerates.length; ea++) W = D("1") + D(La.url2hex(A.nevergenerates[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.neverformfills && ea < A.neverformfills.length; ea++) W = D("2") + D(La.url2hex(A.neverformfills[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.neverautologins && ea < A.neverautologins.length; ea++) W = D("3") + D(La.url2hex(A.neverautologins[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.nevershowicons && ea < A.nevershowicons.length; ea++) W = D("6") + D(La.url2hex(A.nevershowicons[ea])), c += "NEVR" +
D(W);
for (ea = 0;
"undefined" != typeof A.onlyaccounts && ea < A.onlyaccounts.length; ea++) W = D("10000") + D(La.url2hex(A.onlyaccounts[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.onlygenerates && ea < A.onlygenerates.length; ea++) W = D("10001") + D(La.url2hex(A.onlygenerates[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.onlyformfills && ea < A.onlyformfills.length; ea++) W = D("10002") + D(La.url2hex(A.onlyformfills[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.onlyautologins && ea < A.onlyautologins.length; ea++) W =
D("10003") + D(La.url2hex(A.onlyautologins[ea])), c += "NEVR" + D(W);
for (ea = 0;
"undefined" != typeof A.onlyshowicons && ea < A.onlyshowicons.length; ea++) W = D("10006") + D(La.url2hex(A.onlyshowicons[ea])), c += "NEVR" + D(W)
}
if (ia) {
var ga = ia.length;
for (ea = 0; ea < ga; ea++) {
var ka = ia[ea],
l = "",
l = l + D(La.url2hex(ka.url)),
l = l + D(ka.exacthost),
l = l + D(ka.exactport);
c += "URUL" + D(l)
}
}
if (B)
for (ea in B) parseInt(ea) == ea && ("undefined" != typeof B[ea].sharefolderid ? (Y = B[ea].sharefolderid, "undefined" == typeof y[Y] && (y[Y] = []), y[Y].push(B[ea])) :
c += as(B[ea]));
if (K)
for (ea in K) parseInt(ea) == ea && (l = "", l += D(K[ea].id), l += D(K[ea].parent), l += D(K[ea].mimetype), c += "ATTA" + D(l));
if (F && 0 < F.length) {
"string" == typeof cg && 0 < cg.length && (c += "PRIK" + D(cg));
for (ea = 0; ea < F.length; ea++) {
var ba = F[ea],
l = "",
l = l + D(ba.id),
l = l + D(ba.sharekey),
l = l + D(ba.sharename),
l = l + D(ba.readonly),
l = l + D(ba.give),
l = l + D("undefined" != typeof ba.sharekeyaes ? ba.sharekeyaes : ""),
l = l + D("undefined" != typeof ba.associative ? ba.associative : "0");
c += "SHAR" + D(l);
var ha = ba.key,
Y = ba.id;
for (w = 0;
"undefined" !=
typeof h[Y] && w < h[Y].length; w++) {
var U = h[Y][w].group;
h[Y][w].group = h[Y][w].group.substr(ba.decsharename.length + 1);
c += Xn(h[Y][w], ha);
h[Y][w].group = U
}
for (w = 0;
"undefined" != typeof y[Y] && w < y[Y].length; w++) U = y[Y][w].group, y[Y][w].group = y[Y][w].group.substr(ba.decsharename.length + 1), c += as(y[Y][w], ha), y[Y][w].group = U;
for (w = 0;
"undefined" != typeof J[Y] && w < J[Y].length; w++) c += $r(J[Y][w], ha)
}
}
c += "MXID" + D(Lc);
g = c + ("ENDM" + D("OK"));
Ub = Sb = ""
} else if (g = T["@mozilla.org/xmlextras/xmlserializer;1"].getService(ca.nsIDOMSerializer).serializeToString(c.documentElement), !g || "" == g) return !1;
return d ? g : Yn(g, e, f)
} catch (P) {
return !1
}
}
function Yn(c, e, f) {
if (!c || "" == c) return !1;
try {
"LPAV" == c.substring(0, 4) && ma() && (c = "LPB64" + btoa(c));
var d = null,
g = "";
pc("password_offline") && "" != pc("password_offline") ? (d = pc("password_offline"), 0 == c.substring(0, 38).indexOf('<?xml version="1.0" encoding="UTF-8"?>') && (c = c.substring(38)), g = "type=sesameoffline\ndata=") : cc("password_offline") && "" != cc("password_offline") ? (d = cc("password_offline"), 0 == c.substring(0, 38).indexOf('<?xml version="1.0" encoding="UTF-8"?>') &&
(c = c.substring(38)), g = "type=" + cc("type") + "offline\ndata=") : Pb("password_offline") && "" != Pb("password_offline") && (!Pb("password_keysline") || "" == Pb("password_keysline") || !Pb("password_server") || "" == Pb("password_server") ? (d = Pb("password_offline"), g = "type=yubikeyoffline\ndata=") : (d = Pb("password_server"), g = "type=yubikeyofflinemulti\nkeys=" + Pb("password_keysline") + "\ndata="), 0 == c.substring(0, 38).indexOf('<?xml version="1.0" encoding="UTF-8"?>') && (c = c.substring(38)));
if (d) {
c = da(c, Zb(d));
if (!c || "" == c) return !1;
c = g + c
}
d = null;
if (ma()) {
d = da(c);
if (!d || "" == d) return !1;
var h = LP.get_key_iterations(Q);
1 < h && (d = "iterations=" + h + ";" + d);
"lpOpenExport" != f && (d = Tf(d, !0));
Rb(ha + "_lps.act.sxml", d, e)
} else d = c, h = LP.get_key_iterations(Q), 1 < h && (d = "iterations=" + h + ";" + d), Rb(ha + "_lp.act.xml", d, e);
Ga && "ChangeMasterPassword" != f && LP.setTimeout(function() {
Gc("refresh_local", {
data0: ha
})
}, 1E3);
return !0
} catch (l) {
return !1
}
}
function Wd(c, e) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version) return c.accts_version = e, !0;
var f = c.getElementsByTagName("accounts");
return 0 < f.length ? (f[0].setAttribute("accts_version", e), !0) : !1
} catch (d) {
return !1
}
}
function Vg(c) {
try {
var e;
if ("object" == typeof c && "undefined" != typeof c.accts_version) e = c.accts_version;
else {
var f = c.getElementsByTagName("accounts");
if (0 < f.length) e = parseInt(f[0].getAttribute("accts_version"));
else return !1
}
kc = e + 1;
return Wd(c, e + 1)
} catch (d) {
return !1
}
}
function nd(c, e, f) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var d = 1; 2 >= d; d++)
for (var g = 1 == d ? c.sites : c.securenotes, h = 0; h < g.length; h++) {
if (g[h].aid ==
e) return g.splice(h, 1), f ? bs(c, e) : !0
} else {
h = c.getElementsByTagName("account");
for (d = 0; d < h.length; d++)
if (h[d].getAttribute("id") == e) {
var l = h[d].parentNode;
if (l) return l.removeChild(h[d]), f ? bs(c, e) : !0;
break
}
}
return !1
} catch (n) {
return !1
}
}
function Ad(c, e, f) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version) {
var d = [];
d.individualshare = "undefined" != typeof e.individualshare ? e.individualshare : !1;
d.aid = e.id;
d.name = e.name;
d.group = e.group != LP.get_null_group() ? e.group : "";
d.url = e.url;
d.extra = za(e.extra);
d.fav = e.fav;
d.sharedfromaid = e.sharedfromaid;
d.pwprotect = e.pwprotect;
d.genpw = e.genpw;
d.sn = e.sn;
d.last_touch = e.last_touch;
d.autologin = "1" == e.autologin;
d.never_autofill = "1" == e.never_autofill;
d.realm_data = za(wa(e.realm, e, B));
d.fiid = e.id;
d.basic_auth = e.basic_auth ? "1" : "0";
d.fields = [];
"undefined" != typeof e.sharefolderid && (d.sharefolderid = e.sharefolderid);
d.attachkey = e.attachkey;
d.attachpresent = e.attachpresent;
for (var g = 0; g < e.logins.length; g++) {
var h = e.logins[g];
0 == g && (d.username = za(h.username), d.password =
za(h.password), d.custom_js = h.custom_js, d.submit_id = h.submit_id, d.captcha_id = h.captcha_id, d.urid = h.urid, d.method = h.method, d.action = h.action);
for (var l = 0; l < h.fields.length; l++) {
var n = h.fields[l],
p = [];
p.otherfield = !1;
p.name = n.name;
p.type = n.type;
p.value = n.value;
if ("email" == p.type || "tel" == p.type || "url" == p.type || "text" == p.type || "password" == p.type || "textarea" == p.type) p.value = za(p.value);
p.checked = ("radio" == n.type || "checkbox" == n.type) && n.checked;
p.formname = "";
p.urid = h.urid;
p.otherlogin = "0";
p.url = 0 < g ? ac(h.url) :
"";
d.fields.push(p)
}
for (l = 0; l < h.otherfields.length; l++) {
n = h.otherfields[l];
p = [];
p.otherfield = !0;
p.name = n.name;
p.type = n.type;
p.value = n.value;
if ("email" == p.type || "tel" == p.type || "url" == p.type || "text" == p.type || "password" == p.type || "textarea" == p.type) p.value = za(p.value);
p.checked = ("radio" == n.type || "checkbox" == n.type) && n.checked;
p.formname = n.formname;
p.urid = h.urid;
p.otherlogin = "0";
p.url = 0 < g ? ac(h.url) : "";
d.save_all = 0 == d.username.length && 0 == d.password.length;
d.fields.push(p)
}
}
for (g = 0; g < e.otherlogins.length; g++) {
h =
e.otherlogins[g];
for (l = 0; l < h.fields.length; l++) {
n = h.fields[l];
p = [];
p.otherfield = !1;
p.name = n.name;
p.type = n.type;
p.value = n.value;
if ("email" == p.type || "tel" == p.type || "url" == p.type || "text" == p.type || "password" == p.type || "textarea" == p.type) p.value = za(p.value);
p.checked = ("radio" == n.type || "checkbox" == n.type) && n.checked;
p.formname = "";
p.urid = h.urid;
p.otherlogin = "1";
p.url = "";
d.fields.push(p)
}
for (l = 0; l < h.otherfields.length; l++) {
n = h.otherfields[l];
p = [];
p.otherfield = !0;
p.name = n.name;
p.type = n.type;
p.value = n.value;
if ("email" == p.type || "tel" == p.type || "url" == p.type || "text" == p.type || "password" == p.type || "textarea" == p.type) p.value = za(p.value);
p.checked = ("radio" == n.type || "checkbox" == n.type) && n.checked;
p.formname = n.formname;
p.urid = h.urid;
p.otherlogin = "1";
p.url = "";
d.save_all = 0 == d.username.length && 0 == d.password.length;
d.fields.push(p)
}
}
d.sn ? c.securenotes.push(d) : c.sites.push(d);
return f ? cs(c, e.id) : !0
}
d = c.getElementsByTagName("accounts");
if (0 < d.length) {
var q = c.createElement("account");
q.setAttribute("name", da(e.name));
q.setAttribute("urid", e.urid);
q.setAttribute("id", e.id);
q.setAttribute("url", ac(e.url));
q.setAttribute("m", e.manual);
q.setAttribute("http", e.is_http);
q.setAttribute("fav", e.fav);
q.setAttribute("favico", "0");
q.setAttribute("autologin", e.autologin);
q.setAttribute("basic_auth", e.basic_auth ? "1" : "0");
q.setAttribute("group", da(e.group));
q.setAttribute("fiid", e.id);
q.setAttribute("genpw", e.genpw ? "1" : "0");
q.setAttribute("extra", e.extra);
q.setAttribute("isbookmark", e.isbookmark ? "1" : "0");
q.setAttribute("never_autofill",
e.never_autofill);
q.setAttribute("last_touch", e.last_touch);
q.setAttribute("sn", e.sn ? "1" : "0");
q.setAttribute("realm", da(e.realm));
q.setAttribute("sharedfromaid", e.sharedfromaid);
q.setAttribute("pwprotect", e.pwprotect ? "1" : "0");
q.setAttribute("attachkey", e.attachkey);
q.setAttribute("attachpresent", e.attachpresent);
for (g = 0; g < e.logins.length; g++) {
var h = e.logins[g],
r = c.createElement("login");
r.setAttribute("urid", h.urid);
r.setAttribute("url", ac(h.url));
r.setAttribute("submit_id", h.submit_id);
r.setAttribute("captcha_id",
h.captcha_id);
r.setAttribute("custom_js", h.custom_js);
r.setAttribute("u", h.username);
r.setAttribute("p", h.password);
r.setAttribute("o", h.openid_url);
r.setAttribute("method", h.method);
for (l = 0; l < h.fields.length; l++) {
n = h.fields[l];
p = c.createElement("field");
p.setAttribute("name", n.name);
p.setAttribute("type", n.type);
p.setAttribute("value", n.value);
if ("radio" == n.type || "checkbox" == n.type) p.setAttribute("checked", n.checked ? "1" : "0");
r.appendChild(p)
}
for (l = 0; l < h.otherfields.length; l++) {
n = h.otherfields[l];
p = c.createElement("otherfield");
p.setAttribute("name", n.name);
p.setAttribute("type", n.type);
p.setAttribute("formname", n.formname);
p.setAttribute("value", n.value);
if ("radio" == n.type || "checkbox" == n.type) p.setAttribute("checked", n.checked ? "1" : "0");
r.appendChild(p)
}
q.appendChild(r)
}
for (g = 0; g < e.otherlogins.length; g++) {
h = e.otherlogins[g];
r = c.createElement("otherlogin");
r.setAttribute("urid", h.urid);
r.setAttribute("url", ac(h.url));
r.setAttribute("submit_id", h.submit_id);
r.setAttribute("captcha_id", h.captcha_id);
r.setAttribute("custom_js", h.custom_js);
r.setAttribute("u", h.username);
r.setAttribute("p", h.password);
r.setAttribute("o", h.openid_url);
r.setAttribute("method", h.method);
for (l = 0; l < h.fields.length; l++) {
n = h.fields[l];
p = c.createElement("field");
p.setAttribute("name", n.name);
p.setAttribute("type", n.type);
p.setAttribute("value", n.value);
if ("radio" == n.type || "checkbox" == n.type) p.setAttribute("checked", n.checked ? "1" : "0");
r.appendChild(p)
}
for (l = 0; l < h.otherfields.length; l++) {
n = h.otherfields[l];
p = c.createElement("otherfield");
p.setAttribute("name", n.name);
p.setAttribute("type", n.type);
p.setAttribute("formname", n.formname);
p.setAttribute("value", n.value);
if ("radio" == n.type || "checkbox" == n.type) p.setAttribute("checked", n.checked ? "1" : "0");
r.appendChild(p)
}
q.appendChild(r)
}
d[0].appendChild(q);
return f ? cs(c, e.id) : !0
}
return !1
} catch (t) {
return !1
}
}
function bs(c, e) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var f = 0; f < c.identities.length; f++) {
for (var d = c.identities[f].aids, g = d.split(","), h = "", l = 0; l < g.length; l++) g[l] !=
e && (h = "" == h ? g[l] : h + ("," + g[l]));
c.identities[f].aids = h
} else
for (var n = c.getElementsByTagName("identity"), f = 0; f < n.length; f++) {
d = n[f].getAttribute("aids");
g = d.split(",");
h = "";
for (l = 0; l < g.length; l++) g[l] != e && (h = "" == h ? g[l] : h + ("," + g[l]));
n[f].setAttribute("aids", h)
}
return !0
} catch (p) {
return !1
}
}
function cs(c, e) {
try {
if (!LP.lpprefsHasUserValue("identity")) return !0;
var f = LP.lpprefsGetCharPref("identity");
if ("" == f) return !0;
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var d = 0; d < c.identities.length; d++) {
if (c.identities[d].iid ==
f) {
var g = c.identities[d].aids,
g = "" == g ? e : g + ("," + e);
c.identities[d].aids = g;
return !0
}
} else
for (var h = c.getElementsByTagName("identity"), d = 0; d < h.length; d++)
if (h[d].getAttribute("iid") == f) return g = h[d].getAttribute("aids"), g = "" == g ? e : g + ("," + e), h[d].setAttribute("aids", g), !0;
return !1
} catch (l) {
return !1
}
}
function ds(c, e) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var f = 0; f < c.identities.length; f++) {
var d = c.identities[f].ffids;
null == d && (d = "");
for (var g = d.split(","), h = "", l = 0; l < g.length; l++) g[l] !=
e && (h = "" == h ? g[l] : h + ("," + g[l]));
c.identities[f].ffids = h
} else
for (var n = c.getElementsByTagName("identity"), f = 0; f < n.length; f++) {
d = n[f].getAttribute("ffids");
null == d && (d = "");
g = d.split(",");
h = "";
for (l = 0; l < g.length; l++) g[l] != e && (h = "" == h ? g[l] : h + ("," + g[l]));
n[f].setAttribute("ffids", h)
}
return !0
} catch (p) {
return !1
}
}
function es(c, e) {
try {
if (!LP.lpprefsHasUserValue("identity")) return !0;
var f = LP.lpprefsGetCharPref("identity");
if ("" == f) return !0;
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var d =
0; d < c.identities.length; d++) {
if (c.identities[d].iid == f) {
var g = c.identities[d].ffids;
null == g && (g = "");
g = "" == g ? e : g + ("," + e);
c.identities[d].ffids = g;
return !0
}
} else
for (var h = c.getElementsByTagName("identity"), d = 0; d < h.length; d++)
if (h[d].getAttribute("iid") == f) return g = h[d].getAttribute("ffids"), null == g && (g = ""), g = "" == g ? e : g + ("," + e), h[d].setAttribute("ffids", g), !0;
return !1
} catch (l) {
return !1
}
}
function Pw(c, e) {
try {
if (!LP.lpprefsHasUserValue("identity")) return !0;
var f = LP.lpprefsGetCharPref("identity");
if ("" ==
f) return !0;
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var d = 0; d < c.identities.length; d++) {
if (c.identities[d].iid == f) {
var g = c.identities[d].appaids;
null == g && (g = "");
g = "" == g ? e : g + ("," + e);
c.identities[d].appaids = g;
return !0
}
} else
for (var h = c.getElementsByTagName("identity"), d = 0; d < h.length; d++)
if (h[d].getAttribute("iid") == f) return g = h[d].getAttribute("appaids"), null == g && (g = ""), g = "" == g ? e : g + ("," + e), h[d].setAttribute("appaids", g), !0;
return !1
} catch (l) {
return !1
}
}
function kr(c, e, f) {
try {
if ("object" ==
typeof c && "undefined" != typeof c.accts_version)
for (var d = 0; d < c.formfills.length; d++) {
if (c.formfills[d].ffid == e) return c.formfills.splice(d, 1), f ? ds(c, e) : !0
} else
for (var g = c.getElementsByTagName("formfill"), d = 0; d < g.length; d++)
if (g[d].getAttribute("ffid") == e) {
var h = g[d].parentNode;
if (h) return h.removeChild(g[d]), f ? ds(c, e) : !0;
break
}
return !1
} catch (l) {
return !1
}
}
function lr(c, e, f) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version) {
var d = [];
"undefined" != typeof e.sharefolderid ? (d.sharefolderid =
e.sharefolderid, d.group = e.group) : d.group = "";
d.ffid = e.ffid;
d.profiletype = e.profiletype;
d.profilename = za(wa(e.profilename, e, B));
d.profilelanguage = za(e.profilelanguage);
d.firstname = za(e.firstname);
d.firstname2 = za(e.firstname2);
d.firstname3 = za(e.firstname3);
d.middlename = za(e.middlename);
d.lastname = za(e.lastname);
d.lastname2 = za(e.lastname2);
d.lastname3 = za(e.lastname3);
d.email = za(e.email);
d.mobileemail = za(e.mobileemail);
d.company = za(e.company);
d.ssn = za(e.ssn);
d.birthday = za(e.birthday);
d.address1 = za(e.address1);
d.address2 = za(e.address2);
d.address3 = za(e.address3);
d.city = za(e.city);
d.county = za(e.county);
d.state = za(e.state);
d.state_name = za(e.state_name);
d.zip = za(e.zip);
d.country = za(e.country);
d.country_cc3l = za(e.country_cc3l);
d.country_name = za(e.country_name);
d.phone3lcc = za(e.countryphone);
d.evephone3lcc = za(e.countryevephone);
d.fax3lcc = za(e.countryfaxphone);
d.mobilephone3lcc = za(e.countrymobphone);
d.phone = za(e.phone);
d.fax = za(e.fax);
d.mobilephone = za(e.mobilephone);
d.evephone = za(e.evephone);
d.phoneext = za(e.phoneext);
d.eveext = za(e.evephoneext);
d.mobileext = za(e.mobilephoneext);
d.faxext = za(e.faxphoneext);
d.ccname = za(e.ccname);
d.ccnum = za(e.ccnum);
d.ccstart = za(e.ccstart);
d.ccexp = za(e.ccexp);
d.cccsc = za(e.cccsc);
d.ccissuenum = za(e.ccissuenum);
d.username = za(e.username);
d.gender = za(e.gender);
d.title = za(e.title);
d.pwprotect = e.pwprotect;
d.creditmon = e.creditmon;
d.timezone = za(e.timezone);
d.bankname = za(e.bankname);
d.bankacctnum = za(e.bankacctnum);
d.bankroutingnum = za(e.bankroutingnum);
d.custom_fields = [];
for (var g = 0; g < e.customfields.length; g++) {
var h = [];
h.cfid = e.customfields[g].cfid;
h.text = za(e.customfields[g].text);
h.value = za(e.customfields[g].value);
h.alttext = za(e.customfields[g].alttext);
d.custom_fields.push(h)
}
d.notes = za(e.notes);
c.formfills.push(d);
return f ? es(c, e.ffid) : !0
}
d = c.getElementsByTagName("formfills");
if (0 < d.length) {
var l = c.createElement("formfill");
l.setAttribute("ffid", e.ffid);
l.setAttribute("profiletype", e.profiletype);
l.setAttribute("profilename", wa(e.profilename, e, B));
l.setAttribute("profilelanguage", e.profilelanguage);
l.setAttribute("firstname",
e.firstname);
l.setAttribute("firstname2", e.firstname2);
l.setAttribute("firstname3", e.firstname3);
l.setAttribute("middlename", e.middlename);
l.setAttribute("lastname", e.lastname);
l.setAttribute("lastname2", e.lastname2);
l.setAttribute("lastname3", e.lastname3);
l.setAttribute("email", e.email);
l.setAttribute("mobileemail", e.mobileemail);
l.setAttribute("company", e.company);
l.setAttribute("ssn", e.ssn);
l.setAttribute("birthday", e.birthday);
l.setAttribute("address1", e.address1);
l.setAttribute("address2", e.address2);
l.setAttribute("address3", e.address3);
l.setAttribute("city", e.city);
l.setAttribute("county", e.county);
l.setAttribute("state", e.state);
l.setAttribute("state_name", e.state_name);
l.setAttribute("zip", e.zip);
l.setAttribute("country", e.country);
l.setAttribute("country_cc3l", e.country_cc3l);
l.setAttribute("country_name", e.country_name);
l.setAttribute("phone3lcc", e.countryphone);
l.setAttribute("evephone3lcc", e.countryevephone);
l.setAttribute("fax3lcc", e.countryfaxphone);
l.setAttribute("mobilephone3lcc",
e.countrymobphone);
l.setAttribute("phone", e.phone);
l.setAttribute("fax", e.fax);
l.setAttribute("mobilephone", e.mobilephone);
l.setAttribute("evephone", e.evephone);
l.setAttribute("phoneext", e.phoneext);
l.setAttribute("eveext", e.evephoneext);
l.setAttribute("mobileext", e.mobilephoneext);
l.setAttribute("faxext", e.faxphoneext);
l.setAttribute("ccname", e.ccname);
l.setAttribute("ccnum", e.ccnum);
l.setAttribute("ccstart", e.ccstart);
l.setAttribute("ccexp", e.ccexp);
l.setAttribute("cccsc", e.cccsc);
l.setAttribute("ccissuenum",
e.ccissuenum);
l.setAttribute("username", e.username);
l.setAttribute("gender", e.gender);
l.setAttribute("title", e.title);
l.setAttribute("pwprotect", e.pwprotect ? "1" : "0");
l.setAttribute("creditmon", e.creditmon ? "1" : "0");
l.setAttribute("timezone", e.timezone);
l.setAttribute("bankname", e.bankname);
l.setAttribute("bankacctnum", e.bankacctnum);
l.setAttribute("bankroutingnum", e.bankroutingnum);
for (g = 0; g < e.customfields.length; g++) h = c.createElement("customfield"), h.setAttribute("cfid", e.customfields[g].cfid), h.setAttribute("text",
e.customfields[g].text), h.setAttribute("value", e.customfields[g].value), h.setAttribute("alttext", e.customfields[g].alttext), l.appendChild(h);
l.setAttribute("notes", e.notes);
d[0].appendChild(l);
return f ? es(c, e.ffid) : !0
}
return !1
} catch (n) {
return !1
}
}
function Qh(c, e, f) {
try {
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var d = 0; d < c.applications.length; d++)
if (c.applications[d].appaid == e) {
c.applications.splice(d, 1);
var g;
if (f) try {
if ("object" == typeof c && "undefined" != typeof c.accts_version)
for (var h =
0; h < c.identities.length; h++) {
var l = c.identities[h].appaids;
null == l && (l = "");
for (var n = l.split(","), p = "", q = 0; q < n.length; q++) n[q] != e && (p = "" == p ? n[q] : p + ("," + n[q]));
c.identities[h].appaids = p
} else
for (var r = c.getElementsByTagName("identity"), h = 0; h < r.length; h++) {
l = r[h].getAttribute("appaids");
null == l && (l = "");
n = l.split(",");
p = "";
for (q = 0; q < n.length; q++) n[q] != e && (p = "" == p ? n[q] : p + ("," + n[q]));
r[h].setAttribute("appaids", p)
}
g = !0
} catch (t) {
g = !1
} else g = !0;
return g
}
return !1
} catch (A) {
return !1
}
}
function oj(c, e, f) {
try {
if ("object" ==
typeof c && "undefined" != typeof c.accts_version) {
e.extra = za(e.extra);
for (var d = 0; d < e.fields.length; d++) e.fields[d].value = za(e.fields[d].value);
c.applications.push(e);
return f ? Pw(c, e.appaid) : !0
}
return !1
} catch (g) {
return !1
}
}
function Vf() {
try {
var c = T["@mozilla.org/file/directory_service;1"].getService(ca.nsIProperties).get("CurProcD", ca.nsIFile).path.toLowerCase();
if (-1 != c.indexOf("portable") && -1 != c.indexOf("firefox")) return !0;
if (-1 != c.indexOf("\\app\\firefox") && c.indexOf("\\app\\firefox") == c.length - 12) {
var e =
c.substring(0, c.length - 11) + "firefoxportable.exe",
f = T["@mozilla.org/file/local;1"].createInstance(ca.nsILocalFile);
f.initWithPath(e);
if (f.exists()) return !0
}
return !1
} catch (d) {
return !1
}
}
function fs(c, e) {
try {
var f = "DOM_VK_" + c.toUpperCase();
return gs(e, 0, LP.mostRecent().KeyEvent[f], !1)
} catch (d) {}
}
function gs(c, e, f, d) {
if (!(void 0 === c || void 0 === c.ownerDocument)) {
var g = c.ownerDocument.createEvent("KeyEvents");
g.initKeyEvent("keydown", !0, !0, null, !1, !1, d, !1, f, e);
var h = c.dispatchEvent(g);
h && (g = c.ownerDocument.createEvent("KeyEvents"),
g.initKeyEvent("keypress", !0, !0, null, !1, !1, d, !1, f, e), h = c.dispatchEvent(g));
g = c.ownerDocument.createEvent("KeyEvents");
g.initKeyEvent("keyup", !0, !0, null, !1, !1, d, !1, f, e);
c.dispatchEvent(g);
return h
}
}
function Qw() {
this.onUpdateStarted = function() {};
this.onUpdateEnded = function() {};
this.onAddonUpdateEnded = function(c, e) {
if (1 == e && fh && zj) {
if (gh || LP.lpConfirmYesNo(LP.lpgs("An Update is Available. Would you like to install?"))) {
var f = [];
f[0] = zj;
try {
fh.addDownloads(f, 1, !0)
} catch (d) {
fh.addDownloads(f, 1, null)
}
LP.mostRecent().setTimeout(function() {
LP.alert(LP.lpgs("MustRestartUpdate"))
},
1E4)
}
} else 8 == e && LP.alert(LP.lpgs("No Updates are Available"))
};
this.onAddonUpdateStarted = function() {}
}
function ya(c, e) {
var f = c.getElementById(e);
if (!f) {
var d = me(c);
d && "undefined" != typeof d.querySelector && (f = d.querySelector("#" + e.replace(/([^A-Za-z0-9\-_])/g, "\\$1")))
}
return f
}
function Tg(c) {
"string" == typeof c && 45E3 < c.length && (c = c.substring(0, 45E3));
return c
}
function ic(c) {
return c.toLowerCase().replace(/\s*/g, "")
}
function hs() {}
function vd(c) {
"" == c ? (ja = "", wf = rb(ja), tl = "") : (ja = c, wf = rb(ja), tl = Fa(c))
}
function zr() {
for (var c = !1, e = !1, f = 0; f < ka.length; f++) {
var d = ka[f];
0 == d.profiletype && (c = !0);
"" != d.ccnum && (e = !0);
if (c && e) return !0
}
return !1
}
function is(c) {
if (!("undefined" == typeof c || "undefined" == typeof c.childNodes))
for (; c.hasChildNodes();) c.removeChild(c.firstChild)
}
function Jr(c) {
var e = new cj;
e.group = "";
for (var f in c) {
var d = c[f];
"firstname" == f ? e.firstname = da(d) : "firstname2" == f ? e.firstname2 = da(d) : "firstname3" == f ? e.firstname3 = da(d) : "lastname" == f ? e.lastname = da(d) : "lastname2" == f ? e.lastname2 = da(d) : "lastname3" ==
f ? e.lastname3 = da(d) : "city" == f ? e.city = da(d) : "county" == f ? e.county = da(d) : "state" == f ? e.state_name = da(d) : "address" == f || "address1" == f ? e.address1 = da(d) : "address2" == f ? e.address2 = da(d) : "address3" == f ? e.address3 = da(d) : "country" == f ? e.country_name = da(d) : "email" == f ? e.email = da(d) : "mobileemail" == f ? e.mobileemail = da(d) : "company" == f ? e.company = da(d) : "middlename" == f || "middleinitial" == f ? e.middlename = da(d) : "bankacctnum" == f ? e.bankacctnum = da(d) : "bankroutingnum" == f ? e.bankroutingnum = da(d) : "bankname" == f ? e.bankname = da(d) : "username" ==
f ? e.username = da(d) : "phoneext" == f ? e.phoneext = da(d) : "faxext" == f ? e.faxphoneext = da(d) : "mobileext" == f ? e.mobilephoneext = da(d) : "eveext" == f ? e.evephoneext = da(d) : "ccname" == f ? e.ccname = da(d) : "cccsc" == f ? e.cccsc = da(d) : "ccissuenum" == f ? e.ccissuenum = da(d) : "timezone" == f ? e.timezone = da(d) : "title" == f ? e.title = da(d) : "gender" == f && (e.gender = da(d))
}
"undefined" != typeof c.ssn ? e.ssn = c.ssn : "undefined" != typeof c.ssn1 && (e.ssn = c.ssn1, "undefined" != typeof c.ssn2 && (e.ssn += c.ssn2, "undefined" != typeof c.ssn3 && (e.ssn += c.ssn3)));
e.ssn = da(e.ssn);
"undefined" != typeof c.zip ? e.zip = c.zip : "undefined" != typeof c.zip1 && (e.zip = c.zip1, "undefined" != typeof c.zip2 && (e.zip += c.zip2));
e.zip = da(e.zip);
"undefined" != typeof c.phone ? e.phone = c.phone : "undefined" != typeof c.phone1 ? (e.phone = c.phone1, "undefined" != typeof c.phone2 && (e.phone += c.phone2, "undefined" != typeof c.phone3 && (e.phone += c.phone3))) : e.phone = "";
e.phone = e.phone.replace(/\D+/g, "");
e.phone.match(/^(?:[2-9]\d{2}){2}\d{4}$/) && (e.phone = "1" + e.phone);
e.phone = da(e.phone);
"undefined" != typeof c.mobilephone ? e.mobilephone =
c.mobilephone : "undefined" != typeof c.mobilephone1 ? (e.mobilephone = c.mobilephone1, "undefined" != typeof c.mobilephone2 && (e.mobilephone += c.mobilephone2, "undefined" != typeof c.mobilephone3 && (e.mobilephone += c.mobilephone3))) : e.mobilephone = "";
e.mobilephone = e.mobilephone.replace(/\D+/g, "");
e.mobilephone.match(/^(?:[2-9]\d{2}){2}\d{4}$/) && (e.mobilephone = "1" + e.mobilephone);
e.mobilephone = da(e.mobilephone);
"undefined" != typeof c.evephone ? e.evephone = c.evephone : "undefined" != typeof c.evephone1 ? (e.evephone = c.evephone1,
"undefined" != typeof c.evephone2 && (e.evephone += c.evephone2, "undefined" != typeof c.evephone3 && (e.evephone += c.evephone3))) : e.evephone = "";
e.evephone = e.evephone.replace(/\D+/g, "");
e.evephone.match(/^(?:[2-9]\d{2}){2}\d{4}$/) && (e.evephone = "1" + e.evephone);
e.evephone = da(e.evephone);
"undefined" != typeof c.fax ? e.fax = c.fax : "undefined" != typeof c.fax1 ? (e.fax = c.fax1, "undefined" != typeof c.fax2 && (e.fax += c.fax2, "undefined" != typeof c.fax3 && (e.fax += c.fax3))) : e.fax = "";
e.fax = e.fax.replace(/\D+/g, "");
e.fax.match(/^(?:[2-9]\d{2}){2}\d{4}$/) &&
(e.fax = "1" + e.fax);
e.fax = da(e.fax);
"undefined" != typeof c.ccnum ? e.ccnum = c.ccnum : "undefined" != typeof c.ccnum1 && (e.ccnum = c.ccnum1, "undefined" != typeof c.ccnum2 && (e.ccnum += c.ccnum2, "undefined" != typeof c.ccnum3 && (e.ccnum += c.ccnum3, "undefined" != typeof fdata.ccnum4 && (e.ccnum += c.ccnum4))));
e.ccnum = da(e.ccnum);
e.customfields = [];
return e
}
function db(c) {
return "undefined" != typeof c
}
function js(c, e, f, d) {
var g = f.keyCode ? f.keyCode : f.which;
f = f.shiftKey ? f.shiftKey : 16 == g ? !0 : !1;
g = 65 <= g && 90 >= g && !f || 97 <= g && 122 >= g && f ? !0 : !1;
f = c.getElementById(d).style.display;
c.getElementById(d).style.display = g ? "" : "none";
f != c.getElementById(d).style.display && (e.innerHeight += g ? 30 : -30)
}
function Rw(c, e, f) {
4 == c.readyState && 200 == c.status && (c.responseXML && c.responseXML.documentElement) && (c = Tf(f, !0), Rb(ha + "_ff.sotp", c))
}
function Sw(c, e) {
var f, d, g;
for (f in c) d = c[f];
for (f in e) g = e[f];
return d.localeCompare(g)
}
function gc(c, e, f, d) {
e = c.getElementById(e);
c = c.createElement(f);
for (attrib in d) c.setAttribute(attrib, d[attrib]);
e.appendChild(c);
return c
}
function nr() {
return !LP.islastpass && LP.lpis_linux ? null : null != Zn ? Zn : ma() && "function" == typeof Z.getappdatapath ? Zn = Z.getappdatapath() : null
}
function bi(c, e, f, d, g, h, l, n) {
var p = "object" == typeof c && "object" == typeof e && c.id == e.id;
if (!n && !p) {
var q = LP.lpgs("You are moving sites to a shared folder. This will potentially make them available to others.\n\nAre you sure you would like to continue?");
"undefined" == typeof c || !c ? q = LP.lpgs("You are moving sites from a shared folder into your general vault. This will potentially make them unavailable to others.\n\n Do you want to continue?") :
"undefined" != typeof e && e && (q = LP.lpgs("You are moving sites to a different shared folder. This may change who has access to the sites.\n\n Do you want to continue?"));
if (!LP.lpConfirmYesNo(q, h)) return !1
}
var p = "undefined" != typeof c && c ? c.sharekey : ja,
r = "undefined" != typeof e && e ? e.sharekey : ja,
t = "undefined" != typeof e && e ? e.id : "",
A = "undefined" != typeof c && c ? c.id : ld,
y = "cmd=uploadaccounts&username=" + LP.en(Q),
J = "";
Sb = ja;
Ub = rb(Sb);
for (var u = 0; u < f.length; u++) {
var s = LP.get_record(f[u]);
if (s) {
q = !1;
if ("undefined" !=
typeof s.individualshare && s.individualshare) {
if (null != s.sharedfromaid && "" != s.sharedfromaid && "0" != s.sharedfromaid) return LP.alert(LP.lpgs("You cannot move individually shared sites into a shared folder."), h), !1;
if (g || n) q = !0;
else if (q = LP.lpgs("A site that has been previously shared cannot be moved to a shared folder.\n\nWould you like to make a copy?"), LP.lpConfirmYesNo(q, h)) q = !0;
else return !1
}
if (!l) {
if (("undefined" != typeof s.sharefolderid || "" != t) && s.sharefolderid != t && s.sharefolderid != A) return Cb(LP.lpgs("Please move sites from only one shared folder at a time.")), !1;
var z = "undefined" != typeof c && c ? d[f[u]].substr(c.decsharename.length + 1) : d[f[u]];
LP.is_application(s) ? z = "&appname" + u + "=" + LP.en(s.appname) + "&name" + u + "=" + LP.en(da(s.name, p)) + "&type" + u + "=" + LP.en("ff") + "&group" + u + "=" + LP.en(da(z, p)) + "&extra" + u + "=" + LP.en(da(Ya(s.extra, r), p)) + "&script" + u + "=" + LP.en(s.script) + "&pwprotect" + u + "=" + LP.en(s.pwprotect ? 1 : 0) + "&wininfo" + u + "=" + LP.en(s.wininfo) + "&wintitle" + u + "=" + LP.en(s.wintitle) + "&exeversion" + u + "=" + LP.en(s.exeversion) + "&exehash" + u + "=" + LP.en(s.exehash) + "&fiid" + u + "=" +
LP.en(s.fiid) : (z = "&url" + u + "=" + LP.en(rb(s.url)) + "&username" + u + "=" + LP.en(da(Ya(s.username, r), p)) + "&password" + u + "=" + LP.en(da(Ya(s.password, r), p)) + "&name" + u + "=" + LP.en(da(s.name, p)) + "&type" + u + "=" + LP.en("ff") + "&grouping" + u + "=" + LP.en(da(z, p)) + "&extra" + u + "=" + LP.en(da(Ya(s.extra, r), p)) + "&pwprotect" + u + "=" + LP.en(s.pwprotect ? 1 : 0) + "&realm" + u + "=" + LP.en(da(s.realm, p)), s.save_all && (z += "&save_all" + u + "=1"), "undefined" != typeof s.basic_auth && "1" == s.basic_auth && (z += "&basic_auth" + u + "=1"));
"undefined" != typeof s.attachkey &&
"" != s.attachkey && (z += "&attachkey" + u + "=" + LP.en(da(Ya(s.attachkey, r), p)));
var z = z + ("&origaid" + u + "=" + LP.en(f[u])),
ia = "",
B = [];
LP.is_application(s) ? B = s.fields : 0 < s.logins.length && (s.logins[0].fields && 0 < s.logins[0].fields.length ? B = s.logins[0].fields : s.logins[0].otherfields && 0 < s.logins[0].otherfields.length && (B = s.logins[0].otherfields));
for (var F = 0; F < B.length; F++) {
var C = B[F].value,
D = B[F].type;
if (LP.is_application(s) || "text" == D || "email" == D || "tel" == D || "url" == D || "password" == D || "textarea" == D || "hidden" == D) C = da(Ya(C,
r), p);
else if ("checkbox" == D || "radio" == D) C += B[F].checked ? "-1" : "-0";
ia = LP.is_application(s) ? ia + ("&fields" + u + "id" + F + "=" + LP.en(B[F].id) + "&fields" + u + "type" + F + "=" + LP.en(B[F].type) + "&fields" + u + "value" + F + "=" + LP.en(C)) : ia + ("&fields" + u + "name" + F + "=" + LP.en(B[F].name) + "&fields" + u + "type" + F + "=" + LP.en(B[F].type) + "&fields" + u + "value" + F + "=" + LP.en(C) + "&fields" + u + "formname" + F + "=" + LP.en("undefined" == typeof B[F].formname ? "" : B[F].formname))
}
y += z;
y += ia;
!q && !g && (J += LP.en(f[u]) + ",")
}
}
}
if (l) return !0;
Ub = Sb = "";
y += "&sharedfolderid=" +
LP.en(A);
null != typeof c && e && (y += "&origsharedfolderid=" + LP.en(e.id));
g || (y += "&todelete=" + J);
LP.lpMakeRequest(LP.lp_base + "lastpass/api.php", y, function() {
LP.lpGetAccounts()
}, function() {
LP.alert(LP.lpgs("An error occurred"))
}, null);
return !0
}
function $n(c) {
if ("undefined" != typeof Tw && ("undefined" == typeof g_oldpbkdf2 || 1 != g_oldpbkdf2)) c = ul.utf8encode(c);
return c
}
function Je(c, e, f) {
c = Jb(c, !1, e);
if (f) f(c);
else return c
}
function ks() {
if (!LP.isFennec) return !1;
try {
ci || (Components.utils["import"]("resource://gre/modules/ctypes.jsm"),
ci = ctypes.open("libcrypto.so"), ao = (new ctypes.StructType("EVP_MD")).ptr), ci && (vl || (vl = ci.declare("PKCS5_PBKDF2_HMAC", ctypes.default_abi, ctypes["int"], ctypes["char"].ptr, ctypes["int"], ctypes.unsigned_char.ptr, ctypes["int"], ctypes["int"], ao, ctypes["int"], ctypes.unsigned_char.ptr)), wl || (wl = ci.declare("EVP_sha256", ctypes.default_abi, ao)))
} catch (c) {}
return ci && vl && wl
}
function ls(c, e, f, d) {
try {
for (var g = (new ctypes.ArrayType(ctypes["char"]))(c.length), h = 0; h < c.length; h++) {
var l = c.charCodeAt(h);
try {
g[h] = new ctypes["char"](l)
} catch (n) {
128 <=
l && (l -= 256), g[h] = new ctypes["char"](l)
}
}
for (var p = (new ctypes.ArrayType(ctypes.unsigned_char))(e.length), h = 0; h < e.length; h++) p[h] = new ctypes.unsigned_char(e.charCodeAt(h));
var q = (new ctypes.ArrayType(ctypes.unsigned_char))(d);
vl(g, c.length, p, e.length, f, wl(), d, q);
c = "";
for (h = 0; h < d; h++) c += String.fromCharCode(q[h]);
return rb(c)
} catch (r) {
return ""
}
}
function U(c) {
return LP.lpgs(c)
}
function ms(c, e, f) {
Ug(c, e, f);
c = null;
null != nj && "undefined" != typeof z[nj] && (c = z[nj], nj = null);
c && LP.lp_noteAcceptHelper(c.id, null, !0, !0)
}
function Uw(c, e, f) {
if (!c || !P) return !1;
if (4 == c.readyState)
if (200 == c.status || 0 == c.status && e) {
Gg("sharedfolders");
z = [];
bd = [];
Pe = [];
tf = 0;
Ia = [];
qb = [];
la = [];
vf = [];
Dc = [];
Tc = [];
Ud = [];
Vd = [];
Od = [];
Td = [];
mf = [];
qf = [];
rf = [];
of = [];
sf = [];
Va = [];
$a = [];
te = [];
ka = [];
Oa = [];
gb = [];
xd = [];
xl = [];
B = [];
lb = [];
if (!c.responseXML && (e = c.responseText, !f && "LPAV" != e.substring(0, 4) && (e = atob(e)), "LPAV" == e.substring(0, 4))) {
var d = [],
g = [];
c = [];
se = dh = ai = 0;
Sb = ja;
Ub = rb(Sb);
La = Xa;
xj = RegExp(LP.lpgs("ff_captcha_regexp"), "i");
e = Wn(e, e.length, -1, 0, Vw, [], [], [], d, g, [], [], !0, f, null, [], c, [], [], [], [], eh, B, null, null, null, [], lb, [], []);
Ub = Sb = "";
return e
}
if (!ns(c)) return f && LP.lpClearCache(!0, !1, !1), !1;
d = RegExp(LP.lpgs("ff_captcha_regexp"), "i");
e = c.responseXML.documentElement;
var h = e.getElementsByTagName("error");
if (0 < h.length && (g = h[0].hasAttribute("notloggedin"), h = h[0].hasAttribute("nosession"), g || h)) return Sa(!1, "ff_notloggedin_or_nosession"), !1;
g = e.getElementsByTagName("accounts");
if (!LP.adminoverride.length && 0 < g.length && g[0].hasAttribute("encrypted_username")) {
var h =
g[0].getAttribute("encrypted_username"),
l = Ya(h);
if ("" != h && Q != l) return ga("Encrypted username check failed: " + Q + " vs " + l + " for " + h + " local " + f, null), LP.lpClearCache(!0, !0, !1), Sa(!1, "ff_encryptedusernamecheck"), LP.alert(LP.lpgs("An error has been encountered while loading your sites. Please relogin.")), !1
}
0 < g.length && (h = $b(ha + "_lps.act.sxml") || $b(ha + "_lps.act.xml"), LP.lpdolostpwotp && !h && !LP.lpprefsHasUserValue("StoreLostPWOTP") && LP.lpprefsSetBoolPref("StoreLostPWOTP", !0));
!f && 0 < g.length && Yn(c.responseText,
null, "parse_getaccts.js");
0 < g.length && (c = g[0].getAttribute("pd"), Yk = null != c ? c : 0, c = g[0].getAttribute("eu"), Xk = null != c ? c : 0, vb = parseInt(g[0].getAttribute("accts_version")), f || (kc = parseInt(g[0].getAttribute("accts_version"))));
c = "";
h = !1;
LP.lpprefsHasUserValue("identity") && (c = LP.lpprefsGetCharPref("identity"));
g = e.getElementsByTagName("identity");
for (f = 0; f < g.length; f++) l = new Dq, l.iid = g[f].getAttribute("iid"), l.iname = Ya(g[f].getAttribute("iname")), l.aids = g[f].getAttribute("aids"), l.ffids = g[f].getAttribute("ffids"),
null == l.ffids && (l.ffids = ""), l.pwprotect = 1 == parseInt(g[f].getAttribute("pwprotect")), l.appaids = g[f].getAttribute("appaids"), null == l.appaids && (l.appaids = ""), Oa[Oa.length] = l, c == l.iid && (h = !0);
Oa.sort(sr);
pl();
if (!h && "" != c) return c = "", LP.lpIdentityHelper("", !0), LP.lpClearCache(!0, !1, !1), Sa(!1, "badidentity"), LP.lpalert_ex(LP.lpgs("Your selected Identity no longer exists. Defaulting to 'All' and logging off.")), !1;
g = e.getElementsByTagName("account");
h = [];
if (g)
for (f = 0; f < g.length; f++) g[f].hasAttribute("decryption_done") ||
(g[f].setAttribute("name", Qr(g[f].getAttribute("name"))), g[f].setAttribute("group", Qr(g[f].getAttribute("group"))), g[f].setAttribute("decryption_done", !0)), h[h.length] = g[f];
g = h;
g.sort(lw);
for (f = 0; null != g && f < g.length; f++)
if (h = g[f].getAttribute("id"), LP.IdentityIsOk(c, h)) {
var n = g[f].getAttribute("name"),
p = g[f].getAttribute("urid"),
q = Kb(g[f].getAttribute("url")),
r = g[f].getAttribute("m"),
t = g[f].getAttribute("http"),
A = g[f].getAttribute("fav"),
y = g[f].getAttribute("favico"),
J = g[f].getAttribute("extra"),
u = g[f].getAttribute("autologin"),
l = 1 == parseInt(g[f].getAttribute("basic_auth")),
s = 1 == parseInt(g[f].getAttribute("sn")),
jd = g[f].getAttribute("group"),
jd = "" == jd && !s ? LP.get_null_group() : "" == jd && s ? LP.lpgs("SecureNotes") : jd;
g[f].getAttribute("id");
var ia = 1 == parseInt(g[f].getAttribute("genpw")),
C = 1 == parseInt(g[f].getAttribute("isbookmark")),
F = g[f].getAttribute("never_autofill"),
D = g[f].getAttribute("last_touch"),
v = Ya(g[f].getAttribute("realm")),
K = g[f].getAttribute("sharedfromaid"),
ea = 1 == parseInt(g[f].getAttribute("pwprotect")),
ra = {
aid: h,
manual: r,
is_http: t
}, Y = g[f].getAttribute("attachkey"),
E = g[f].getAttribute("attachpresent");
if (1 == parseInt(A)) {
var H = new Zc;
H.id = h;
H.command = ra;
$a[$a.length] = H
}
ra = new Yb;
ra.individualshare = !1;
ra.pendingshare = !1;
ra.name = n;
ra.urid = p;
ra.id = h;
ra.url = q;
ra.manual = r;
ra.is_http = t;
ra.extra = J;
ra.fav = A;
ra.favico = y;
ra.autologin = u;
ra.basic_auth = l;
ra.group = jd;
ra.fiid = h;
ra.genpw = ia;
ra.isbookmark = C;
ra.never_autofill = F;
ra.last_touch = D;
ra.sn = s;
ra.sharedfromaid = K;
ra.save_all = !1;
ra.pwprotect = ea;
ra.realm = v;
ra.attachkey =
Y;
ra.attachpresent = E;
ra.logins = [];
ra.otherlogins = [];
ra.fields = [];
y = g[f].getElementsByTagName("fld");
for (n = 0; n < y.length; n++) {
t = new Nd;
t.name = y[n].getAttribute("name");
t.type = y[n].getAttribute("type");
t.value = y[n].getAttribute("value");
t.aftersubmit = 1 == parseInt(g[n].getAttribute("aftersubmit"));
if ("radio" == t.type || "checkbox" == t.type)
if (t.checked = 1 == parseInt(y[G].getAttribute("checked")) ? !0 : !1, "radio" == t.type && !t.checked) continue;
ra.fields[ra.fields.length] = t
}
for (q = 1; 2 >= q; q++) {
p = g[f].getElementsByTagName(1 ==
q ? "login" : "otherlogin");
for (n = 0; n < p.length; n++) {
r = new gd;
r.urid = p[n].getAttribute("urid");
r.url = Kb(p[n].getAttribute("url"));
G = xb(r.url);
r.server = G.host;
r.tld = sc(G.host, r.url);
G = nb(r.url, G);
ia || (Dc[Dc.length] = G);
r.submit_id = p[n].getAttribute("submit_id");
r.captcha_id = p[n].getAttribute("captcha_id");
r.custom_js = p[n].getAttribute("custom_js");
r.username = p[n].getAttribute("u");
r.password = p[n].getAttribute("p");
r.openid_url = p[n].getAttribute("o");
r.method = p[n].getAttribute("method");
r.action = "";
r.unencryptedUsername =
O(r.username, ra, B);
0 == n && (ra.username = r.username, ra.password = r.password, ra.unencryptedUsername = r.unencryptedUsername);
r.uname = "";
r.pname = "";
r.oname = "";
r.fields = [];
for (var y = p[n].getElementsByTagName("field"), u = J = !1, A = !0, G = 0; G < y.length; G++) {
t = new Nd;
t.name = y[G].getAttribute("name");
t.type = y[G].getAttribute("type");
t.value = y[G].getAttribute("value");
t.ordernum = y[G].getAttribute("o");
t.ordernum || (A = !1);
if (("email" == t.type || "tel" == t.type || "text" == t.type || "url" == t.type) && "openid_url" != t.name)
if ("" != r.username &&
t.value == r.username) r.uname = t.name, J = !0;
else if (!J && ("" == r.pname || "" == r.uname)) r.uname = t.name;
"password" == t.type && ("" != r.password && t.value == r.password ? (r.pname = t.name, u = !0) : u || (r.pname = t.name));
if (("email" == t.type || "tel" == t.type || "url" == t.type || "text" == t.type) && "openid_url" == t.name) r.oname = t.name;
if ("radio" == t.type || "checkbox" == t.type)
if (t.checked = 1 == parseInt(y[G].getAttribute("checked")) ? !0 : !1, "radio" == t.type && !t.checked) continue;
"" == r.captcha_id && "text" == t.type && d.exec(t.name) && (r.captcha_id = t.name);
r.fields[r.fields.length] = t
}
A && r.fields.sort(tr);
r.otherfields = [];
y = p[n].getElementsByTagName("otherfield");
A = !0;
for (G = 0; G < y.length; G++) {
t = new Nd;
t.name = y[G].getAttribute("name");
t.type = y[G].getAttribute("type");
t.value = y[G].getAttribute("value");
t.formname = y[G].getAttribute("formname");
t.ordernum = y[G].getAttribute("o");
t.ordernum || (A = !1);
if ("radio" == t.type || "checkbox" == t.type)
if (t.checked = 1 == parseInt(y[G].getAttribute("checked")) ? !0 : !1, "radio" == t.type && !t.checked) continue;
"0" == r.urid && (ra.save_all = !0);
"" == r.captcha_id && "text" == t.type && d.exec(t.name) && (r.captcha_id = t.name);
r.otherfields[r.otherfields.length] = t
}
A && r.otherfields.sort(tr);
1 == q ? ra.logins[ra.logins.length] = r : ra.otherlogins[ra.otherlogins.length] = r
}
}
ia = Ta(ra.url);
ra.tld = ia;
l && (te[h] = ra, te[h].last_time = 0, te[h].realm = v);
ra.sn ? Ia[h] = ra : z[h] = ra;
tf++;
"undefined" == typeof la[ia] && (la[ia] = []);
la[ia][h] = !0;
ra.genpw && (vf[h] = !0)
}
Qe && "function" == typeof Qe && (Qe(), Qe = null);
d = e.getElementsByTagName("neveraccount");
for (f = 0; null != d && f < d.length; f++) q =
d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), Tc[Tc.length] = q;
d = e.getElementsByTagName("nevergenerate");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), Ud[Ud.length] = q;
d = e.getElementsByTagName("neverformfill");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), Vd[Vd.length] = q;
d = e.getElementsByTagName("neverautologin");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), Od[Od.length] =
q;
d = e.getElementsByTagName("nevershowicons");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), Td[Td.length] = q;
d = e.getElementsByTagName("onlyaccount");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), mf[mf.length] = q;
d = e.getElementsByTagName("onlygenerate");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), qf[qf.length] = q;
d = e.getElementsByTagName("onlyformfill");
for (f = 0; null != d && f <
d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), rf[rf.length] = q;
d = e.getElementsByTagName("onlyautologin");
for (f = 0; null != d && f < d.length; f++) q = d[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), of[of.length] = q;
e.getElementsByTagName("onlyshowicons");
for (f = 0; null != showicons && f < showicons.length; f++) q = showicons[f].getAttribute("url"), -1 == q.indexOf(".") && (q = Kb(q)), sf[sf.length] = q;
d = e.getElementsByTagName("formfill");
for (f = 0; null != d && f < d.length; f++)
if (g = d[f].getAttribute("ffid"),
LP.IdentityFfidIsOk(c, g)) {
G = new cj;
G.group = "";
G.ffid = g;
G.profiletype = d[f].getAttribute("profiletype");
G.profilename = O(d[f].getAttribute("profilename"), d[f], B);
G.profilelanguage = d[f].getAttribute("profilelanguage");
G.firstname = d[f].getAttribute("firstname");
G.firstname2 = d[f].getAttribute("firstname2");
G.firstname3 = d[f].getAttribute("firstname3");
G.middlename = d[f].getAttribute("middlename");
G.lastname = d[f].getAttribute("lastname");
G.lastname2 = d[f].getAttribute("lastname2");
G.lastname3 = d[f].getAttribute("lastname3");
G.email = d[f].getAttribute("email");
G.mobileemail = d[f].getAttribute("mobileemail");
G.company = d[f].getAttribute("company");
G.ssn = d[f].getAttribute("ssn");
G.birthday = d[f].getAttribute("birthday");
G.address1 = d[f].getAttribute("address1");
G.address2 = d[f].getAttribute("address2");
G.address3 = d[f].getAttribute("address3");
G.title = d[f].getAttribute("title");
G.city = d[f].getAttribute("city");
G.county = d[f].getAttribute("county");
G.state = d[f].getAttribute("state");
G.state_name = d[f].getAttribute("state_name");
G.zip = d[f].getAttribute("zip");
G.country = d[f].getAttribute("country");
G.country_cc3l = d[f].getAttribute("country_cc3l");
G.country_name = d[f].getAttribute("country_name");
G.countryphone = d[f].getAttribute("phone3lcc");
G.countryevephone = d[f].getAttribute("evephone3lcc");
G.countryfaxphone = d[f].getAttribute("fax3lcc");
G.countrymobphone = d[f].getAttribute("mobilephone3lcc");
G.phone = d[f].getAttribute("phone");
G.fax = d[f].getAttribute("fax");
G.mobilephone = d[f].getAttribute("mobilephone");
G.evephone = d[f].getAttribute("evephone");
G.phoneext = d[f].getAttribute("phoneext");
G.evephoneext = d[f].getAttribute("eveext");
G.mobilephoneext = d[f].getAttribute("mobileext");
G.faxphoneext = d[f].getAttribute("faxext");
G.ccname = d[f].getAttribute("ccname");
G.ccnum = d[f].getAttribute("ccnum");
G.ccstart = d[f].getAttribute("ccstart");
G.ccexp = d[f].getAttribute("ccexp");
G.cccsc = d[f].getAttribute("cccsc");
G.ccissuenum = d[f].getAttribute("ccissuenum");
G.username = d[f].getAttribute("username");
G.gender = d[f].getAttribute("gender");
G.pwprotect = 1 == parseInt(d[f].getAttribute("pwprotect"));
G.creditmon = 1 == parseInt(d[f].getAttribute("creditmon"));
G.timezone = d[f].getAttribute("timezone");
G.bankname = d[f].getAttribute("bankname");
G.bankacctnum = d[f].getAttribute("bankacctnum");
G.bankroutingnum = d[f].getAttribute("bankroutingnum");
G.customfields = [];
g = d[f].getElementsByTagName("customfield");
for (n = 0; n < g.length; n++) h = new Tm, h.cfid = g[n].getAttribute("cfid"), h.text = g[n].getAttribute("text"), h.value = g[n].getAttribute("value"), h.alttext = g[n].getAttribute("alttext"), G.customfields[G.customfields.length] =
h;
G.notes = d[f].getAttribute("notes");
ka[ka.length] = G
}
ka.sort(bl);
Zh();
d = e.getElementsByTagName("equivdomain");
for (f = 0; null != d && f < d.length; f++) c = d[f].getAttribute("edid"), G = Kb(d[f].getAttribute("domain")), "undefined" == typeof gb[c] && (gb[c] = []), gb[c][gb[c].length] = G, gb[G] = c;
for (f in z)
if (ia = z[f].tld, "undefined" != typeof gb[ia] && (c = gb[ia], "undefined" != typeof gb[c]))
for (n = 0; n < gb[c].length; n++) d = gb[c][n], "undefined" == typeof la[d] && (la[d] = []), la[d][f] = !0;
c = e.getElementsByTagName("pendingshare");
for (f = 0; null !=
c && f < c.length; f++) {
d = new Yb;
d.individualshare = !0;
d.pendingshare = !0;
d.logins = [];
d.otherlogins = [];
d.fields = [];
d.group = LP.lpgs("(New Pending Share Offers)");
d.name = LP.lpgs("Share offer from") + " " + ic(Kb(c[f].getAttribute("sharerusername")));
d.is_http = !0;
d.favico = "";
d.last_time = 0;
d.sn = !1;
d.tld = "";
d.unencryptedUsername = "";
d.save_all = !1;
d.realm = "";
d.url = "";
d.urid = "";
d.manual = 0;
d.basic_auth = !1;
d.genpw = !1;
d.pwprotect = !1;
d.isbookmark = !1;
d.last_touch = 0;
d.fav = !1;
d.autologin = 0;
d.never_autofill = 0;
d.id = c[f].getAttribute("aid");
d.fiid = c[f].getAttribute("aid");
d.sharerusername = ic(Zb(c[f].getAttribute("sharerusername")));
d.sharedfromaid = c[f].getAttribute("sharedfromaid");
d.sharemessage = c[f].getAttribute("sharemessage");
d.sharekeyenchex = c[f].getAttribute("sharekeyenchex");
d.sharekeyenchexsig = c[f].getAttribute("sharekeyenchexsig");
d.sharename = c[f].getAttribute("name");
d.sharegroup = c[f].getAttribute("group");
d.username = c[f].getAttribute("username");
d.password = c[f].getAttribute("password");
d.extra = c[f].getAttribute("extra");
d.shareautoaccept =
c[f].getAttribute("shareautoaccept");
d.attachkey = c[f].getAttribute("attachkey");
d.attachpresent = c[f].getAttribute("attachpresent");
d.shareafids = {};
if (G = c[f].getAttribute("numafids"))
for (n = 0; n < G; ++n) g = c[f].getAttribute("afid" + n), h = c[f].getAttribute("afid" + n + "v"), null != g && null != h && (d.shareafids[g] = h);
bd[d.id] = d
}
c = e.getElementsByTagName("shareeautopush");
for (f = 0; null != c && f < c.length; f++) {
d = new Gh;
d.fields = [];
d.otherfields = [];
G = !0;
g = "id aid sharekeyhexenc name group username password extra url rurl fav never_autofill pwprotect basic_auth autologin last_touch last_modified urid last_pw_change numf numof favico nexturid method is_http manual".split(" ");
for (n in g)
if (c[f].hasAttribute(g[n])) d[g[n]] = c[f].getAttribute(g[n]);
else if ("id" == g[n] || "aid" == g[n] || "sharekeyhexenc" == g[n]) {
ga("SHARE: shareeautopushes : error missing required arg=" + g[n], null);
G = !1;
break
} else d[g[n]] = null; if (G) {
G = null != d.numf ? d.numf : 0;
for (n = 0; n < G; ++n) g = {}, g.urid = c[f].getAttribute("f" + n + "urid"), g.name = c[f].getAttribute("f" + n + "name"), g.value = c[f].getAttribute("f" + n + "value"), g.type = c[f].getAttribute("f" + n + "type"), d.fields.push(g);
G = null != d.numof ? d.numof : 0;
for (n = 0; n < G; ++n) g = {}, g.urid =
c[f].getAttribute("of" + n + "urid"), g.name = c[f].getAttribute("of" + n + "name"), g.value = c[f].getAttribute("of" + n + "value"), g.type = c[f].getAttribute("of" + n + "type"), g.formname = c[f].getAttribute("of" + n + "formname"), d.otherfields.push(g);
"undefined" == typeof Pe[d.aid] && (Pe[d.aid] = []);
Pe[d.aid].push(d)
}
}
rr(e.getElementsByTagName("secprompts")[0], "xml");
if ($b(ha + "_lt.cac") && (e = Jb(ha + "_lt.cac"), !1 != e)) {
e = e.split("\n");
for (f = 0; f < e.length; f++) c = e[f].split(" "), 2 == c.length && "" != c[0] && "" != c[1] && (n = c[0], c = c[1], z[n] && c >
z[n].last_touch && (z[n].last_touch = c))
}
LP.lpGetCurrentWindow().setTimeout(function() {
LP.lpRebuildToolsMenu_all()
}, 0);
LP.lpDisplayAccounts_win();
ne = !0
} else ga("Problem in populateResponse. status=" + c.status + " ignorestatus: " + e, null), Ua("ErrorGetAcctsMsg");
return !0
}
function Vw(c, e, f, d, g, h, l, n, p, q, r, t, A, y, J, u, s, jd, ia, C, F, D) {
if (!n) return q && LP.lpClearCache(!0, !1, !1), !1;
try {
if (LP.isFennec && "undefined" != typeof Oe && null != Oe && 0 != Oe) {
var G = Math.round((new Date).getTime() / 1E3);
if (Oe < G) return q || (Sa(!1, "ff_trial"),
LP.alert(LP.lpgs("trialexpired"))), !1;
if (86400 <= G - os) {
var K = Math.round((Oe - G) / 86400);
LP.alert(LP.lpgs("trialnag1") + " " + K + " " + LP.lpgs(1 == K ? "day" : "days") + " " + LP.lpgs("trialnag2"));
os = G
}
}
if (null != se) {
var ea = parseInt(se);
0 < ea && ea < parseInt((new Date).getTime() / 1E3) && ("trueapi" == LP.getsinglefactortype() && LP.setsinglefactortype(""), "trueapi" == cc("type") && (jc.type = ""))
}
} catch (ra) {}
if (!LP.adminoverride.length && n && r) {
var Y = Ya(r);
if ("" != r && Q != Y) return ga("Encrypted username check failed: " + Q + " vs " + Y + " for " +
r + " local " + q, null), LP.lpClearCache(!0, !0, !1), Sa(!1, "ff_encusernamecheck2"), LP.alert(LP.lpgs("An error has been encountered while loading your sites. Please relogin.")), !1
}
if (n) {
var v = $b(ha + "_lps.act.sxml") || $b(ha + "_lps.act.xml");
LP.lpdolostpwotp && !v && !LP.lpprefsHasUserValue("StoreLostPWOTP") && LP.lpprefsSetBoolPref("StoreLostPWOTP", !0)
}
Zd = y.maxid;
!q && n && Yn(p, null, "parse_getaccts.js");
if (0 < n) {
var E = ai;
Yk = null != E ? E : 0;
var H = dh;
Xk = null != H ? H : 0;
vb = parseInt(dl(p));
q || (kc = vb)
}
var L = "",
Z = !1;
LP.lpprefsHasUserValue("identity") &&
(L = LP.lpprefsGetCharPref("identity"));
for (var M = 0; M < g.length; M++) {
var W = new Dq;
W.iid = g[M].iid;
W.iname = Ya(g[M].iname);
W.aids = g[M].aids;
W.ffids = g[M].ffids;
null == W.ffids && (W.ffids = "");
W.pwprotect = g[M].pw_prompt;
W.appaids = g[M].appaids;
Oa[Oa.length] = W;
L == W.iid && (Z = !0)
}
Oa.sort(sr);
pl();
if (!Z && "" != L) return L = "", LP.lpIdentityHelper("", !0), LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_badident"), LP.lpalert_ex(LP.lpgs("Your selected Identity no longer exists. Defaulting to 'All' and logging off.")), !1;
c.sort(jn);
e.sort(jn);
ia.sort(jn);
for (M = 0; M < ia.length; M++)
if (LP.IdentityAppAidIsOk(L, ia[M].appaid)) {
ia[M].appname = Kb(ia[M].appname);
ia[M].extra = Ha(ia[M].extra);
for (var ca = 0; ca < ia[M].fields.length; ca++) ia[M].fields[ca].value = Ha(ia[M].fields[ca].value);
qb[ia[M].appaid] = ia[M]
}
for (ca = 1; 2 >= ca; ca++)
for (var Ma = 1 == ca ? c : e, M = 0; null != Ma && M < Ma.length; M++) {
var w = Ma[M].aid;
if (LP.IdentityIsOk(L, w)) {
var ba = Ma[M].name,
V = Ma[M].urid,
Qa = Kb(Ma[M].url),
ja = Ma[M].fav,
U = Ha(Ma[M].extra),
T = Ma[M].autologin ? "1" : "0",
P = 1 == parseInt(Ma[M].basic_auth),
ma = Ma[M].sn,
na = Ma[M].group,
na = "" == na && !ma ? LP.get_null_group() : "" == na && ma ? LP.lpgs("SecureNotes") : na,
pa = Ma[M].genpw,
wa = Ma[M].never_autofill ? "1" : "0",
ua = Ma[M].last_touch,
qa = Aj(Ma[M].realm_data, !0, Ma[M], B),
xa = Ma[M].sharedfromaid,
sa = Ma[M].pwprotect,
fa = {
aid: w,
manual: "1",
is_http: "0"
}, Wa = Ma[M].attachkey,
aa = Ma[M].attachpresent,
ab = Ma[M].noalert;
if (1 == parseInt(ja)) {
var X = new Zc;
X.id = w;
X.command = fa;
$a[$a.length] = X
}
var bb = new Yb;
bb.individualshare = "undefined" != typeof Ma[M].individualshare ? Ma[M].individualshare : !1;
bb.pendingshare = !1;
bb.name = ba;
bb.urid = V;
bb.id = w;
bb.url = Qa;
bb.manual = "1";
bb.is_http = "0";
bb.extra = U;
bb.fav = ja;
bb.favico = "0";
bb.autologin = T;
bb.basic_auth = P;
bb.group = na;
bb.fiid = w;
bb.genpw = pa;
bb.isbookmark = !1;
bb.never_autofill = wa;
bb.last_touch = ua;
bb.sn = ma;
bb.sharedfromaid = xa;
var va = bb.save_all = !1;
bb.pwprotect = sa;
bb.realm = qa;
bb.attachkey = Wa;
bb.attachpresent = aa;
bb.noalert = ab;
"undefined" != typeof Ma[M].sharefolderid && (bb.sharefolderid = Ma[M].sharefolderid);
"undefined" != typeof Ma[M].attachid && (bb.attachid =
Ma[M].attachid, bb.attachname = Ma[M].attachname);
bb.logins = [];
bb.otherlogins = [];
bb.fields = [];
var Aa = Ta(bb.url);
if (Ga && Aa) try {
od || (od = mc.parse(Zb(Jb("rfdefaults")))), od && "undefined" != typeof od[Aa] && (Ma[M].submit_id = od[Aa].submit_id, Ma[M].captcha_id = od[Aa].captcha_id, Ma[M].custom_js = od[Aa].custom_js)
} catch (ya) {}
for (var Va = 0; Va < Ma[M].fields.length; Va++) {
for (var za = Ma[M].fields[Va], Za = "1" == za.otherlogin ? bb.otherlogins : bb.logins, Fa = 0; Fa < Za.length && Za[Fa].urid != za.urid; Fa++);
if (Fa == Za.length) {
var Ca = new gd;
Ca.urid = za.urid;
Ca.url = "" != za.url ? Kb(za.url) : bb.url;
var Ua = xb(Ca.url);
Ca.server = Ua.host;
Ca.tld = sc(Ua.host, Ca.url);
var jb = nb(Ca.url, Ua);
pa || (Dc[Dc.length] = jb);
Ca.submit_id = Ma[M].submit_id;
Ca.captcha_id = Ma[M].captcha_id;
Ca.custom_js = Ma[M].custom_js;
Ca.username = Ha(Ma[M].username);
Ca.password = Ha(Ma[M].password);
Ca.openid_url = "";
Ca.method = Ma[M].method;
Ca.action = "undefined" != typeof Ma[M].action ? Ma[M].action : "";
Ca.unencryptedUsername = O(Ca.username, bb, B);
0 == Fa && (bb.username = Ca.username, bb.password = Ca.password,
bb.unencryptedUsername = Ca.unencryptedUsername);
Ca.uname = "";
Ca.pname = "";
Ca.oname = "";
Ca.exact_uname_found = !1;
Ca.exact_pname_found = !1;
Ca.fields = [];
Ca.otherfields = [];
Za[Za.length] = Ca
}
var Ca = Za[Fa],
Vb = new Nd;
Vb.name = za.name;
Vb.type = za.type;
Vb.value = za.value;
if ("email" == Vb.type || "tel" == Vb.type || "url" == Vb.type || "text" == Vb.type || "password" == Vb.type || "textarea" == Vb.type) Vb.value = Ha(Vb.value);
za.otherfield && (Vb.formname = za.formname);
Vb.ordernum = null;
if (("email" == Vb.type || "url" == Vb.type || "tel" == Vb.type || "text" ==
Vb.type) && "openid_url" != Vb.name)
if ("" != Ca.username && Vb.value == Ca.username) Ca.uname = Vb.name, Ca.exact_uname_found = !0;
else if (!Ca.exact_uname_found && ("" == Ca.pname || "" == Ca.uname)) Ca.uname = Vb.name;
"password" == Vb.type && ("" != Ca.password && Vb.value == Ca.password ? (Ca.pname = Vb.name, Ca.exact_pname_found = !0) : Ca.exact_pname_found || (Ca.pname = Vb.name));
if (("email" == Vb.type || "url" == Vb.type || "tel" == Vb.type || "text" == Vb.type) && "openid_url" == Vb.name) Ca.oname = Vb.name;
if ("radio" == Vb.type || "checkbox" == Vb.type)
if (Vb.checked =
za.checked, "radio" == Vb.type && !Vb.checked) continue;
za.otherfield && "0" == Ca.urid && !va && (bb.save_all = !0);
za.otherfield ? Ca.otherfields[Ca.otherfields.length] = Vb : (va = !0, bb.save_all = !1, Ca.fields[Ca.fields.length] = Vb)
}
0 == bb.logins.length && (Ca = new gd, Ca.urid = "0", Ca.url = bb.url, Ua = xb(Ca.url), Ca.server = Ua.host, Ca.tld = sc(Ua.host, Ca.url), jb = nb(Ca.url, Ua), pa || (Dc[Dc.length] = jb), Ca.submit_id = Ma[M].submit_id, Ca.captcha_id = Ma[M].captcha_id, Ca.custom_js = Ma[M].custom_js, Ca.username = Ha(Ma[M].username), Ca.password = Ha(Ma[M].password),
Ca.openid_url = "", Ca.method = Ma[M].method, Ca.action = "undefined" != typeof Ma[M].action ? Ma[M].action : "", Ca.unencryptedUsername = O(Ca.username, bb, B), bb.username = Ca.username, bb.password = Ca.password, bb.unencryptedUsername = Ca.unencryptedUsername, Ca.uname = "", Ca.pname = "", Ca.oname = "", Ca.exact_uname_found = !1, Ca.exact_pname_found = !1, Ca.fields = [], Ca.otherfields = [], bb.logins[bb.logins.length] = Ca);
bb.tld = Aa;
P && (te[w] = bb, te[w].last_time = 0, te[w].realm = qa);
bb.sn ? Ia[w] = bb : z[w] = bb;
tf++;
"undefined" == typeof la[Aa] && (la[Aa] = []);
la[Aa][w] = !0;
bb.genpw && (vf[w] = !0)
}
}
Qe && "function" == typeof Qe && (Qe(), Qe = null);
for (M = 0; null != l.neveraccounts && M < l.neveraccounts.length; M++) Qa = l.neveraccounts[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), Tc[Tc.length] = Qa;
for (M = 0; null != l.nevergenerates && M < l.nevergenerates.length; M++) Qa = l.nevergenerates[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), Ud[Ud.length] = Qa;
for (M = 0; null != l.neverformfills && M < l.neverformfills.length; M++) Qa = l.neverformfills[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), Vd[Vd.length] = Qa;
for (M = 0; null != l.neverautologins && M < l.neverautologins.length; M++) Qa = l.neverautologins[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), Od[Od.length] = Qa;
for (M = 0; null != l.nevershowicons && M < l.nevershowicons.length; M++) Qa = l.nevershowicons[M], -1 == Qa.indexOf(".") && (Qa = Kb(Qa)), Td[Td.length] = Qa;
for (M = 0; null != l.onlyaccounts && M < l.onlyaccounts.length; M++) Qa = l.onlyaccounts[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), mf[mf.length] =
Qa;
for (M = 0; null != l.onlygenerates && M < l.onlygenerates.length; M++) Qa = l.onlygenerates[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), qf[qf.length] = Qa;
for (M = 0; null != l.onlyformfills && M < l.onlyformfills.length; M++) Qa = l.onlyformfills[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), rf[rf.length] = Qa;
for (M = 0; null != l.onlyautologins && M < l.onlyautologins.length; M++) Qa = l.onlyautologins[M], -1 == Qa.indexOf(".") && -1 != Kb(Qa).indexOf(".") && (Qa = Kb(Qa)), of[of.length] = Qa;
for (M = 0; null != l.onlyshowicons &&
M < l.onlyshowicons.length; M++) Qa = l.onlyshowicons[M], -1 == Qa.indexOf(".") && (Qa = Kb(Qa)), sf[sf.length] = Qa;
for (M = 0; null != d && M < d.length; M++) {
var Da = d[M].ffid;
if (LP.IdentityFfidIsOk(L, Da)) {
var Ja = new cj;
"undefined" != typeof d[M].sharefolderid ? (Ja.sharefolderid = d[M].sharefolderid, Ja.group = d[M].group) : Ja.group = "";
Ja.ffid = Da;
Ja.profiletype = d[M].profiletype;
Ja.profilename = Aj(d[M].profilename, !0, d[M], B);
Ja.profilelanguage = Ha(d[M].profilelanguage);
Ja.firstname = Ha(d[M].firstname);
Ja.firstname2 = Ha(d[M].firstname2);
Ja.firstname3 = Ha(d[M].firstname3);
Ja.middlename = Ha(d[M].middlename);
Ja.lastname = Ha(d[M].lastname);
Ja.lastname2 = Ha(d[M].lastname2);
Ja.lastname3 = Ha(d[M].lastname3);
Ja.email = Ha(d[M].email);
Ja.mobileemail = Ha(d[M].mobileemail);
Ja.company = Ha(d[M].company);
Ja.ssn = Ha(d[M].ssn);
Ja.birthday = Ha(d[M].birthday);
Ja.address1 = Ha(d[M].address1);
Ja.address2 = Ha(d[M].address2);
Ja.address3 = Ha(d[M].address3);
Ja.title = Ha(d[M].title);
Ja.city = Ha(d[M].city);
Ja.county = Ha(d[M].county);
Ja.state = Ha(d[M].state);
Ja.state_name = Ha(d[M].state_name);
Ja.zip = Ha(d[M].zip);
Ja.country = Ha(d[M].country);
Ja.country_cc3l = Ha(d[M].country_cc3l);
Ja.country_name = Ha(d[M].country_name);
Ja.countryphone = Ha(d[M].phone3lcc);
Ja.countryevephone = Ha(d[M].evephone3lcc);
Ja.countryfaxphone = Ha(d[M].fax3lcc);
Ja.countrymobphone = Ha(d[M].mobilephone3lcc);
Ja.phone = Ha(d[M].phone);
Ja.fax = Ha(d[M].fax);
Ja.mobilephone = Ha(d[M].mobilephone);
Ja.evephone = Ha(d[M].evephone);
Ja.phoneext = Ha(d[M].phoneext);
Ja.evephoneext = Ha(d[M].eveext);
Ja.mobilephoneext = Ha(d[M].mobileext);
Ja.faxphoneext =
Ha(d[M].faxext);
Ja.ccname = Ha(d[M].ccname);
Ja.ccnum = Ha(d[M].ccnum);
Ja.ccstart = Ha(d[M].ccstart);
Ja.ccexp = Ha(d[M].ccexp);
Ja.cccsc = Ha(d[M].cccsc);
Ja.ccissuenum = Ha(d[M].ccissuenum);
Ja.username = Ha(d[M].username);
Ja.gender = Ha(d[M].gender);
Ja.pwprotect = d[M].pwprotect;
Ja.creditmon = d[M].creditmon;
Ja.timezone = Ha(d[M].timezone);
Ja.bankname = Ha(d[M].bankname);
Ja.bankacctnum = Ha(d[M].bankacctnum);
Ja.bankroutingnum = Ha(d[M].bankroutingnum);
Ja.customfields = [];
for (ca = 0; ca < d[M].custom_fields.length; ca++) {
var Pa = new Tm;
Pa.cfid = d[M].custom_fields[ca].cfid;
Pa.text = Ha(d[M].custom_fields[ca].text);
Pa.value = Ha(d[M].custom_fields[ca].value);
Pa.alttext = Ha(d[M].custom_fields[ca].alttext);
Ja.customfields[Ja.customfields.length] = Pa
}
Ja.notes = Ha(d[M].notes);
ka[ka.length] = Ja
}
}
ka.sort(bl);
Zh();
gb = h;
xd = J;
for (M in z)
if (Aa = z[M].tld, "undefined" != typeof gb[Aa]) {
var Ba = gb[Aa];
if ("undefined" != typeof gb[Ba])
for (ca = 0; ca < gb[Ba].length; ca++) {
var kb = gb[Ba][ca];
"undefined" == typeof la[kb] && (la[kb] = []);
la[kb][M] = !0
}
}
for (M = 0; null != t && M < t.length; M++) {
var Ib =
new Yb;
Ib.individualshare = !0;
Ib.pendingshare = !0;
Ib.logins = [];
Ib.otherlogins = [];
Ib.fields = [];
Ib.group = LP.lpgs("(New Pending Share Offers)");
Ib.name = LP.lpgs("Share offer from") + " " + ic(Zb(t[M].sharerusername));
Ib.is_http = !0;
Ib.favico = "";
Ib.last_time = 0;
Ib.sn = !1;
Ib.tld = "";
Ib.unencryptedUsername = "";
Ib.save_all = !1;
Ib.realm = "";
Ib.url = "";
Ib.urid = "";
Ib.manual = 0;
Ib.basic_auth = !1;
Ib.genpw = !1;
Ib.pwprotect = !1;
Ib.isbookmark = !1;
Ib.last_touch = 0;
Ib.fav = !1;
Ib.autologin = 0;
Ib.never_autofill = 0;
Ib.id = t[M].id;
Ib.fiid = t[M].id;
Ib.sharerusername = ic(Zb(t[M].sharerusername));
Ib.sharedfromaid = t[M].sharedfromaid;
Ib.sharemessage = t[M].sharemessage;
Ib.sharekeyenchex = t[M].sharekeyenchex;
Ib.sharekeyenchexsig = t[M].sharekeyenchexsig;
Ib.sharename = t[M].sharename;
Ib.sharegroup = t[M].sharegroup;
Ib.username = t[M].username;
Ib.password = t[M].password;
Ib.extra = t[M].extra;
Ib.shareautoaccept = t[M].shareautoaccept;
Ib.shareafids = t[M].shareafids;
Ib.attachkey = t[M].attachkey;
Ib.attachpresent = t[M].attachpresent;
bd[Ib.id] = Ib
}
for (var Xa = Pe, hb = 0; null != A &&
hb < A.length; hb++) {
var Ra = new Gh;
Ra.fields = [];
Ra.otherfields = [];
var eb = !0,
db = "id aid sharekeyhexenc name group username password extra url rurl fav never_autofill pwprotect basic_auth autologin last_touch last_modified urid last_pw_change numf numof favico nexturid method is_http manual".split(" "),
tc;
for (tc in db)
if ("undefined" != typeof A[hb][db[tc]]) Ra[db[tc]] = A[hb][db[tc]];
else if ("id" == db[tc] || "aid" == db[tc] || "sharekeyhexenc" == db[tc]) {
ga("SHARE: shareeautopushes : error missing required arg=" + db[tc],
null);
eb = !1;
break
} else Ra[db[tc]] = null; if (eb) {
var rb = null != Ra.numf ? Ra.numf : 0;
for (tc = 0; tc < rb; ++tc) {
var Ab = {};
Ab.urid = A[hb]["f" + tc + "urid"];
Ab.name = A[hb]["f" + tc + "name"];
Ab.value = A[hb]["f" + tc + "value"];
Ab.type = A[hb]["f" + tc + "type"];
Ra.fields.push(Ab)
}
var Mb = null != Ra.numof ? Ra.numof : 0;
for (tc = 0; tc < Mb; ++tc) {
var di = {};
di.urid = A[hb]["of" + tc + "urid"];
di.name = A[hb]["of" + tc + "name"];
di.value = A[hb]["of" + tc + "value"];
di.type = A[hb]["of" + tc + "type"];
di.formname = A[hb]["of" + tc + "formname"];
Ra.otherfields.push(di)
}
"undefined" ==
typeof Xa[Ra.aid] && (Xa[Ra.aid] = []);
Xa[Ra.aid].push(Ra)
}
}
Vc = f.login_site_prompt;
pe = f.edit_site_prompt;
uf = f.edit_sn_prompt;
Ke = f.view_pw_prompt;
qe = f.view_ff_prompt;
pj = f.improve;
qj = f.switch_identity_prompt;
el = f.multifactor_reprompt;
bo = f.company_login_site_prompt;
co = f.company_copyview_site_prompt;
var Rc = xl = s;
if (typeof Rc.allowmasterpasswordsave && "0" == Rc.allowmasterpasswordsave) {
LP.lpprefsSetBoolPref("rememberPassword", !1, !1);
var eo = Re(),
zb;
for (zb in eo) Q == ic(zb) && (eo[zb] = null);
hh(eo)
}
"undefined" != typeof Rc.logoffclosebrowser &&
"-1" != Rc.logoffclosebrowser && (LP.lpprefsSetBoolPref("logOffWhenCloseBrowser", !0), LP.lpprefsSetIntPref("logOffWhenCloseBrowserVal", parseInt(Rc.logoffclosebrowser)));
"undefined" != typeof Rc.logoffidle && "-1" != Rc.logoffidle && (LP.lpprefsSetBoolPref("idleLogoff", !0), LP.lpprefsSetIntPref("idleLogoffVal", parseInt(Rc.logoffidle)));
var Hb = 0;
"undefined" != typeof Rc.noexport && (Hb = Rc.noexport);
LP.lpprefsSetIntPref("noexport", Hb);
LP.sitepwlen = "string" == typeof Rc.sitepwlen && "" != Rc.sitepwlen ? mc.parse(Rc.sitepwlen) : [];
"undefined" != typeof Rc.hideidentities && (LP.lpprefsSetBoolPref("hideidentities", "1" == Rc.hideidentities, !1), LP.SetupUserPreferences(), pl());
LP.savesitestopersonal = "string" == typeof Rc.savesitestopersonal && "" != Rc.savesitestopersonal ? Rc.savesitestopersonal.split(",") : [];
if ($b(ha + "_lt.cac")) {
var Gb = Jb(ha + "_lt.cac");
if (!1 != Gb)
for (var pb = Gb.split("\n"), Ea = 0; Ea < pb.length; Ea++) {
var mb = pb[Ea].split(" ");
if (2 == mb.length && "" != mb[0] && "" != mb[1]) {
var ta = mb[0],
I = mb[1];
z[ta] && I > z[ta].last_touch && (z[ta].last_touch =
I)
}
}
}
LP.lpGetCurrentWindow().setTimeout(function() {
LP.lpRebuildToolsMenu_all()
}, 0);
LP.lpDisplayAccounts_win();
ne = !0;
"undefined" != typeof F && F.attachversion > dg && (dg = F.attachversion);
ps();
var ob = "string" == typeof g_username_hash ? g_username_hash : typeof ha ? ha : null,
sb = "undefined" != typeof g_local_accts_version ? g_local_accts_version : typeof vb ? vb : -1;
null == ob || qs(ob, sb, function(c) {
null == c && !0 != fo && (fo = !0, rs(Ka, null, function(c) {
g_aDictionary = c;
if (null != g_aDictionary) {
g_SFNames = [];
SharedAccounts = [];
go = [];
NonSharedAccounts = [];
g_aSites = [];
g_runtimems = (new Date).getTime();
g_shared_accounts = 0;
ih = [];
folderscores = [];
shareddictionary = [];
Ed = [];
sharedavgpasswordlength = [];
SharedPasswords = [];
sharedweak = [];
ue = [];
sharedavgstrength = [];
sharedcountscore = [];
sharedtotalscore = [];
SFNameToID = [];
AllSFIDs = [];
AllSFNames = [];
c = "undefined" != typeof g_sites ? g_sites : z;
var d = "undefined" != typeof g_shares ? g_shares : B,
e = "undefined" != typeof g_equivalentdomains ? g_equivalentdomains : gb,
f;
for (f in c)
if (c.hasOwnProperty(f))
if ("http://group" == c[f].url) c[f].aid ==
c[f].sharefolderid && (AllSFIDs[AllSFIDs.length] = f, AllSFNames[AllSFNames.length] = c[f].group, SFNameToID[c[f].group] = f);
else if ("http://sn" != c[f].url) {
var g = yb(d, c[f].group),
h = null != c[f].sharedfromaid && "" != c[f].sharedfromaid && "0" != c[f].sharedfromaid;
if (g || !h) g && (getsharedata = yb(d, c[f].group), sfname = getsharedata.decsharename, "undefined" == typeof SharedAccounts[sfname] && (g_SFNames[g_SFNames.length] = sfname, SharedAccounts[sfname] = [], SFNameToID[sfname] = c[f].sharefolderid), SharedAccounts[sfname][SharedAccounts[sfname].length] =
f, go[f] = sfname, g_shared_accounts++), g || (NonSharedAccounts[NonSharedAccounts.length] = f), h = {}, h.id = f, h.usernamedec = fb(c[f], 0), h.passworddec = fb(c[f], 1), h.passworddecfix = ic(h.passworddec), h.domain2lvl = h.realdomain2lvl = Ta(c[f].url), h.genpw = "undefined" != typeof c[f].genpw && 1 == c[f].genpw ? 1 : 0, g && (h.sfname = sfname), "undefined" != typeof e[h.domain2lvl] && (g = e[h.domain2lvl], "undefined" != typeof e[g] && (h.domain2lvl = e[g][0])), g_aSites[g_aSites.length] = h
}
g_numsites = g_aSites.length;
g_numSharedFolders = g_SFNames.length;
g_ind_accounts = NonSharedAccounts.length;
g_avgpasswordlength = g_numdictionary = g_numblanksites = g_numduppasswords = ei = g_numdupsites = eg = g_numweak = g_strengthscore = g_avgstrength = g_countscore = g_totalscore = g_runtimems = Bj = 0;
g_aPasswords = {};
g_allPasswords = {};
sharedpasswords = [];
a: {
try {
f = g = 0;
c = {};
d = {};
e = {};
for (oa = 0; oa < g_numsites; ++oa) {
var l = g_aSites[oa],
n = "undefined" != typeof l.sfname ? !0 : !1;
e[l.id] = l.domain2lvl;
var p = l.passworddec;
if ("undefined" != typeof l.genpw && 1 == l.genpw && !n)++g, c[l.id] = p;
else if ("undefined" ==
typeof l.genpw || 0 == l.genpw)++f, "undefined" == typeof d[p] && (d[p] = []), d[p].push(l.id);
p = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
var l = "",
q;
for (q in c) {
p = c[q];
if ("undefined" != typeof d[p]) {
var n = !1,
r;
for (r in d[p]) {
var t = d[p][r];
e[q].toLowerCase() == e[t].toLowerCase() && (n = !0)
}
n && (e[q].toLowerCase(), l += ("" == l ? "" : ",") + q)
}
p = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
try {
for (r in c) c[r] =
"xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
for (r in d) delete d[r];
r = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
d = {};
for (r = 0; r < f + 10; ++r) d["xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" + r] = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
} catch (u) {}
if ("" ==
l) {
jh();
break a
}
p = l;
if ("undefined" != typeof ischrome && ischrome || "undefined" != typeof Cj && Cj || "undefined" != typeof g_isopera && g_isopera || "undefined" != typeof g_ismaxthon && g_ismaxthon || "undefined" != typeof LP && "undefined" != typeof LP.lpMakeRequest) {
var A = LP.lp_base + "misc_challenge.php?lpnorefresh=1",
y = "cmd=deletegenpws&format=xml&ids=" + LP.en(p);
LP.lpMakeRequest(A, y, function(c) {
if (4 == c.readyState) {
if (200 == c.status && null != c.responseXML && null != c.responseXML.documentElement) {
var d = c.responseXML.documentElement.getElementsByTagName("ok");
c = "";
if (0 < d.length && (c = d[0].getAttribute("deletedids"), null != c && "" != c)) {
d = {};
c = c.split(":");
for (oa = 0; oa < c.length; ++oa) d[c[oa]] = 1;
ss(d);
return
}
}
jh()
}
})
} else "undefined" != typeof $ && "undefined" != typeof $.ajax && "undefined" != typeof g_token ? (y = {
cmd: "deletegenpws",
ids: p,
token: g_token
}, $.ajax({
global: !1,
type: "POST",
cache: !1,
dataType: "json",
url: "misc_challenge.php?lpnorefresh=1",
data: y,
success: function(c) {
!0 != c.success ? challengeerror(c) : ss(c.deletedids)
},
failure: challengeerror
})) : jh();
break a
} catch (J) {}
jh()
}
}
}))
});
"undefined" != typeof D && "function" == typeof ts && ts(D, function() {
LP.lpGetAccounts()
}, B);
if ("undefined" != typeof foundmsfi) {
postdata = "";
for (Ea = 0; Ea < msfids.length; Ea++) {
for (var Sb = msfids[Ea].shareid, Fd = "", M = 0; M < B.length; M++)
if (B[M].id == Sb) {
Fd = La.bin2hex(B[M].key);
decsharename = B[M].decsharename;
break
}
var Db = new ve,
cb;
a: {
for (var Nb = Db, N = msfids[Ea].key, R = fi.decode(N), R = wb.decode(R).toPrettyString(), R = -1 != R.indexOf("<br>") ? R.split(/<br>/) : R.split(/\n/), Qb = !1, ho = 0, lb = ["n", "e"], Ob = {}, Xb = 0; Xb < R.length; Xb++) {
var Gd =
R[Xb];
if (-1 != Gd.indexOf("STRING")) Qb = !0;
else if (Qb && -1 != Gd.indexOf("INTEGER")) {
var S = Gd.indexOf("@");
if (-1 == S) {
cb = !1;
break a
}
Gd = Gd.substring(S + 1);
Gd = Gd.split(/\+/);
if (3 != Gd.length) {
cb = !1;
break a
}
var S = 2 * Gd[0],
Na = 2 * Gd[1],
Gd = N.substring(S + Na, S + Na + 2 * Gd[2]);
Ob[lb[ho]] = Gd;
ho++
}
}
cb = Qb && ho == lb.length ? (Nb.setPublic(Ob.n, Ob.e), !0) : !1
}
if (cb) {
var ac = Db.encrypt(Fd),
Rb = da(decsharename, B[M].key);
postdata += "&sharekey" + Ea + "=" + encodeURIComponent(ac) + "&uid" + Ea + "=" + encodeURIComponent(msfids[Ea].uid);
postdata += "&shareid" +
Ea + "=" + encodeURIComponent(msfids[Ea].shareid);
postdata += "&decsharename" + Ea + "=" + encodeURIComponent(decsharename);
postdata += "&encsharename" + Ea + "=" + encodeURIComponent(Rb)
}
}
lpMakeRequest(base_url + "process_msf.php", postdata, null, null)
}
return !0
}
function us(c, e, f) {
var d = LP.make_lp_key(c, e),
g = [],
h = [],
l = [],
n = [];
if (!LP.reencrypt(g, z, d) || !LP.reencrypt(h, Ia, d) || !LP.reencrypt(l, ka, d) || !LP.reencrypt(n, qb, d)) return LP.alert(LP.lpgs("An error occurred")), !1;
Sb = ja;
Ub = rb(Sb);
var p = !0,
q = lc();
if (null == q) LP.alert(LP.lpgs("An error occurred"));
else {
var r = vb + 1,
t;
f ? (t = ja, ja = d, wf = rb(ja)) : (z = g, Ia = h, ka = l, qb = n, lp_local_Accts_version = r, tl = Fa(d), ja = d, wf = rb(ja), Q = c, ha = Fa(c));
for (var A in g) p && !nd(q, A, !1) && (p = !1), p && !Ad(q, g[A], !1) && (p = !1);
for (A in h) p && !nd(q, A, !1) && (p = !1), p && !Ad(q, h[A], !1) && (p = !1);
for (A in l) d = l[A].ffid, p && !kr(q, d, !1) && (p = !1), p && !lr(q, l[A], !1) && (p = !1);
for (A in n) p && !Qh(q, A, !1) && (p = !1), p && !oj(q, n[A], !1) && (p = !1);
q.encrypted_username = da(c, null, !0);
p && !Wd(q, r) && (p = !1);
p && (p = wc(q, null, "ChangeMasterPassword", f));
if (f) return ja = t, wf = rb(ja),
p;
p ? (pf = ja, Hh(), Gc("local_pwchange", {
data0: c,
data1: e
}), Fb(), LP.alert(LP.lpgs("Password updated!"))) : LP.alert(LP.lpgs("An error occurred"))
}
}
function vs(c, e, f, d) {
try {
for (var g in e)
if ("object" == typeof e[g]) {
var h = [];
if (!vs(h, e[g], f, "customfields" == g ? 2 : d || "fields" == g || "otherfields" == g)) return !1;
c[g] = h
} else {
var l;
if (!(l = kb(g, Ww))) {
var n;
if (n = "value" == g) {
var p;
if (!(p = 2 == d)) {
var q;
if (q = d) a: {
h = void 0;
for (h in e)
if ("type" == h && ("password" == e[h] || "text" == e[h] || "hidden" == e[h] || "textarea" == e[h] || "email" == e[h] ||
"tel" == e[h] || "url" == e[h])) {
q = !0;
break a
} else if ("id" == h) {
q = !0;
break a
}
q = !1
}
p = q
}
n = p
}
l = n
}
if (l) {
var r = Ya(e[g]);
if ((null == r || "" == r) && null != e[g] && "" != e[g]) return !1;
var t = da(r, f);
c[g] = t
} else c[g] = e[g]
}
} catch (A) {
return !1
}
return !0
}
function Fk() {
Dj = cg = eh = ""
}
function ws(c, e, f, d) {
if (ma()) {
c = c.toUpperCase();
var g = "" == c ? "" : Z.xCryptoHash(c);
c = "" == c ? "" : Z.xCryptoHash(e);
d = "undefined" == typeof d || 0 == d ? 0 : d;
e = "privatekeyenc=" + LP.en(e) + "&publickey=" + LP.en(f) + "&forcewriteprivate=" + LP.en(d) + "&userkeyhexhash=" + LP.en(g) +
"&privatekeyenchexhash=" + LP.en(c) + "&from=" + LP.en("ffplugin");
LP.lpMakeRequest(LP.lp_base + "uploadrsakeys.php", e, Xw)
}
}
function Xw(c) {
if (ma() && 4 == c.readyState)
if (200 != c.status) ga("lprsa_uploadrsakeysresponse : failed status=" + c.status);
else {
if (null != c.responseXML && null != c.responseXML.documentElement) {
var e = c.responseXML.documentElement.getElementsByTagName("ok"),
f = "";
if (0 < e.length && (f = e[0].getAttribute("privatekeyenchex"), null != f && "" != f)) {
Yw(f);
return
}
}
c = c.responseText;
null == c && (c = "null");
ga("lprsa_uploadrsakeysresponse : failed to process uploadrsakeys.php response. server returned responseText=" +
c, null)
}
}
function Yw(c) {
if (!ma()) return !1;
if (null == Q || "" == Q) return ga("lprsa_writersaprivatekeyenchextofile : lpusername is invalid"), !1;
var e = Z.xCryptoHash(rb(Q)) + "_ff_lppri.lps";
if ("" == e || null == e) return ga("lprsa_writersaprivatekeyenchextofile : could not form filenamehex : lpusername=" + Q), !1;
Rb(e, c);
var f = Jb(e);
return c != f ? (ga("lprsa_writersaprivatekeyenchextofile : failed to write to a file. filenamehex=" + e + " rsaprivatekeyenchex.length=" + c.length + " readbackhex.length=" + f.length, null), !1) : "" ==
Gg("writetofile", !0) ? (ga("lprsa_writersaprivatekeyenchextofile : failed to read back rsa file ===> THIS MEANS THAT WE SUCCESSFULLY DOWNLOADED THE RSA PRIVATE KEY FROM THE SERVER BUT FAILED TO DECRYPT IT!", null), !1) : !0
}
function Gg(c, e) {
if (!ma()) return "";
if (null == ja || "" == ja) return ga("lprsa_readrsaprivatekeyhexfromfile : lp_local_key is invalid"), "";
if (null == Q || "" == Q) return ga("lprsa_readrsaprivatekeyhexfromfile : lpusername is invalid"), "";
if (("undefined" == typeof e || !e) && "" != eh) return eh;
Fk();
var f =
Z.xCryptoHash(rb(Q)) + "_ff_lppri.lps";
if ("" == f || null == f) return ga("lprsa_readrsaprivatekeyhexfromfile : could not form filenamehex : reason=" + c + " lpusername=" + Q), "";
var d = !1;
try {
var g = oe(f, !0);
g.append(f);
g.exists() && (d = !0)
} catch (h) {}
if (!d) return "";
d = Jb(f);
if (!d || null == d || "" == d) return ga("lprsa_readrsaprivatekeyhexfromfile : could not read file : reason=" + c + " filenamehex=" + f), "";
var g = ja,
l = rb(g),
l = l.toUpperCase(),
n = Z.xCryptoDecrypt(l, d);
if ("" == n || null == n) return ga("lprsa_readrsaprivatekeyhexfromfile : failed to decrypt data reason=" +
c + " datahex.length=" + d.length + " userkeyhex.length=" + l.length), eb(f), "";
var p = Zb(n),
q = Zw(p);
if (null == q) return ga("lprsa_readrsaprivatekeyhexfromfile : failed to extract rsa key from file - did we change our password on another PC? reason=" + c + " userkeybin.length=" + g.length + " userkeyhex.length=" + l.length + " datahex.length=" + d.length + " decryptedhex.length=" + n.length + " decryptedbin.length=" + p.length), eb(f), "";
cg = d;
eh = q;
Dj = Fa(cg);
B && 1 == B.length && 0 == B[0].id && Fb();
return eh
}
function Fq() {
null == ha || "" == ha ?
ga("lprsa_clearcache : lpusername_hash is invalid") : (eb(ha + "_lppri.lps"), eb(ha + "_ff_lppri.lps"))
}
function Zw(c) {
if (38 >= c.length) return ga("lprsa_extractprivatekey : failed to extract rsaprivatekeyhex : length=" + c.length + " is too short"), null;
if (0 != c.indexOf("LastPassPrivateKey<")) return ga("lprsa_extractprivatekey : failed to extract rsaprivatekeyhex : expected_prefix='LastPassPrivateKey<' actual_prefix='" + c.substring(0, 19) + "'"), null;
var e = c.indexOf(">LastPassPrivateKey");
if (e != c.length - 19) return ga("lprsa_extractprivatekey : failed to extract rsaprivatekeyhex : expected_prefix='LastPassPrivateKey<' actual_prefix='" +
c.substring(0, 19) + "'"), null;
c = c.substring(19, e);
return 2E3 > c.length ? (ga("lprsa_extractprivatekey : failed to extract rsaprivatekeyhex : we expect a length of approx 2426 actual_length=" + c.length), null) : c
}
function io(c, e) {
if (!ma()) return ga("lprsa_encryptdata : Failed to load XPCOM"), !1;
var f = Z.xCryptoRSAEncrypt(c, e);
return "" != e && (null == f || "" == f) ? (ga("lprsa_encryptdata : Failed to rsaencrypt data using publickeyhex=" + c), !1) : f
}
function Ej(c) {
xs = "undefined" != typeof c && c ? 0 : (new Date).getTime()
}
function $w(c) {
if (4 ==
c.readyState)
if (200 != c.status) ga("lprsa_acceptpendingsharesresponse : request failed status=" + c.status);
else if (null == c.responseXML || null == c.responseXML.documentElement) ga("lprsa_acceptpendingsharesresponse : request failed xml invalid A text=" + c.responseText);
else {
var e = c.responseXML.documentElement.getElementsByTagName("ok");
!e || 0 == e.length ? ga("lprsa_acceptpendingsharesresponse : request failed xml invalid B text=" + c.responseText) : LP.lpGetAccounts()
}
}
function Fj(c) {
ys = "undefined" != typeof c && c ? 0 :
(new Date).getTime()
}
function ax(c) {
if (4 == c.readyState)
if (200 != c.status) ga("lprsa_acceptshareeautopushesresponse : request failed status=" + c.status);
else if (null == c.responseXML || null == c.responseXML.documentElement) ga("lprsa_acceptshareeautopushesresponse : request failed xml invalid A text=" + c.responseText);
else {
var e = c.responseXML.documentElement.getElementsByTagName("ok");
!e || 0 == e.length ? ga("lprsa_acceptshareeautopushesresponse : request failed xml invalid B text=" + c.responseText) : LP.lpGetAccounts()
}
}
function un(c, e) {
if (4 != c.readyState || 200 != c.status || null == c.responseXML || null == c.responseXML.documentElement || "undefined" == typeof e || null == e) return !1;
(new Date).getTime();
var f = e.url,
d = e.aid,
g = e.handler,
h = e.param,
d = "undefined" != typeof z[d] ? z[d] : "undefined" != typeof Ia[d] ? Ia[d] : null;
null == d && (d = {
name: "",
group: "",
username: "",
password: "",
extra: ""
});
d = bx(c, e, d);
if (!1 == d) return !1;
(new Date).getTime();
Gj = 0;
LP.lpMakeRequest(f, d, g, null, h);
return !0
}
function ve() {
this.n = null;
this.e = 0;
this.coeff = this.dmq1 = this.dmp1 =
this.q = this.p = this.d = null
}
function Gc(c, e) {
if ((!Ga || !("refresh_local" != c && "local_pwchange" != c)) && Z && gi) {
var f = "<" + c,
d;
if ("undefined" != typeof e)
for (d in e) f += " " + d + '="' + yl(e[d]) + '"';
Z.SendNamedPipeMessageToAll(f + "/>")
}
}
function zl(c) {
Eb.active = "1";
c = {
otp: "",
username: c
};
LP.lpGetCurrentWindow().openDialog(zb + "content/yubikey.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", c);
"undefined" != typeof c.label && (Wc.label = c.label);
Eb.active = null;
return c.otp
}
function Pb(c) {
return "undefined" == typeof Wc[c] ?
null : Wc[c]
}
function zs(c) {
Eb.active = "1";
c = {
otp: "",
username: c,
type: "googleauth"
};
if (LP.isFennecNative) {
var e = {
value: ""
}, f = {
value: !1
};
Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService).prompt(null, LP.lpgs("Google Authenticator"), null, e, LP.lpgs("Trust this device?"), f) ? (c.otp = e.value, f.value && (c.label = LP.lpgs("Firefox Mobile") + " - " + LP.getuuid())) : LP.confirm(LP.lpgs("Would you like to disable Google Authenticator authentication?")) && LP.lpbaseopen("lostkey.php?cmd=sendemail&username=" +
encodeURIComponent(Q) + "&type=googleauth")
} else LP.lpGetCurrentWindow().openDialog(zb + "content/yubikey.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", c);
"undefined" != typeof c.label && (le.label = c.label);
Eb.active = null;
return c.otp
}
function kh(c) {
return "undefined" == typeof le[c] ? null : le[c]
}
function Se(c) {
return "undefined" == typeof Hc[c] ? null : Hc[c]
}
function $d(c) {
return "undefined" == typeof $c[c] ? null : $c[c]
}
function jo(c) {
Eb.active = "1";
if (c && Ik) return c = Ik, Ik = null, c;
var e;
e = "";
for (var f = 0; 5 > f &&
"" == e; ++f)
for (var d = Components.classes["@mozilla.org/appshell/window-mediator;1"].getService(Components.interfaces.nsIWindowMediator).getEnumerator("navigator:browser"); d.hasMoreElements();) {
var g = d.getNext(),
h = g.gBrowser,
l = h.browsers.length;
if (0 < l)
for (l -= 1; 0 <= l; --l) {
var n = h.getBrowserAtIndex(l);
if (n) {
var p = n.currentURI.spec;
0 < p.indexOf("sesameotp=") && ("" == e && (e = p), h.selectedTab = h.tabContainer.childNodes[l], g.focus(), 1 < h.browsers.length ? h.removeCurrentTab() : n.loadURI("https://lastpass.com/home.php"))
}
}
}
"" !=
e ? (f = e.indexOf("sesameotp="), d = e.indexOf("&", f + 10), e = -1 != d ? e.substring(f + 10, d) : e.substring(f + 10)) : e = "";
if ("" != e) return e;
c = {
otp: "",
username: c
};
LP.lpGetCurrentWindow().openDialog(zb + "content/sesame.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", c);
"undefined" != typeof c.label && (Rd.label = c.label);
Eb.active = null;
return c.otp
}
function pc(c) {
return "undefined" == typeof Rd[c] ? null : Rd[c]
}
function As(c, e) {
Eb.active = "1";
if (c && Bs) return Bs;
var f = {
username: c,
challenge: e
};
LP.lpGetCurrentWindow().openDialog(zb +
"content/grid.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", f);
"undefined" != typeof f.label && (Eb.label = f.label);
Eb.active = null;
return f.values
}
function Yf(c) {
return "undefined" == typeof Eb[c] ? null : Eb[c]
}
function cc(c) {
return "undefined" == typeof jc[c] ? null : jc[c]
}
function ej() {
var c = {
pin: ""
};
LP.lpGetCurrentWindow().openDialog(zb + "content/omnikey.xul", "_blank", "resizable,chrome,titlebar,toolbar,centerscreen,modal", c);
return c.pin
}
function cx() {}
function ko(c) {
var e = !1,
f;
for (f in c.origvalues)
if (c.getElementById(f))
if ("string" ==
typeof c.origvalues[f] && c.getElementById(f).value != c.origvalues[f]) {
e = !0;
break
} else if ("boolean" == typeof c.origvalues[f] && c.getElementById(f).checked != c.origvalues[f]) {
e = !0;
break
}
return e
}
function Cs(c, e) {
if (null != LP.open_attach_target && "function" == typeof LP.open_attach_function) try {
LP.open_attach_function(c, e, LP.open_attach_target)
} catch (f) {} else LP.alert(LP.lpgs("Unexpected attachment error"), e);
Al(c, e)
}
function Al(c, e) {
c.getElementById("attachment_action_popup").hidePopup();
e.focus()
}
function Ds(c) {
0 ==
c.length ? c = Es : /[\;\!\$\|\*\?\&]/.test(c) ? (Cb(U("Suspicious characters found in selected filename, will not process it")), c = Fs) : c = /[\x00\x01\x02\x03\x04\x05\x06\x07\x08\x09\x0a\x0b\x0c\x0d\x0e\x0f\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1a\x1b\x1c\x1d\x1e\x1f\x7f]/.test(c) ? Gs : Hs;
return c
}
function Is(c, e, f) {
var d = c.getElementById("searchbox"),
g = "";
if (void 0 != typeof d) g = d.value.toLowerCase();
else return !1; if ("undefined" == typeof f || f == dx) f = lo;
if (0 >= xf.length) return 0 == Hj && LP.searchstart(c, e), !0;
var d =
c.getElementById("lpnotes"),
h = c.getElementById("searchmsg"),
l = Js(d.value.toLowerCase());
if (Bl != l || g != mo) return LP.searchstart(c, e), !0;
f == lo ? (Te++, Te >= xf.length && (Te = 0)) : (Te--, 0 > Te && (Te = xf.length - 1));
d.focus();
d.setSelectionRange(xf[Te], xf[Te] + Hj);
h.setAttribute("value", Te + 1 + "/" + xf.length);
return !0
}
function no(c) {
var e = c.getElementById("searchbox");
e.setAttribute("value", "");
e = c.getElementById("searchmsg");
e.setAttribute("value", "");
Ks();
e = c.getElementById("lpnotes");
e.selectionEnd = e.selectionStart
}
function Ks() {
xf = [];
Te = -1;
Bl = Hj = 0;
mo = ""
}
function Js(c, e) {
"undefined" == typeof e && (e = 0);
var f = 0;
e ^= -1;
for (var d = 0, g = c.length; d < g; d++) f = (e ^ c.charCodeAt(d)) & 255, f = "0x" + "00000000 77073096 EE0E612C 990951BA 076DC419 706AF48F E963A535 9E6495A3 0EDB8832 79DCB8A4 E0D5E91E 97D2D988 09B64C2B 7EB17CBD E7B82D07 90BF1D91 1DB71064 6AB020F2 F3B97148 84BE41DE 1ADAD47D 6DDDE4EB F4D4B551 83D385C7 136C9856 646BA8C0 FD62F97A 8A65C9EC 14015C4F 63066CD9 FA0F3D63 8D080DF5 3B6E20C8 4C69105E D56041E4 A2677172 3C03E4D1 4B04D447 D20D85FD A50AB56B 35B5A8FA 42B2986C DBBBC9D6 ACBCF940 32D86CE3 45DF5C75 DCD60DCF ABD13D59 26D930AC 51DE003A C8D75180 BFD06116 21B4F4B5 56B3C423 CFBA9599 B8BDA50F 2802B89E 5F058808 C60CD9B2 B10BE924 2F6F7C87 58684C11 C1611DAB B6662D3D 76DC4190 01DB7106 98D220BC EFD5102A 71B18589 06B6B51F 9FBFE4A5 E8B8D433 7807C9A2 0F00F934 9609A88E E10E9818 7F6A0DBB 086D3D2D 91646C97 E6635C01 6B6B51F4 1C6C6162 856530D8 F262004E 6C0695ED 1B01A57B 8208F4C1 F50FC457 65B0D9C6 12B7E950 8BBEB8EA FCB9887C 62DD1DDF 15DA2D49 8CD37CF3 FBD44C65 4DB26158 3AB551CE A3BC0074 D4BB30E2 4ADFA541 3DD895D7 A4D1C46D D3D6F4FB 4369E96A 346ED9FC AD678846 DA60B8D0 44042D73 33031DE5 AA0A4C5F DD0D7CC9 5005713C 270241AA BE0B1010 C90C2086 5768B525 206F85B3 B966D409 CE61E49F 5EDEF90E 29D9C998 B0D09822 C7D7A8B4 59B33D17 2EB40D81 B7BD5C3B C0BA6CAD EDB88320 9ABFB3B6 03B6E20C 74B1D29A EAD54739 9DD277AF 04DB2615 73DC1683 E3630B12 94643B84 0D6D6A3E 7A6A5AA8 E40ECF0B 9309FF9D 0A00AE27 7D079EB1 F00F9344 8708A3D2 1E01F268 6906C2FE F762575D 806567CB 196C3671 6E6B06E7 FED41B76 89D32BE0 10DA7A5A 67DD4ACC F9B9DF6F 8EBEEFF9 17B7BE43 60B08ED5 D6D6A3E8 A1D1937E 38D8C2C4 4FDFF252 D1BB67F1 A6BC5767 3FB506DD 48B2364B D80D2BDA AF0A1B4C 36034AF6 41047A60 DF60EFC3 A867DF55 316E8EEF 4669BE79 CB61B38C BC66831A 256FD2A0 5268E236 CC0C7795 BB0B4703 220216B9 5505262F C5BA3BBE B2BD0B28 2BB45A92 5CB36A04 C2D7FFA7 B5D0CF31 2CD99E8B 5BDEAE1D 9B64C2B0 EC63F226 756AA39C 026D930A 9C0906A9 EB0E363F 72076785 05005713 95BF4A82 E2B87A14 7BB12BAE 0CB61B38 92D28E9B E5D5BE0D 7CDCEFB7 0BDBDF21 86D3D2D4 F1D4E242 68DDB3F8 1FDA836E 81BE16CD F6B9265B 6FB077E1 18B74777 88085AE6 FF0F6A70 66063BCA 11010B5C 8F659EFF F862AE69 616BFFD3 166CCF45 A00AE278 D70DD2EE 4E048354 3903B3C2 A7672661 D06016F7 4969474D 3E6E77DB AED16A4A D9D65ADC 40DF0B66 37D83BF0 A9BCAE53 DEBB9EC5 47B2CF7F 30B5FFE9 BDBDF21C CABAC28A 53B39330 24B4A3A6 BAD03605 CDD70693 54DE5729 23D967BF B3667A2E C4614AB8 5D681B02 2A6F2B94 B40BBE37 C30C8EA1 5A05DF1B 2D02EF8D".substr(9 *
f, 8), e = e >>> 8 ^ f;
return e ^ -1
}
function ex(c) {
if (4 == c.readyState && 200 == c.status && c.responseText) {
var e = ec.getElementById("emailerrorrow");
e.setAttribute("hidden", !0);
c = c.responseText;
0 <= c.indexOf("ok") ? yf = "ok" : 0 <= c.indexOf("emailinvalid") ? yf = LP.lpgs("Invalid email address, try again") : 0 <= c.indexOf("mistype:") ? (yf = "ok", e.setAttribute("hidden", !1), ec.getElementById("emailerror").setAttribute("value", c.substr(8))) : yf = LP.lpgs("Email already in use, have you forgotten your password?")
}
}
function Ls() {
ec.getElementById("progresslabel").value =
LP.lpgs("Uploading Data");
var c = ic(ec.getElementById("email").value),
e = ec.getElementById("password").value,
f = LP.make_lp_key(c, e),
e = LP.make_lp_hash(c, f, e),
c = "wxusername=" + LP.en(c) + "&wxhash=" + LP.en(e) + "&data=" + LP.en(btoa(Ij));
LP.lpMakeRequest(LP.lp_base + "import_local.php", c, fx, Ms)
}
function gx(c) {
if (4 == c.readyState && 200 == c.status && c.responseText) {
c = c.responseText;
var e = "";
0 <= c.indexOf("ok") ? Ga ? Ls() : (ec.getElementById("progresslabel").value = LP.lpgs("Loggingin"), oo = !0, LP.lplogin(ec.getElementById("email").value,
ec.getElementById("password").value, "createaccount"), ec.getElementById("password").value = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx") : (0 <= c.indexOf("usernametaken") ? e = LP.lpgs("Email already in use, have you forgotten your password?") : 0 <= c.indexOf("usernameinvalid") || 0 <= c.indexOf("emailfailed") ? e = LP.lpgs("Invalid email address, try again") : (e = LP.lpgs("ErrorServerMsg"), ga("Got unknown response from create account: " +
c)), "" != e && po(e))
}
}
function fx(c) {
4 == c.readyState && (200 == c.status && c.responseText && 0 <= c.responseText.indexOf("ok") ? Ns() : Ms())
}
function Ms() {
LP.lpConfirmYesNo(LP.lpgs("An error occurred while uploading your data. Would you like to retry?"), $f) && Ls()
}
function po(c) {
LP.alert(c, $f);
ec.welcomestate = 0;
ec.getElementById("reenter").setAttribute("hidden", "true");
ec.getElementById("createprogress").setAttribute("hidden", "true");
LP.welcome_accept_click(ec, $f);
$f.focus()
}
function Ns() {
if (ec) {
for (var c = ec.getElementById("email").value,
e = lh(), f = Re(), d = 0; d < e.length; d++)
if (e[d] == c) {
e.splice(d, 1);
break
}
"undefined" != typeof f[c] && (f[c] = null);
e.unshift(c);
Jj(e);
hh(f);
ec.getElementById("disablemgr").checked && LP.lpmainprefs.setBoolPref("signon.rememberSignons", !1);
Ga && (hd && ma() && LP.lpis_mac && "function" == typeof Z.lpvt_store_data && Z.lpvt_store_data(encodeURIComponent(ic(ec.getElementById("email").value)) + "|" + encodeURIComponent(ec.getElementById("password").value), LP.lpgs("Swipe finger"), LP.lpgs("Swipe your finger on the fingerprint sensor"),
LP.lpgs("Cancel"), LP.lpgs("Swipe current user's finger")) && LP.setsinglefactortype("vtapi"), ec.getElementById("password").value = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", eb("LPISLOC"), ec.welcomestate = 7, ec.getElementById("createprogress").setAttribute("hidden", "true"));
LP.flush_prefs();
LP.welcome_accept_click(ec, $f)
}
}
function hx() {
po(LP.lpgs("ErrorServerMsg"))
}
function Jj(c) {
for (var e =
"", f = "", d = 0; d < c.length; d++) e += f + encodeURIComponent(c[d]), f = "|";
LP.lpprefsSetCharPref("loginusers", e, !1)
}
function hh(c) {
var e = "",
f = "",
d;
for (d in c)
if (null != c[d]) var g = c[d],
h = Zb(Fa(d)), g = da(g, h), e = e + (f + encodeURIComponent(d) + "=" + encodeURIComponent(g)), f = "|";
c = Tf(e);
LP.lpprefsSetCharPref("loginpws", c, !1)
}
function Da(c) {
return "undefined" != typeof LP ? LP.lpgs(c) : U(c)
}
function Os() {
if ("undefined" == typeof ba || null == ba) {
ba = [];
var c;
c = new jb;
c.name = "(-12:00) " + Da("International Date Line West");
c.value = "-12:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-11:00) " + Da("Midway Island, Samoa");
c.value = "-11:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-10:00) " + Da("Hawaii");
c.value = "-10:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-09:00) " + Da("Alaska");
c.value = "-09:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-08:00) " + Da("Pacific Time (US & Canada)");
c.value = "-08:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-07:00) " + Da("Arizona");
c.value = "-07:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-07:00) " + Da("Mountain Time (US & Canada)");
c.value =
"-07:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-06:00) " + Da("Central America, Saskatchewan");
c.value = "-06:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-06:00) " + Da("Central Time (US & Canada), Guadalajara, Mexico City");
c.value = "-06:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-05:00) " + Da("Indiana, Bogota, Lima, Quito, Rio Branco");
c.value = "-05:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-05:00) " + Da("Eastern Time (US & Canada)");
c.value = "-05:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-04:30) " + Da("Caracas");
c.value =
"-04:30,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-04:00) " + Da("Atlantic Time (Canada), Manaus, Santiago");
c.value = "-04:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-04:00) " + Da("La Paz");
c.value = "-04:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(-03:30) " + Da("Newfoundland");
c.value = "-03:30,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-03:00) " + Da("Greenland, Brasilia, Montevideo");
c.value = "-03:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-03:00) " + Da("Buenos Aires, Georgetown");
c.value = "-03:00,0";
ba[ba.length] = c;
c = new jb;
c.name =
"(-02:00) " + Da("Mid-Atlantic");
c.value = "-02:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-01:00) " + Da("Azores");
c.value = "-01:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(-01:00) " + Da("Cape Verde Is.");
c.value = "-01:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(00:00) " + Da("Casablanca, Monrovia, Reykjavik");
c.value = "00:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(00:00) " + Da("GMT Dublin, Edinburgh, Lisbon, London");
c.value = "00:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+01:00) " + Da("Amsterdam, Berlin, Rome, Vienna, Prague, Brussels");
c.value = "+01:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+01:00) " + Da("West Central Africa");
c.value = "+01:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+02:00) " + Da("Amman, Athens, Istanbul, Beirut, Cairo, Jerusalem");
c.value = "+02:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+02:00) " + Da("Harare, Pretoria");
c.value = "+02:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+03:00) " + Da("Baghdad");
c.value = "+03:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+03:00) " + Da("Kuwait, Riyadh, Nairobi, Tbilisi");
c.value = "+03:00,0";
ba[ba.length] =
c;
c = new jb;
c.name = "(+03:30) " + Da("Tehran");
c.value = "+03:30,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+04:00) " + Da("Abu Dhabi, Muscat, Moscow, St. Petersburg, Volgograd");
c.value = "+04:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+04:00) " + Da("Baku, Yerevan");
c.value = "+04:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+04:30) " + Da("Kabul");
c.value = "+04:30,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+05:00) " + Da("GMT+5");
c.value = "+05:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+05:00) " + Da("Islamabad, Karachi, Tashkent");
c.value =
"+05:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+05:30) " + Da("Chennai, Kolkata, Mumbai, New Delhi, Sri Jayawardenepura");
c.value = "+05:30,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+05:45) " + Da("Kathmandu");
c.value = "+05:45,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+06:00) " + Da("Astana, Dhaka, Ekaterinburg");
c.value = "+06:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+06:00) " + Da("Almaty");
c.value = "+06:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+06:30) " + Da("Yangon (Rangoon)");
c.value = "+06:30,0";
ba[ba.length] = c;
c = new jb;
c.name =
"(+07:00) " + Da("GMT+7");
c.value = "+07:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+07:00) " + Da("Bangkok, Hanoi, Jakarta, Novosibirsk");
c.value = "+07:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+08:00) " + Da("Beijing, Hong Kong, Singapore, Taipei, Krasnoyarsk");
c.value = "+08:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+08:00) " + Da("Ulaan Bataar, Perth");
c.value = "+08:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+09:00) " + Da("GMT+9");
c.value = "+09:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+09:00) " + Da("Seoul, Osaka, Sapporo, Tokyo, Irkutsk");
c.value = "+09:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+09:30) " + Da("Darwin");
c.value = "+09:30,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+09:30) " + Da("Adelaide");
c.value = "+09:30,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+10:00) " + Da("Brisbane, Guam, Port Moresby, Yakutsk");
c.value = "+10:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+10:00) " + Da("Canberra, Melbourne, Sydney, Hobart");
c.value = "+10:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+11:00) " + Da("Magadan, Solomon Is., New Caledonia, Vladivostok");
c.value = "+11:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+12:00) " + Da("Auckland, Wellington");
c.value = "+12:00,1";
ba[ba.length] = c;
c = new jb;
c.name = "(+12:00) " + Da("Fiji, Kamchatka, Marshall Is.");
c.value = "+12:00,0";
ba[ba.length] = c;
c = new jb;
c.name = "(+13:00) " + Da("Nuku'alofa");
c.value = "+13:00,0";
ba[ba.length] = c
}
}
function Ps(c, e) {
var f = c.getElementById("lpstatepopup"),
d = 0,
g = L;
"undefined" != typeof hi[e] && (g = hi[e]);
for (var h = f.childNodes.length - 1; 0 <= h; h--) f.removeChild(f.childNodes.item(h));
for (h = 0; h < g.length; h++) {
if (g[h].ordernum !=
d) {
var l = c.createElement("menuitem");
l.setAttribute("label", "-----");
l.setAttribute("value", "");
f.appendChild(l);
d = g[h].ordernum
}
l = c.createElement("menuitem");
l.setAttribute("label", g[h].name);
l.setAttribute("value", g[h].code);
f.appendChild(l)
}
}
function fg(c, e) {
var f, d, g, h, l, n;
if ("phone" == e) f = "lpphone", d = "lpcountryphone", g = "lpphone_npa", h = "lpphone_nxx", l = "lpphone_xxxx", n = "lpphone_intl";
else if ("evephone" == e) f = "lpevephone", d = "lpcountryevephone", g = "lpevephone_npa", h = "lpevephone_nxx", l = "lpevephone_xxxx",
n = "lpevephone_intl";
else if ("fax" == e) f = "lpfax", d = "lpcountryfaxphone", g = "lpfax_npa", h = "lpfax_nxx", l = "lpfax_xxxx", n = "lpfax_intl";
else if ("mobilephone" == e) f = "lpmobilephone", d = "lpcountrymobphone", g = "lpmobilephone_npa", h = "lpmobilephone_nxx", l = "lpmobilephone_xxxx", n = "lpmobilephone_intl";
else return;
c.getElementById(f).style.display = "none";
f = c.getElementById(f).value;
var p = c.getElementById(d).value,
q = "";
if ("" == f) {
d = c.getElementById(d);
a: {
for (g = 0; g < s.length; g++)
if (s[g].cc2l == c.defaultcountry) {
g = s[g].cc3l;
break a
}
g = s[0].cc3l
}
d.value = g
} else {
for (var r = 0; r < s.length; ++r)
if (s[r].cc3l == p) {
q = s[r].phone;
break
}
if ("" == q || 0 != f.indexOf(q))
if ("1" == q || 0 == f.indexOf("1")) c.getElementById(g).value = f.substring(1, 4), c.getElementById(h).value = f.substring(4, 7), c.getElementById(l).value = f.substring(7, 11), c.getElementById(d).value = "USA";
else {
for (r = 0; r < s.length; ++r)
if (0 == f.indexOf(s[r].phone)) {
f = f.substring(s[r].phone.length);
c.getElementById(n).value = f;
c.getElementById(d).value = s[r].cc3l;
LP.formfill_fix(c, e);
return
}
c.getElementById(d).value =
""
} else "1" == q ? (c.getElementById(g).value = f.substring(1, 4), c.getElementById(h).value = f.substring(4, 7), c.getElementById(l).value = f.substring(7, 11)) : (f = f.substring(q.length), c.getElementById(n).value = f), c.getElementById(d).value = p
}
LP.formfill_fix(c, e)
}
function Ue(c, e) {
var f;
if ("phone" == e) f = "lpcountryphone";
else if ("evephone" == e) f = "lpcountryevephone";
else if ("fax" == e) f = "lpcountryfaxphone";
else if ("mobilephone" == e) f = "lpcountrymobphone";
else return "";
return c.getElementById(f).value
}
function gg(c, e) {
var f =
Ue(c, e);
if ("" == f) return "";
var d, g, h, l;
if ("phone" == e) d = "lpphone_npa", g = "lpphone_nxx", h = "lpphone_xxxx", l = "lpphone_intl";
else if ("evephone" == e) d = "lpevephone_npa", g = "lpevephone_nxx", h = "lpevephone_xxxx", l = "lpevephone_intl";
else if ("fax" == e) d = "lpfax_npa", g = "lpfax_nxx", h = "lpfax_xxxx", l = "lpfax_intl";
else if ("mobilephone" == e) d = "lpmobilephone_npa", g = "lpmobilephone_nxx", h = "lpmobilephone_xxxx", l = "lpmobilephone_intl";
else return;
for (var n = 0; n < s.length; ++n)
if (s[n].cc3l == f)
if (f = s[n].phone, "1" == f)
if ("" == c.getElementById(d).value &&
"" == c.getElementById(g).value && "" == c.getElementById(h).value) break;
else return d = f + c.getElementById(d).value + c.getElementById(g).value + c.getElementById(h).value, 11 != d.length && (d = "invalid"), d;
else if ("" == c.getElementById(l).value) break;
else return d = c.getElementById(l).value, d = d.replace("-", ""), d = d.replace("(", ""), d = d.replace(")", ""), d = d.replace(".", ""), d = d.replace(" ", ""), f + d;
return ""
}
function ii(c, e) {
c.getElementById(e).style.MozAppearance = "none";
c.getElementById(e).style.backgroundColor = "#FFCBD6"
}
function zc(c, e) {
c.getElementById(e).style.MozAppearance = "";
c.getElementById(e).style.backgroundColor = ""
}
function Cl(c, e) {
var f = 0;
switch (e) {
case "address":
f = 0;
break;
case "personal":
f = 0;
break;
case "contact":
f = 1
}
c.getElementById("fftabs").selectedIndex = f
}
function qo(c) {
for (var e = c.getElementById("lpcountryphone").value, f = "", d = 0; d < s.length; ++d)
if (s[d].cc3l == e) {
f = s[d].phone;
break
}
var e = c.getElementById("lpcountryphone").value,
d = c.getElementById("lpphone_npa").value,
g = c.getElementById("lpphone_nxx").value;
c = c.getElementById("lpphone_xxxx").value;
c = (f + d + g + c).replace(/\D/g, "");
return 1 != f || "USA" != e ? !1 : c
}
function Dl(c) {
return c.match(/^\d+$/) ? c.match(/^1/) && !c.match(/^1(?:[2-9]\d{2}){2}\d{4}$/) ? !1 : !0 : !1
}
function Qs(c, e, f) {
for (var d = "undefined" != typeof f && "" != f ? f : "", g = c.getElementById("lpprofilelanguage").value, h = null, l = 0; l < s.length; l++)
if (s[l].cc2l == c.getElementById("lpcountry").value) {
h = s[l];
break
}
var n = gg(c, "phone"),
p = gg(c, "evephone"),
q = gg(c, "fax"),
r = gg(c, "mobilephone"),
t = "" != n ? Ue(c, "phone") : "",
A = "" !=
p ? Ue(c, "evephone") : "",
y = "" != q ? Ue(c, "fax") : "",
J = "" != r ? Ue(c, "mobilephone") : "";
f = new cj;
f.group = "";
for (l = 0; l < ka.length; l++) ka[l].ffid == c.orig_formfill_id && "undefined" != typeof ka[l].sharefolderid && (f.sharefolderid = ka[l].sharefolderid, f.group = ka[l].group);
f.ffid = c.formfill_id;
var u = "ffid=" + LP.en(f.ffid);
f.profiletype = c.formfill_profiletype;
u += "&profiletype=" + LP.en(f.profiletype);
f.profilename = c.getElementById("lpprofilename").value;
u += "&profilename=" + LP.en(wa(f.profilename, f, B));
f.profilelanguage = wa(c.getElementById("lpprofilelanguage").value,
f, B);
u += "&profilelanguage=" + LP.en(f.profilelanguage);
f.firstname = "ja-JP" != g ? wa(c.getElementById("lpfirstname").value, f, B) : wa(c.getElementById("lpfirstnameja1").value, f, B);
u += "&firstname=" + LP.en(f.firstname);
f.middlename = wa(c.getElementById("lpmiddlename").value, f, B);
u += "&middlename=" + LP.en(f.middlename);
f.lastname = "ja-JP" != g ? wa(c.getElementById("lplastname").value, f, B) : wa(c.getElementById("lplastnameja1").value, f, B);
u += "&lastname=" + LP.en(f.lastname);
f.lastname2 = "ja-JP" != g ? wa(c.getElementById("lplastname2").value,
f, B) : wa(c.getElementById("lplastnameja2").value, f, B);
u += "&lastname2=" + LP.en(f.lastname2);
f.firstname2 = wa(c.getElementById("lpfirstnameja2").value, f, B);
u += "&firstname2=" + LP.en(f.firstname2);
f.firstname3 = wa(c.getElementById("lpfirstnameja3").value, f, B);
u += "&firstname3=" + LP.en(f.firstname3);
f.lastname3 = wa(c.getElementById("lplastnameja3").value, f, B);
u += "&lastname3=" + LP.en(f.lastname3);
f.email = wa(c.getElementById("lpemail").value, f, B);
u += "&email=" + LP.en(f.email);
f.mobileemail = wa(c.getElementById("lpmobileemail").value,
f, B);
u += "&mobileemail=" + LP.en(f.mobileemail);
f.company = wa(c.getElementById("lpcompany").value, f, B);
u += "&company=" + LP.en(f.company);
f.ssn = wa(c.getElementById("lpssn").value, f, B);
u += "&ssn=" + LP.en(f.ssn);
f.birthday = "" != c.getElementById("lpbirthyear").value && "" != c.getElementById("lpbirthmonth").value && "" != c.getElementById("lpbirthday").value ? wa(c.getElementById("lpbirthyear").value + "-" + c.getElementById("lpbirthmonth").value + "-" + c.getElementById("lpbirthday").value, f, B) : "";
u += "&birthday=" + LP.en(f.birthday);
f.gender = wa(c.getElementById("lpgender").value, f, B);
u += "&gender=" + LP.en(f.gender);
f.title = wa(c.getElementById("lptitle").value, f, B);
u += "&title=" + LP.en(f.title);
f.address1 = wa(c.getElementById("lpaddress1").value, f, B);
u += "&address1=" + LP.en(f.address1);
f.address2 = wa(c.getElementById("lpaddress2").value, f, B);
u += "&address2=" + LP.en(f.address2);
f.address3 = wa(c.getElementById("lpaddress3").value, f, B);
u += "&address3=" + LP.en(f.address3);
f.city = wa(c.getElementById("lpcity").value, f, B);
u += "&city=" + LP.en(f.city);
f.county = wa(c.getElementById("lpcounty").value, f, B);
u += "&county=" + LP.en(f.county);
f.state_name = wa(c.getElementById("lpstate").label, f, B);
u += "&state_name=" + LP.en(f.state_name);
g = c.getElementById("lpstate").value;
for (l = 0; l < L.length; l++)
if (L[l].name.toLowerCase() == g.toLowerCase()) {
g = L[l].code;
break
}
f.state = wa(g, f, B);
u += "&state=" + LP.en(f.state);
f.zip = wa(c.getElementById("lpzip").value, f, B);
u += "&zip=" + LP.en(f.zip);
"" != d && (u += "&newffid=" + LP.en(d));
null == h ? f.country = f.country_cc3l = f.country_name = "" : (f.country =
wa(h.cc2l, f, B), f.country_cc3l = wa(h.cc3l, f, B), f.country_name = wa(h.name, f, B));
u += "&country=" + LP.en(f.country);
u += "&country_cc3l=" + LP.en(f.country_cc3l);
u += "&country_name=" + LP.en(f.country_name);
f.countryphone = wa(t, f, B);
u += "&phone3lcc=" + LP.en(wa(t, f, B));
f.countryevephone = wa(A, f, B);
u += "&evephone3lcc=" + LP.en(wa(A, f, B));
f.countryfaxphone = wa(y, f, B);
u += "&fax3lcc=" + LP.en(wa(y, f, B));
f.countrymobphone = wa(J, f, B);
u += "&mobilephone3lcc=" + LP.en(wa(J, f, B));
f.phone = wa(n, f, B);
f.evephone = wa(p, f, B);
f.fax = wa(q, f, B);
f.mobilephone =
wa(r, f, B);
u += "&phone=" + LP.en(f.phone);
u += "&evephone=" + LP.en(f.evephone);
u += "&fax=" + LP.en(f.fax);
u += "&mobilephone=" + LP.en(f.mobilephone);
f.phoneext = wa(c.getElementById("lpphoneext").value, f, B);
f.evephoneext = wa(c.getElementById("lpevephoneext").value, f, B);
f.faxphoneext = wa(c.getElementById("lpfaxphoneext").value, f, B);
f.mobilephoneext = wa(c.getElementById("lpmobphoneext").value, f, B);
u += "&phoneext=" + LP.en(f.phoneext);
u += "&eveext=" + LP.en(f.evephoneext);
u += "&faxext=" + LP.en(f.faxphoneext);
u += "&mobileext=" +
LP.en(f.mobilephoneext);
f.ccname = wa(c.getElementById("lpccname").value, f, B);
u += "&ccname=" + LP.en(f.ccname);
f.ccnum = wa(c.getElementById("lpccnum").value, f, B);
u += "&ccnum=" + LP.en(f.ccnum);
f.ccstart = "" != c.getElementById("lpccstartyear").value && "" != c.getElementById("lpccstartmonth").value ? wa(c.getElementById("lpccstartyear").value + "-" + c.getElementById("lpccstartmonth").value + "-01", f, B) : "";
u += "&ccstart=" + LP.en(f.ccstart);
f.ccexp = "" != c.getElementById("lpccexpyear").value && "" != c.getElementById("lpccexpmonth").value ?
wa(c.getElementById("lpccexpyear").value + "-" + c.getElementById("lpccexpmonth").value + "-01", f, B) : "";
u += "&ccexp=" + LP.en(f.ccexp);
f.cccsc = wa(c.getElementById("lpcccsc").value, f, B);
u += "&cccsc=" + LP.en(f.cccsc);
f.ccissuenum = wa(c.getElementById("lpccissuenum").value, f, B);
u += "&ccissuenum=" + LP.en(f.ccissuenum);
f.username = wa(c.getElementById("lpusername").value, f, B);
u += "&username=" + LP.en(f.username);
f.pwprotect = c.getElementById("lppwprotect").checked;
f.pwprotect && (u += "&pwprotect=on");
f.creditmon = c.getElementById("lpcreditmon").checked;
f.creditmon && (u += "&creditmon=on");
f.timezone = wa(c.getElementById("lptimezone").value, f, B);
u += "&timezone=" + LP.en(f.timezone);
f.bankname = wa(c.getElementById("lpbankname").value, f, B);
u += "&bankname=" + LP.en(f.bankname);
f.bankacctnum = wa(c.getElementById("lpbankacctnum").value, f, B);
u += "&bankacctnum=" + LP.en(f.bankacctnum);
f.bankroutingnum = wa(c.getElementById("lpbankroutingnum").value, f, B);
u += "&bankroutingnum=" + LP.en(f.bankroutingnum);
f.customfields = [];
for (l = 1; l <= c.formfill_numcustomfields; l++)
if (d = new Tm,
d.cfid = c.formfill_cfids[l], u += "&customfield" + l + "cfid=" + LP.en(d.cfid), d.text = wa(c.getElementById("customfield" + l + "text").value, f, B), u += "&customfield" + l + "text=" + LP.en(d.text), d.value = wa(c.getElementById("customfield" + l + "value").value, f, B), u += "&customfield" + l + "value=" + LP.en(d.value), d.alttext = wa(c.getElementById("customfield" + l + "alttext").value, f, B), u += "&customfield" + l + "alttext=" + LP.en(d.alttext), "" != d.text || "" != d.value || "" != d.alttext) f.customfields[f.customfields.length] = d;
f.notes = wa(c.getElementById("lpnotes").value,
f, B);
u += "&notes=" + LP.en(f.notes);
u += LP.GetIdentityParam();
l = yb(B, f.group);
u += !1 == l ? "" : "&sharedfolderid=" + LP.en(l.id);
if (0 != c.formfill_id) {
for (l = 0; l < ka.length; l++)
if (ka[l].ffid == c.formfill_id) {
ka.splice(l, 1);
break
}
ka[ka.length] = f;
ka.sort(bl);
ne = !0;
Zh();
LP.lpRecheckTabs()
}
LP.lpMakeRequest(LP.lp_base + "formfill.php", u, jr, null, f);
LP.last_dialog_close = (new Date).getTime();
e.close();
return !0
}
function El(c, e, f) {
for (var d = [], g = 0; g < c.length; g++) {
var h = c[g];
if (h.name != e || !(h.value == f || null == h.value && "" == f ||
"" == h.value && null == f)) d[d.length] = h
}
return d
}
function ro(c) {
var e;
e = c.getElementById("info.box");
if (null == e) {
e = c.getElementById("infoContainer");
c = e.getElementsByTagName("description");
if (3 == c.length) return c[1 + LP.lpis_mac].firstChild.nodeValue;
if (2 == c.length) return c[1].firstChild.nodeValue
}
return e.getElementsByTagName("description")[0].firstChild.nodeValue
}
function Rs(c) {
(c = c.match(/"(.*)"/)) && ae(c[1].replace(/\s*\[[0-9:]+\]\s*/g, ""));
return ""
}
function Ss(c) {
c = ro(c);
c = c.replace(/\u201E|\u201C|\u201A|\u2018|\u203A|\u2039|\u2019|\u00AB|\u00BB/g,
"");
var e = "",
f = c.match(/\s+((https?|ftps?):\/\/\S+)\.?/i);
f ? e = f[1] : (f = c.match(/^((https?|ftps?):\/\/\S+)\.?\s+/i)) ? e = f[1] : (f = c.match(/\s+(\S+:\d+)\s+/i)) && (e = f[1]);
return e.replace(/\.\s*$/, "")
}
function so(c) {
var e = LP.xmarkscheckbox;
null != e && "undefined" != typeof e && e.getAttribute("checked") && P ? (c = c.getElementById("login-iframe").contentDocument, LP.xmarkssavedusername = c.getElementById("username_signin").value, LP.xmarkssavedpassword = c.getElementById("password_signin").value, LP.lpprefsSetBoolPref("savePasswordChecked", !0)) : (LP.xmarkssavedusername = LP.xmarkssavedpassword = "", LP.lpprefsSetBoolPref("savePasswordChecked", !1));
LP.flush_prefs()
}
function xb(c) {
if ("string" != typeof c) return "";
if (null != Kj[c]) return Kj[c];
var e = null,
f = null,
d = c; - 1 != c.indexOf("#") && (f = c.substring(c.indexOf("#") + 1), c = c.substring(0, c.indexOf("#"))); - 1 != c.indexOf("?") && (e = c.substring(c.indexOf("?") + 1), c = c.substring(0, c.indexOf("?")));
var g = c.match(/^(.*:\/\/[^\/]+\/.*)@/);
g && (c = c.substring(0, g[1].length) + c.substring(g[1].length).replace(/@/g, "%40"));
if (2047 < c.length) return "";
var h = xb.options,
g = null;
try {
g = h.parser[h.strictMode ? "strict" : "loose"].exec(c)
} catch (l) {
try {
g = 500 < c.length ? h.parser[h.strictMode ? "strict" : "loose"].exec(c.substr(0, 500)) : h.parser[h.strictMode ? "strict" : "loose"].exec(c.substr(0, floor(c.length / 2)))
} catch (n) {
ga("parseuri : failing " + c), g = h.parser[h.strictMode ? "strict" : "loose"].exec("http://")
}
}
c = g;
for (var p = {}, g = 14; g--;) p[h.key[g]] = c[g] || "";
p[h.q.name] = {};
p[h.key[12]].replace(h.q.parser, function(c, d, e) {
d && (p[h.q.name][d] = e)
});
null != e && (p.query = e, null != f && (p.anchor = f));
if (p.host) {
if (e = p.host, "string" == typeof e)
if (27 < e.length && -1 != e.indexOf("logmein.com", e.length - 11) && (f = e.match(/^(.*)-[a-z]{10}(\.app).*(\.logmein\.com)$/))) e = f[1] + f[2] + f[3];
else if (24 < e.length && -1 != e.indexOf("logme.in", e.length - 8) && (f = e.match(/^(.*)-[a-z]{10}(\.app).*(\.logme\.in)$/))) e = f[1] + f[2] + f[3];
p.host = e
}
if (500 < to) {
for (var q in Kj) {
delete Kj[q];
break
}
to = 0
}
Kj[d] = p;
to++;
return p
}
function nb(c, e) {
if ("about:blank" == c) return "";
if (null != Lj[c]) return Lj[c];
null == e && (e = xb(c));
var f = "";
"" != e.port && e.port != Fl(e.protocol) && (f = ":" + e.port);
if (e.host) f = e.host.toLowerCase() + f + e.path;
else {
if (!c) return "";
f = c
} - 1 != f.indexOf(";") && (f = f.substring(0, f.indexOf(";")));
if (500 < uo) {
for (var d in Lj) {
delete Lj[d];
break
}
uo = 0
}
Lj[c] = f;
uo++;
return f
}
function sc(c, e) {
if ("undefined" == typeof E || null == E)
if ("undefined" == typeof E || null == E) E = [], E.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(" "),
E.nl = ["752", "blogspot", "bv", "co"], E.ca = "ab bc blogspot co gc mb nb nf nl ns nt nu on pe qc sk yk".split(" "), E.pa = "abo ac com edu gob ing med net nom org sld".split(" "), E.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(" "), E.ac = "ac co com edu gov gv mil net or org".split(" "), E.ae = "ac co com gov mil name net org pro sch".split(" "), E.at = "ac biz co gv info or priv".split(" "),
E.be = "ac ap blogspot co com fgov to xa".split(" "), E.cn = "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(" "), E.cr = "ac co ed fi go or sa".split(" "), E.cy = "* ac biz com ekloges gov info ltd name net org parliament press pro tm".split(" "), E.fj = "* ac biz com gov id info mil name net org pro school".split(" "), E.fk = "* ac co gov net nom org".split(" "), E.gg = "ac alderney co gov guernsey ind ltd net org sark sch".split(" "),
E.gn = "ac com edu gov net org".split(" "), E.gt = "com edu gob ind mil net org".split(" "), E.id = "ac biz co desa go mil my net or sch web".split(" "), E.il = "* ac co gov idf k12 muni net org".split(" "), E.im = "ac co com gov net nic org tt tv".split(" "), E["in"] = "ac blogspot co edu ernet firm gen gov ind mil net nic org res".split(" "), E.ir = "ac co gov id net org sch xn--mgba3a4f16a xn--mgba3a4fra".split(" "), E.is = "ac com cupcake edu gov int net org".split(" "), E.je = "ac co gov ind jersey ltd net org sch".split(" "),
E.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 yamagata yamaguchi yamanashi yokohama".split(" "), E.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(" "),
E.mw = "ac biz co com coop edu gov int museum net org".split(" "), E.nz = "* ac co cri geek gen govt iwi maori mil net org school".split(" "), E.ru = "ac adygeya altai amur amursk arkhangelsk astrakhan baikal bashkiria belgorod bir 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(" "),
E.rw = "ac co com edu gouv gov int mil net".split(" "), E.au = "act asn com conf csiro edu gov id info net nsw nt org oz qld sa tas telememo vic wa".split(" "), E.th = "ac co go in mi net or".split(" "), E.tj = "ac biz co com edu go gov int mil name net nic org test web".split(" "), E.tz = "ac co go hotel info me mil mobi ne or sc tv".split(" "), E.ug = "ac co com go ne or org sc".split(" "), E.uk = "!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(" "),
E.vn = "ac biz com edu gov health info int name net org pro".split(" "), E.yu = ["ac", "co", "edu", "org"], E.za = "* ac alt city co com edu gov law mil net ngo nom org school tm web".split(" "), E.zm = "* ac co gov org sch".split(" "), E.zw = ["*", "ac", "co", "gov", "org"], E.br = "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(" "),
E.ht = "adult art asso com coop edu firm gouv info med net org perso pol pro rel shop".split(" "), E.mv = "aero biz com coop edu gov info int mil museum name net org pro".split(" "), E.pl = "6bone agro aid art atm augustow auto babia-gora bedzin 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(" "),
E.us = "ak al ar as az ca co com ct dc de dni fed fl ga 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 nsn nv ny oh ok or pa pr ri sc sd stuff-4-sale tn tx ut va vi vt wa wi wv wy".split(" "), E.fi = ["aland", "blogspot", "iki"], E.mil = ["army", "navy"], E["do"] = "art com edu gob gov mil net org sld web".split(" "), E.dz = "art asso com edu gov net org pol".split(" "), E.co = "arts com edu firm gov info int mil net nom org rec store uk web".split(" "), E.ro = "arts blogspot com firm info nom nt org rec store tm www".split(" "),
E.ve = "arts bib co com e12 edu firm gov info int mil net nom org rec store tec web".split(" "), E.lv = "asn com conf edu eu gov id mil net org".split(" "), E.lk = "assn com edu gov grp hotel int ltd net ngo org sch soc web".split(" "), E.fr = "aeroport assedic asso avocat avoues blogspot cci chambagri chirurgiens-dentistes com experts-comptables geometre-expert gouv greta huissier-justice medecin nom notaires pharmacien port prd presse tm veterinaire".split(" "), E.gp = "asso com edu mobi net org".split(" "),
E.mc = ["asso", "tm"], E.tr = "!nic * av bbs bel biz com dr edu gen gov info k12 mil name net org pol tel web".split(" "), E.az = "biz com edu gov info int mil name net org pp pro".split(" "), E.et = "* biz com edu gov info name net org".split(" "), E.nr = "biz co com edu gov info net org".split(" "), E.om = "!mediaphone !nawras !nawrastelecom !omanmobile !omanpost !omantel !rakpetroleum !siemens !songfest !statecouncil * biz co com edu gov med mil museum net org pro sch".split(" "), E.pk = "biz com edu fam gob gok gon gop gos gov info net org web".split(" "),
E.pr = "ac biz com edu est gov info isla name net org pro prof".split(" "), E.tt = "aero biz co com coop edu gov info int jobs mobi museum name net org pro travel us".split(" "), E.ua = "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(" "),
E.tw = "blogspot club com ebiz edu game gov gove idv mil net org xn--czrw28b xn--uc0atv xn--zf0ao64a".split(" "), E.ag = ["co", "com", "net", "nom", "org"], E.ao = "co ed gv it og pb".split(" "), E.bw = ["co", "org"], E.ck = ["!www", "*", "co"], E.ls = ["co", "org"], E.ma = "ac co gov net org press".split(" "), E.af = ["com", "edu", "gov", "net", "org"], E.ai = ["com", "net", "off", "org"], E.al = "com edu gov inima mil net org soros tirana uniti upt".split(" "), E.an = ["com", "edu", "net", "org"], E.ar = "!congresodelalengua3 !educ !gobiernoelectronico !mecon !nacion !nic !promocion !retina !uba * com edu gob gov int mil net org tur".split(" "),
E.aw = ["com"], E.bb = "biz com edu gov info net org store".split(" "), E.bd = "* com edu gov mil net org".split(" "), E.bm = ["com", "edu", "gov", "net", "org"], E.bn = ["*", "com", "edu", "net", "org"], E.bo = "com edu gob gov int mil net org tv".split(" "), E.bs = ["com", "edu", "gov", "net", "org"], E.bt = ["com", "edu", "gov", "net", "org"], E.cd = ["com", "gov", "net", "org"], E.ch = ["blogspot", "com", "gov", "net", "org"], E.cu = "com edu gov inf net org".split(" "), E.dm = ["com", "edu", "gov", "net", "org"], E.ec = "com edu fin gob gov info k12 med mil net org pro".split(" "),
E.ee = "aip com edu fie gov lib med org pri riik".split(" "), E.eg = "com edu eun gov mil name net org sci".split(" "), E.es = ["com", "edu", "gob", "nom", "org"], E.eu = ["com"], E.gb = ["com", "net"], E.ge = "com edu gov mil net org pvt".split(" "), E.gh = ["com", "edu", "gov", "mil", "org"], E.gi = "com edu gov ltd mod org".split(" "), E.gr = "blogspot com edu gov net org".split(" "), E.gu = "* com edu gov mil net org".split(" "), E.hk = "blogspot com edu gov idv 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(" "),
E.hn = "com edu gob mil net org".split(" "), E.hr = ["com", "from", "iz", "name"], E.jm = "* com edu gov net org".split(" "), E.jo = "com edu gov mil name net org sch".split(" "), E.kh = "* com edu gov mil net org per".split(" "), E.kw = "* com edu gov mil net org".split(" "), E.ky = ["com", "edu", "gov", "net", "org"], E.kz = "com edu gov mil net org".split(" "), E.la = "c com edu gov info int net org per".split(" "), E.lb = "com edu gov mil net org".split(" "), E.lc = "co com edu gov net org".split(" "), E.li = ["com", "gov", "net", "org"],
E.lr = ["com", "edu", "gov", "net", "org"], E.ly = "com edu gov id med net org plc sch".split(" "), E.mg = "com edu gov mil nom org prd tm".split(" "), E.mk = "com edu gov inf name net org".split(" "), E.mm = "* com edu gov net org".split(" "), E.mo = ["com", "edu", "gov", "net", "org"], E.mt = "* com edu gov net org".split(" "), E.mu = "ac co com gov net or org".split(" "), E.mx = "blogspot com edu gob gov net org".split(" "), E.my = "com edu gov mil name net org".split(" "), E.na = "ca cc co com dr in info mobi mx name net or org pro school tv us ws".split(" "),
E.nc = ["asso", "com", "net", "org"], E.ng = "ac com edu gov mil mobi name net org sch".split(" "), E.ni = "* com edu gob net nom org".split(" "), E.no = "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(" "),
E.np = "* com edu gov mil net org ort".split(" "), E.pe = "com edu gob mil net nom org".split(" "), E.pf = ["com", "edu", "org"], E.pg = ["*", "com", "net"], E.ph = "com edu gov i mil net ngo org".split(" "), E.ps = "com edu gov net org plo sec".split(" "), E.pt = "blogspot com edu gov int net nome org publ".split(" "), E.py = "com coop edu gov mil net org".split(" "), E.qc = ["com"], E.sa = "com edu gov med net org pub sch".split(" "), E.sb = ["com", "edu", "gov", "net", "org"], E.sc = ["com", "edu", "gov", "net", "org"], E.sd = "com edu gov info med net org tv".split(" "),
E.sg = "blogspot com edu gov idn net org per".split(" "), E.sh = "com edu gov mil net org".split(" "), E.sv = "* co com edu gob org red".split(" "), E.sy = "com edu gov mil net org".split(" "), E.tn = "agrinet com defense edunet ens fin gov ind info intl mincom nat net org perso rnrt rns rnu tourism turen".split(" "), E.uy = "com edu gub mil net org".split(" "), E.vi = "co com edu gov k12 net org".split(" "), E.ye = ["*", "com", "net"], E.pro = "aca bar cpa eng jur law med".split(" "), E.arpa = "e164 in-addr ip6 iris uri urn".split(" "),
E["int"] = ["eu"], E.bf = ["gov"], E.by = ["com", "gov", "mil", "of"], E.cx = ["ath", "gov"], E.ie = ["blogspot", "gov"], E.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(";"),
E.lt = ["gov", "mil"], E.lu = ["gov", "mil", "net", "org"], E.to = "com edu gov mil net org".split(" "), E.tp = ["gov"], E.tv = ["better-than", "dyndns", "gov", "on-the-web", "worse-than"], E.mobi = ["music", "weather"], E.mh = ["net"], E.ad = ["nom"], E.sr = ["rs"], E.va = ["vatican"], E.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(" "),
E.as = ["gov"], E.ba = "co com edu gov mil net org rs unbi unsa".split(" "), E.bg = "0123456789abcdefghijklmnopqrstuvwxyz".split(""), E.bh = ["com", "edu", "gov", "net", "org"], E.bi = ["co", "com", "edu", "or", "org"], E.bj = ["asso", "barreau", "blogspot", "gouv"], E.bz = ["com", "edu", "gov", "net", "org"], E.ci = "ac asso co com ed edu go gouv int md net or org presse xn--aroport-bya".split(" "), E.cl = ["co", "gob", "gov", "mil"], E.cm = ["gov"], E.cw = ["com", "edu", "net", "org"], E.er = ["*"], E.gy = ["co", "com", "net"], E.io = ["com", "github"], E.iq =
"com edu gov mil net org".split(" "), E.ke = ["*"], E.kg = "com edu gov mil net org".split(" "), E.ki = "biz com edu gov info net org".split(" "), E.km = "ass asso com coop edu gouv gov medecin mil nom notaires org pharmaciens prd presse tm veterinaire".split(" "), E.kn = ["edu", "gov", "net", "org"], E.kp = "com edu gov org rep tra".split(" "), E.me = "ac co edu gov its net org priv".split(" "), E.ml = "com edu gouv gov net org presse".split(" "), E.mn = ["edu", "gov", "nyc", "org"], E.mr = ["blogspot", "gov"], E.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(" "),
E.mz = ["!teledata", "*"], E.nf = "arts com firm info net other per rec store web".split(" "), E.pn = ["co", "edu", "gov", "net", "org"], E.pw = "belau co ed go ne or".split(" "), E.qa = "com edu gov mil name net org sch".split(" "), E.re = ["asso", "blogspot", "com", "nom"], E.rs = "ac co edu gov in org".split(" "), E.sl = ["com", "edu", "gov", "net", "org"], E.sn = "art com edu gouv org perso univ".split(" "), E.so = ["com", "net", "org"], E.st = "co com consulado edu embaixada gov mil net org principe saotome store".split(" "), E.sx = ["gov"],
E.sz = ["ac", "co", "org"], E.tl = ["gov"], E.tm = "co com edu gov mil net nom org".split(" "), E.uz = ["co", "com", "net", "org"], E.vc = "com edu gov mil net org".split(" "), E.ws = "com dyndns edu gov mypets net org".split(" "), E.net = "at-band-camp azure-mobile azurewebsites blogdns broke-it buyshouses cloudapp cloudfront dnsalias dnsdojo does-it dontexist dynalias dynathome endofinternet from-az from-co from-la from-ny gb gets-it ham-radio-op homeftp homeip homelinux homeunix hu in-the-band is-a-chef is-a-geek isa-geek jp kicks-ass office-on-the podzone scrapper-site se selfip sells-it servebbs serveftp thruhere uk webhop za".split(" "),
E.com = "appspot ar betainabox blogdns blogspot br cechire cloudcontrolapp cloudcontrolled cn codespot de dnsalias dnsdojo doesntexist dontexist doomdns dreamhosters 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 elasticbeanstalk est-a-la-maison est-a-la-masion est-le-patron est-mon-blogueur eu 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 getmyip githubusercontent googleapis googlecode gotdns gr herokuapp herokussl hobby-site homelinux homeunix hu iamallama 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 neat-url no operaunite qc rhcloud ro ru sa saves-the-whales se selfip sells-for-less sells-for-u servebbs simple-url space-to-rent teaches-yoga uk us uy withgoogle writesthisblog za".split(" "),
E.org = "ae blogdns blogsite boldlygoingnowhere dnsalias dnsdojo doesntexist dontexist doomdns dvrdns dynalias dyndns endofinternet endoftheinternet from-me game-host gotdns hobby-site homedns homeftp homelinux homeunix 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 kicks-ass misconfused podzone readmyblog selfip sellsyourhome servebbs serveftp servegame stuff-4-sale us webhop za".split(" "),
E.de = "blogspot com fuettertdasnetz isteingeek istmein lebtimnetz leitungsen traeumtgerade".split(" "), E.biz = "dyndns for-better for-more for-some for-the selfip webhop".split(" "), E.info = "barrel-of-knowledge barrell-of-knowledge dyndns for-our groks-the groks-this here-for-more knowsitall selfip webhop".split(" "), E.cc = ["ftpaccess", "game-server", "myphotos", "scrapping"], E.nu = ["merseine", "mine", "shacknet"], E.cf = ["blogspot"], E.cv = ["blogspot"], E.cz = ["blogspot"], E.dk = ["blogspot"], E.sk = ["blogspot"], E.td = ["blogspot"], E.ms = ["com", "edu", "gov", "net", "org"];
if ("string" != typeof c) return "";
if ("" == c && "string" == typeof e && 0 == e.indexOf("file://")) return "file:";
c = c.toLowerCase();
c = c.replace(/\.$/, "");
var f = c.split("."),
d;
if (c.match(/^\d+\.\d+\.\d+\.\d+$/)) d = 4;
else if (d = 2, 2 <= f.length) {
var g = f[f.length - 1];
"undefined" != typeof E[g] && kb(f[f.length - 2], E[g]) && (d = 3)
}
for (; f.length > d;) f.shift();
return f.join(".")
}
function Ta(c) {
var e = xb(c);
return sc(e.host, c)
}
function Wf(c) {
c = xb(Wa.URLToUnicode(c));
return ("string" == typeof c.host ?
c.host : "").replace(/^www\./, "")
}
function ae(c) {
return "string" != typeof c ? c : c.replace(/^\s+|\s+$/g, "")
}
function Gl(c) {
return (c + "").replace(/([\\\.\+\*\?\[\^\]\$\(\)\{\}\=\!<>\|\:])/g, "\\$1")
}
function xa(c, e) {
if (e && "undefined" != typeof c.id && "" != c.id) return c.id;
if ("undefined" != typeof c && null != c) {
if ("undefined" != typeof c.name && "" != c.name) return c.name;
if ("undefined" != typeof c.id) return c.id
}
return ""
}
function oc(c, e) {
for (; c && "BODY" != c.tagName; c = c.parentNode) {
if ("undefined" != typeof c.style && ("hidden" ==
c.style.visibility || "none" == c.style.display)) return !1;
try {
var f = c.ownerDocument.defaultView.getComputedStyle(c, "");
if ("hidden" == f.visibility || "none" == f.display) return !1
} catch (d) {}
if (e) break
}
return !0
}
function kb(c, e) {
for (var f = e.length, d = 0; d <= f; d++)
if ("undefined" != typeof e[d] && e[d] == c) return !0;
return !1
}
function zf(c) {
if (!c.length) return c;
c = c.replace(/\s+/g, " ");
c = c.replace(/^\s+|\s+$/g, "");
c = c.replace(/[\|]+$/g, "");
var e = c.match(/\|([^\|]+)$/);
e && (c = e[1], c = c.replace(/^\s+|\s+$/g, ""));
return c
}
function yl(c) {
"number" ==
typeof c && (c = "" + c);
c = c.replace(/&/g, "&amp;");
c = c.replace(/</g, "&lt;");
c = c.replace(/>/g, "&gt;");
return c.replace(/"/g, "&quot;")
}
function qc(c) {
"number" == typeof c && (c = "" + c);
c = c.replace(/&lt;/g, "<");
c = c.replace(/&gt;/g, ">");
c = c.replace(/&quot;/g, '"');
return c.replace(/&amp;/g, "&")
}
function Qc(c, e, f) {
try {
if (c) {
if (c.ownerDocument && "function" == typeof c.ownerDocument.createEvent) {
var d = c.ownerDocument.createEvent("Events");
d.initEvent("change", !0, !0);
c.dispatchEvent(d);
d = c.ownerDocument.createEvent("Events");
d.initEvent("input", !0, !0);
c.dispatchEvent(d);
if ("undefined" != typeof ischrome && ischrome && ("function" == typeof c.onkeyup || c.hasAttribute("onkeyup")))
if (f && (d.keyCode = 8), c.hasAttribute("onkeyup")) eval(c.getAttribute("onkeyup"));
else c.onkeyup(d)
} else "undefined" != typeof c.fireEvent && (c.fireEvent("onchange"), c.fireEvent("oninput"));
("undefined" == typeof e || null == e || e) && "function" == typeof fs && fs("SHIFT", c);
if ("function" == typeof cb) {
var g = cb(c.ownerDocument);
g && (g.lpfieldchanged = !0)
}
}
} catch (h) {}
}
function Fl(c) {
switch (c) {
case "http":
return 80;
case "https":
return 443;
case "ftp":
return 21;
default:
return 0
}
}
function Ge(c) {
var e = 0;
"undefined" != typeof c.port && c.port ? e = c.port : "undefined" != typeof c.protocol && c.protocol && (e = Fl(c.protocol));
return e
}
function kj(c, e) {
var f = "" != c.port ? c.port : Fl(c.protocol),
d = "" != e.port ? e.port : Fl(e.protocol);
return f == d
}
function vo(c) {
var e = c.length ? --c.length : -1,
f;
for (f in c) e++;
return e
}
function Ab() {
var c = (new Date).getTime();
return parseInt(c / 1E3)
}
function Og(c, e, f, d, g, h, l) {
if (0 == e.length) return e;
for (var n = [],
p = [], q = 0; q < c.length; q++) "undefined" == typeof c[q].tld && (c[q].tld = Ta(c[q].url), c[q].parts = xb(c[q].url), c[q].path = "string" == typeof c[q].parts.path ? c[q].parts.path : ""), f == c[q].tld && ("" != c[q].path && 0 != d.indexOf(c[q].path) ? p[p.length] = c[q] : g == c[q].parts.host || 1 == c[q].exacthost && -1 != g.indexOf("." + c[q].parts.host) || 0 == c[q].exacthost ? n[n.length] = c[q] : p[p.length] = c[q]);
if (0 == n.length && 0 == p.length) return e;
if (0 < n.length) {
h = e;
for (q = 0; q < n.length; q++) {
p = e;
c = n[q];
f = d;
var r = g,
t = l,
A = c.path;
if (!("" != A && 0 != f.indexOf(A))) {
for (var y =
A.split("/").length, J = [], u = !1, s = 0; s < p.length; s++) {
var z = p[s],
ia = z.pathlevelmatch,
B = z.servermatch,
F = z.portmatch;
if ("undefined" == typeof ia) {
ia = f.split("/");
z = xb(z.url);
z.path = "undefined" != typeof z.path ? z.path : "";
B = z.path.split("/");
for (F = 0; F < ia.length && F < B.length && B[F] == ia[F]; F++);
ia = F;
B = r == z.host;
F = t == Ge(z)
}
if (!("" != A && ia < y) && (u = u || 1 == c.exacthost || 1 == c.exactport ? !0 : !1, (B || 0 == c.exacthost) && (F || 0 == c.exactport))) u = !0, J[J.length] = p[s]
}
p = u ? J : p
}
p.length < h.length && (h = p)
}
return h
}
for (q = 0; q < p.length; q++) {
d =
e;
g = p[q];
l = h;
n = g.path;
for (c = 0; c < d.length; c++)
if (f = "undefined" != typeof d[c].id ? d[c].id : d[c].aid, "undefined" != typeof l[f] && (f = xb(l[f].url), f.path = "undefined" != typeof f.path ? f.path : "", !("" != n && 0 != f.path.indexOf(n)) && ("0" == g.exacthost || g.parts.host == f.host) && ("0" == g.exactport || Ge(urlrules[c].parts) == Ge(f)))) d.splice(c, 1), c -= 1
}
return e
}
function wo(c) {
for (var e = "", f = 0; f < c; f++) var d = md(0, 15),
e = e + "0123456789ABCDEF".substring(d, d + 1);
return e
}
function bx(c, e, f) {
c = c.responseXML.documentElement;
var d = c.getElementsByTagName("sharerpublickeys"),
g = c.getElementsByTagName("shareepublickeys"),
h = c.getElementsByTagName("encfields"),
l = c.getElementsByTagName("encofields");
if (0 >= d.length && 0 >= g.length) return !1;
c = e.aid;
var n = e.postdata;
e = "undefined" == typeof e.newvalues ? [] : e.newvalues;
if ("undefined" == typeof f || null == f) return ga("SHARE : createShareeAutoPushesResponse failed for aid=" + c, null), !1;
for (var p = {}, q = h[0].getElementsByTagName("encfield"), n = n + ("&numencf=" + LP.en(q.length)), h = 0; h < q.length; ++h) {
var r = q[h].getAttribute("afid"),
t = q[h].getAttribute("value");
p[r] = t
}
q = {};
l = l[0].getElementsByTagName("encofield");
n += "&numencof=" + LP.en(l.length);
for (h = 0; h < l.length; ++h) r = l[h].getAttribute("afid"), t = l[h].getAttribute("value"), q[r] = t;
n += "&numvalueenc=" + LP.en(e.length);
for (y = 0; y < e.length; ++y) h = da(e[y]), n += "&valueenc" + y + "=" + LP.en(h);
if (0 < g.length) {
l = g[0].getElementsByTagName("sharee");
n += "&numsharees=" + LP.en(l.length);
for (h = 0; h < l.length; ++h) {
var A = l[h].getAttribute("uid"),
y = l[h].getAttribute("key"),
t = wo(64),
g = Zb(t),
t = io(y, t);
if (!1 == t) return ga("SHARE : lprsa_encryptdata failed for shareeuid=" +
A + " using shareepublickeyhex=" + y, null), !1;
var n = n + ("&sharee" + h + "uid=" + LP.en(A)),
n = n + ("&sharee" + h + "sharekeyhexenc=" + LP.en(t)),
t = {
name: f.name,
grouping: f.group,
username: "undefined" != typeof g_sites ? Ac(f.username, !0) : Ya(f.username),
password: "undefined" != typeof g_sites ? Ac(f.password, !0) : Ya(f.password),
extra: "undefined" != typeof g_sites ? Ac(f.extra, !0) : Ya(f.extra)
}, J;
for (J in t) {
var u = da(t[J], g);
if ("" != t[J] && (null == u || "" == u)) return ga("SHARE : error AES encrypting aid=" + c + " for shareeuid=" + A, null), !1;
n += "&sharee" +
h + J + "=" + LP.en(u)
}
y = 0;
for (r in p) {
t = Ya(p[r]);
u = da(t, g);
if ("" != t && (null == u || "" == u)) return ga("SHARE : error AES encrypting field afid=" + r + " aid=" + c + " for shareeuid=" + A, null), !1;
n += "&sharee" + h + "fafid" + y + "=" + LP.en(r);
n += "&sharee" + h + "fvalue" + y + "=" + LP.en(u);
++y
}
y = 0;
for (r in q) {
t = Ya(q[r]);
u = da(t, g);
if ("" != t && (null == u || "" == u)) return ga("SHARE : error AES encrypting otherfield afid=" + r + " aid=" + c + " for shareeuid=" + A, null), !1;
n += "&sharee" + h + "ofafid" + y + "=" + LP.en(r);
n += "&sharee" + h + "ofvalue" + y + "=" + LP.en(u);
++y
}
for (y =
0; y < e.length; ++y) {
t = e[y];
u = da(t, g);
if ("" != t && (null == u || "" == u)) return ga("SHARE : error AES encrypting newvalues k=" + y + " aid=" + c + " for shareeuid=" + A, null), !1;
n += "&sharee" + h + "valueenc" + y + "=" + LP.en(u)
}
}
}
if (0 < d.length) {
d = d[0].getElementsByTagName("sharer");
n += "&numsharers=" + LP.en(d.length);
for (h = 0; h < d.length; ++h) {
l = d[h].getAttribute("uid");
A = d[h].getAttribute("key");
t = wo(64);
g = Zb(t);
t = io(A, t);
if (!1 == t) return ga("SHARE : lprsa_encryptdata failed for shareruid=" + l + " using sharerpublickeyhex=" + A, null), !1;
n += "&sharer" + h + "uid=" + LP.en(l);
n += "&sharer" + h + "sharekeyhexenc=" + LP.en(t);
t = {
name: f.name,
grouping: f.group,
username: "undefined" != typeof g_sites ? Ac(f.username, !0) : Ya(f.username),
password: "undefined" != typeof g_sites ? Ac(f.password, !0) : Ya(f.password),
extra: "undefined" != typeof g_sites ? Ac(f.extra, !0) : Ya(f.extra)
};
for (J in t) {
u = da(t[J], g);
if ("" != t[J] && (null == u || "" == u)) return ga("SHARE : error AES encrypting aid=" + c + " for shareruid=" + l, null), !1;
n += "&sharer" + h + J + "=" + LP.en(u)
}
y = 0;
for (r in p) {
t = Ya(p[r]);
u = da(t,
g);
if ("" != t && (null == u || "" == u)) return ga("SHARE : error AES encrypting field afid=" + r + " aid=" + c + " for shareruid=" + l, null), !1;
n += "&sharer" + h + "fafid" + y + "=" + LP.en(r);
n += "&sharer" + h + "fvalue" + y + "=" + LP.en(u);
++y
}
y = 0;
for (r in q) {
t = Ya(q[r]);
u = da(t, g);
if ("" != t && (null == u || "" == u)) return ga("SHARE : error AES encrypting otherfield afid=" + r + " aid=" + c + " for shareruid=" + l, null), !1;
n += "&sharer" + h + "ofafid" + y + "=" + LP.en(r);
n += "&sharer" + h + "ofvalue" + y + "=" + LP.en(u);
++y
}
for (y = 0; y < e.length; ++y) {
t = e[y];
u = da(t, g);
if ("" != t &&
(null == u || "" == u)) return ga("SHARE : error AES encrypting newvalues k=" + y + " aid=" + c + " for shareruid=" + l, null), !1;
n += "&sharer" + h + "valueenc" + y + "=" + LP.en(u)
}
}
}
return n
}
function za(c) {
if (c && 17 <= c.length && "!" == c.charAt(0)) {
var e = c.indexOf("|");
if (-1 != e) return "!" + atob(c.substring(1, e)) + atob(c.substring(e + 1))
}
return atob(c)
}
function Ha(c) {
return c && 33 <= c.length && 1 == c.length % 16 && "!" == c.charAt(0) ? "!" + btoa(c.substring(1, 17)) + "|" + btoa(c.substring(17)) : btoa(c)
}
function Hl(c, e, f) {
var d = 0,
g = 0,
h = 0,
l = 0,
n = 0,
p = 0,
q =
c.split(".");
for (c = 0; c < q.length; c++) 0 == c ? d = parseInt(q[c]) : 1 == c ? g = parseInt(q[c]) : 2 == c && (h = parseInt(q[c]));
e = e.split(".");
for (c = 0; c < e.length; c++) 0 == c ? l = parseInt(e[c]) : 1 == c ? n = parseInt(e[c]) : 2 == c && (p = parseInt(e[c]));
return d != l ? d > l ? 1 : -1 : g != n ? g > n ? 1 : -1 : f ? 0 : h != p ? h > p ? 1 : -1 : 0
}
function Ts(c, e) {
"undefined" != typeof LP && "function" == typeof LP.lpgs ? LP.alert(LP.lpgs(c), e) : "function" == typeof alertfrombg ? alertfrombg(U(c)) : Cb(U(c))
}
function yb(c, e) {
if (!c || 0 == c.length || "undefined" == typeof e || null == e) return !1;
var f = e;
0 < f.indexOf("\\") && (f = f.substr(0, f.indexOf("\\")));
for (var d in c) {
var g = c[d];
if (!("object" != typeof g || "undefined" == typeof g.decsharename) && g.decsharename == f) return {
id: g.id,
sharekey: g.key,
decsharename: g.decsharename,
readonly: g.readonly,
give: g.give
}
}
return !1
}
function Aj(c, e, f, d) {
return "undefined" == typeof f.sharefolderid ? Ac(c, e) : (f = yb(d, f.group)) ? Ac(c, e, f.sharekey) : Ac(c, e)
}
function O(c, e, f) {
return "undefined" == typeof e.sharefolderid ? Ya(c) : (e = yb(f, e.group)) ? Ya(c, e.sharekey) : Ya(c)
}
function wa(c, e, f) {
return "undefined" ==
typeof e.sharefolderid ? da(c) : (e = yb(f, e.group)) ? da(c, e.sharekey) : da(c)
}
function Tb(c, e, f) {
return c && "1" == c.readonly ? (e || Ts("Sorry, this shared folder is read-only.", f), !1) : !0
}
function Us() {
if (null == ha || "" == ha) {
var c = null;
"string" == typeof Ec && "" != Ec ? c = Ec : "string" == typeof Q && "" != Q && (c = Q);
null != c && ("function" == typeof SHA256 ? ha = SHA256(c) : "function" == typeof Fa && (ha = Fa(c)))
}
}
function ps() {
if (!("object" == typeof LP && "undefined" != typeof LP.isFennec && LP.isFennec) && ("function" != typeof canSaveAttach || canSaveAttach()) &&
0 < dg) Us(), Je(ha + "_version.att", 25, function(c) {
c || (c = 0);
bc = c;
ha + c != Vs && (Vs = ha + c, c < dg && (c = "version=" + LP.en(c) + "&b64=1&chunked=1", LP.lpMakeRequest(("string" == typeof base_url ? base_url : LP.lp_base) + "getattach.php", c, vn)))
})
}
function vn(c) {
if (4 == c.readyState && 200 == c.status) {
c = atob(c.responseText);
bc = dl(c, "LPAT");
Rb(ha + "_version.att", bc);
if (c && c.length && 0 == c.indexOf("LPAT"))
for (var e = c.length, f = mh(c.substring(4, 8)) + 8; f < e;) {
var d = mh(c.substring(f, f + 4)),
g = f + 4,
h = mh(c.substring(g, g + 4)),
l = c.substring(g + 4, g + 4 +
h),
g = g + (4 + h),
h = mh(c.substring(g, g + 4)),
g = c.substring(g + 4, g + 4 + h);
"delete" == g ? eb(ha + "_" + l + ".att") : (g = btoa(g), Rb(ha + "_" + l + ".att", g));
f += 4 + d
}!isNaN(parseInt(bc)) && isFinite(bc) && parseInt(bc) < dg && LP.mostRecent().setTimeout(function() {
ps()
}, 1E4)
}
}
function xo(c, e) {
Us();
if (e) Je(ha + "_" + c + ".att", null, function(c) {
c ? e(c && c.length && "!" == c[0] ? c : atob(c)) : e(null)
});
else {
var f = Je(ha + "_" + c + ".att");
return !f ? null : f && f.length && "!" == f[0] ? f : atob(f)
}
}
function ir(c) {
if ("undefined" != typeof c.add)
for (var e in c.add)
if (c.add.hasOwnProperty(e)) {
var f = [];
f.id = c.add[e].id;
f.parent = c.add[e].parent;
f.mimetype = c.add[e].mimetype;
lb.push(f)
}
if ("undefined" != typeof c.remove)
for (e in c.remove)
for (c = 0; c < lb.length; c++) e == lb[c].id && lb.splice(c, 1)
}
function hg(c) {
return "text" == c || "password" == c || "textarea" == c || "email" == c || "tel" == c || "url" == c
}
function ts(c, e, f) {
"undefined" == typeof LP.ppsids_done && (LP.ppsids_done = []);
if ("object" == typeof c && 0 < c.length) {
for (var d = "cmd=uploadaccounts&username=" + LP.en(Q), g = 0, h = 0; h < c.length; h++) {
var l = c[h].ppsid;
if (!kb(l, LP.ppsids_done)) {
LP.ppsids_done.push(l);
var l = "&ppsid" + LP.en(g) + "=" + LP.en(l),
n = mc.parse(atob(c[h].data)),
p = !1,
q;
for (q in n)
if ("object" == typeof n[q] && "undefined" != typeof n[q].value && "undefined" != typeof n[q].encrypt) {
var r = q,
t = r.indexOf("X");
if (-1 != t) {
r = r.substring(0, t) + g + r.substring(t + 1);
t = n[q].value;
if ("undefined" != typeof n[q].decrypt && 0 != n[q].decrypt) {
p = !0;
if (f)
for (var A = 0; A < f.length; A++)
if (f[A].id == n[q].decrypt) {
p = !1;
t = Ya(t, f[A].key);
break
}
if (p) break
}
n[q].encrypt && (t = da(t));
l += "&" + LP.en(r) + "=" + LP.en(t)
}
}
p || (d += l, g++)
}
}
0 < g && LP.lpMakeRequest(("string" ==
typeof base_url ? base_url : LP.lp_base) + "lastpass/api.php", d, e, function() {})
}
}
function Yq(c, e, f) {
"undefined" == typeof f && (f = 1);
if (10 < f) return null;
if (c && "object" == typeof c.lp_filled_fields) {
for (var d = 0; d < c.lp_filled_fields.length; d++) {
var g = c.lp_filled_fields[d].value;
c.lp_filled_fields[d].value = "";
"" != g && Qc(c.lp_filled_fields[d])
}
c.lp_filled_fields = []
}
if (e && e.frames) {
c = e.frames.length;
10 < c && (c = 10);
for (d = 0; d < c; d++) e.frames[d].document && Yq(e.frames[d].document, e.frames[d].window, f + 1)
}
}
function yo(c) {
return "undefined" !=
typeof LP && "undefined" != typeof LP.sitepwlen && "undefined" != typeof LP.sitepwlen[c] ? LP.sitepwlen[c] : "undefined" != typeof g_sitepwlen && "undefined" != typeof g_sitepwlen[c] ? g_sitepwlen[c] : 1
}
function Ic(c) {
return Hd.apply(this, arguments)
}
function ji(c) {
return Id.apply(this, arguments)
}
function ix() {}
function wd(c, e, f, d, g, h, l, n, p) {
"undefined" == typeof B && (B = []);
if ("undefined" == typeof h || null == h) h = 1;
if (10 < h) return !1;
try {
for (var q = e.getElementsByTagName("iframe"), r = 0; r < q.length; ++r) {
var t = q[r];
null != t.contentDocument &&
wd(c, t.contentDocument, f, d, g, h, l, n, p)
}
} catch (A) {}
var y = "string" == typeof p ? !0 : !1,
J = "string" == typeof p ? p : "";
if (!c && !l) return !1;
var u = null;
if ("object" == typeof LP && !LP.isFennec && null == LP.getBrowser().selectedTab) return !1;
var s = null;
"object" == typeof LP && (s = LP.isFennec ? c : LP.getBrowser().selectedTab.linkedBrowser);
var z = s && s.contentDocument ? s.contentDocument : null;
try {
if ("undefined" == typeof l || null == l) l = c.contentWindow;
u = c ? LP.lpgetcurrenturl(c) : l.location.href;
"undefined" != typeof Wa && "undefined" != typeof Wa.URLToASCII &&
(u = Wa.URLToASCII(u));
if ("undefined" != typeof ka && 0 == ka.length && !y) {
if (s) {
var ia = s.contentDocument;
ia && (ia.m_abortedFormFillChecking = !0)
}
return !1
}
var C = e.getElementsByTagName("form");
if (z && !f && "undefined" != typeof z.m_checkfillformresult && z.m_checkfillformnumforms == C.length) return z.m_checkfillformresult;
if (!f && ("undefined" != typeof zo && !zo || 0 == C.length)) {
if (s && (ia = s.contentDocument)) ia.m_abortedFormFillChecking = !0;
z && (z.m_checkfillformresult = !1, z.m_checkfillformnumforms = C.length);
return !1
}
if (!f && !d &&
"undefined" != typeof Pd && (Pd(c, "autologin") || Pd(c, "generate") || Pd(c, "formfill"))) {
if (s && (ia = s.contentDocument)) ia.m_abortedFormFillChecking = !0;
z && (z.m_checkfillformresult = !1, z.m_checkfillformnumforms = C.length);
return !1
}
var F = null;
if (g)
for (var D = 0; D < ka.length; D++) {
if (ka[D].ffid == g) {
F = ka[D];
break
}
} else "undefined" != typeof ka && !y && (F = ka[0]);
var G, K;
G = 0 == l.location.href.indexOf("https://") ? K = !0 : K = !1;
var ea = xb(u),
ra = nb(u, ea),
Y = sc(ea.host, u);
Ao = Y;
if (!f && "undefined" != typeof er && er(ra, Y)) return z && (z.m_checkfillformresult = !1, z.m_checkfillformnumforms = C.length), !1;
Bo("en-US");
var v = null,
E = zd["en-US"],
H = Uf["en-US"],
Q = ki;
if (g)
for (D = 0; D < ka.length; D++) {
if (ka[D].ffid == g) {
var F = ka[D],
L = O(F.profilelanguage, F, B);
5 == L.length && (v = L);
"en-US" != v && Bo(v);
E = zd[v];
H = Uf[v];
if ("undefined" != typeof F.customfields && 0 < F.customfields.length) {
E = [];
H = [];
Q = [];
for (r = 0; r < zd[v].length; r++) E[r] = zd[v][r], H[r] = Uf[v][r], Q[r] = ki[r];
for (r = 0; r < F.customfields.length; r++) {
var M = O(F.customfields[r].text, F, B),
ca = O(F.customfields[r].alttext, F, B).split(/\r\n|\r|\n/g);
ca.unshift(M);
for (var W = "", Ma = "", w = 0; w < ca.length; w++) M = ae(ca[w]), "" != M && (W += Ma + Gl(M), Ma = "|");
"" != W && (E.unshift(RegExp(W, "i")), H.unshift(RegExp(W, "i")), Q.unshift("customfield" + r))
}
}
break
}
} else y && (F = new cj, F.group = "", F.ffid = "0", F.profiletype = "", F.profilename = "translation", F.profilelanguage = da(J), F.firstname = da("firstname"), F.firstname2 = da("firstname2"), F.firstname3 = da("firstname3"), F.middlename = da("middlename"), F.lastname = da("lastname"), F.lastname2 = da("lastname2"), F.lastname3 = da("lastname3"), F.email =
da("email"), F.mobileemail = da("mobileemail"), F.company = da("company"), F.ssn = da("ssn"), F.birthday = da("birthday"), F.address1 = da("address1"), F.address2 = da("address2"), F.address3 = da("address3"), F.city = da("city"), F.county = da("county"), F.state = da("state"), F.state_name = da("state_name"), F.zip = da("zip"), F.country = da("country"), F.country_cc3l = da("country_cc3l"), F.country_name = da("country_name"), F.countryphone = "countryphone", F.countryevephone = "countryevephone", F.countryfaxphone = "countryfaxphone", F.countrymobphone =
"countrymobphone", F.phoneext = da("phoneext"), F.evephoneext = da("evephoneext"), F.faxphoneext = da("faxphoneext"), F.mobilephoneext = da("mobilephoneext"), F.phone = da("phone"), F.evephone = da("evephone"), F.fax = da("fax"), F.mobilephone = da("mobilephone"), F.ccname = da("ccname"), F.ccnum = da("ccnum"), F.ccstart = da("ccstart"), F.ccexp = da("ccexp"), F.cccsc = da("cccsc"), F.ccissuenum = da("ccissuenum"), F.username = da("username"), F.gender = da("gender"), F.title = da("title"), F.pwprotect = "0", F.creditmon = "0", F.customfields = [], F.timezone =
da("timezone"), F.bankname = da("bankname"), F.bankacctnum = da("bankacctnum"), F.bankroutingnum = da("bankroutingnum"), F.notes = da("notes"), "undefined" == typeof LP_to_formfill && (LP_to_formfill = []), LP_to_formfill.promocode = "promocode", L = J, 5 == L.length && (v = L), "en-US" != v && Bo(v), E = zd[v], H = Uf[v]);
var Z = null,
V = null,
Qa = null;
try {
f && (l.getSelection ? (Z = l.getSelection(), "" == Z.toString() ? Z = V = Qa = null : (Z.getRangeAt && (V = Z.getRangeAt(0)), e.createRange && (Qa = e.createRange()))) : e.selection && (Z = e.selection.createRange(), Qa = e.body.createTextRange(),
"" == Z.text && (Z = V = Qa = null)))
} catch (ba) {
Z = V = Qa = null
}
var ja = {
value: 0
}, ha = {
value: 0
}, U = {}, T = {}, P = {}, ma = {};
U.value = !1;
T.value = !1;
P.value = !1;
ma.value = !1;
for (D = 0; D < C.length + 1; D++) {
var na = D < C.length ? C[D] : null,
la;
if (null != na) la = na.elements;
else {
la = [];
for (var wa = ["input", "select", "textarea"], r = 0; r < wa.length; r++)
for (var oa = e.getElementsByTagName(wa[r]), w = 0; w < oa.length; w++)
if ("unknown" == typeof oa[w].form || null == oa[w].form) la[la.length] = oa[w]
} if ("undefined" != typeof la) {
for (var qa = [], w = 0; w < E.length; w++) qa[Q[w]] =
0;
var fa = [],
ua = Ws(la, c, {
value: 0
}, qa, fa, {
value: !1
}, f, Z, V, Qa, ha, E, Q, H, ja, d, U, T, P, ma, l, v);
if (0 == ua) return z && (z.m_checkfillformresult = !1, z.m_checkfillformnumforms = C.length), !1;
if (1 == ua) return z && (z.m_checkfillformresult = !0, z.m_checkfillformnumforms = C.length), !0;
if (f) {
var aa = "birthday",
xa = "birthmonth";
F && "US" == O(F.country, F, B) && (aa = "birthmonth", xa = "birthday");
var X = [];
"es-ES" != v && "es-MX" != v && "ca-ES" != v && "ja-JP" != v ? (X[X.length] = "name name name firstname middlename lastname".split(" "), X[X.length] = "firstname firstname lastname firstname middlename lastname".split(" "),
X[X.length] = "firstname lastname lastname firstname middlename lastname".split(" "), X[X.length] = ["name", "name", "firstname", "lastname"], X[X.length] = ["name", "lastname", "firstname", "lastname"], X[X.length] = ["name", "firstname", "firstname", "lastname"], X[X.length] = "lastname lastname lastname firstname middlename lastname".split(" "), X[X.length] = ["lastname", "lastname", "firstname", "lastname"], X[X.length] = ["firstname", "firstname", "firstname", "lastname"], X[X.length] = "firstname lastname firstname firstname middlename lastname".split(" "),
X[X.length] = ["firstname", "name", "firstname", "lastname"]) : (X[X.length] = "name lastname lastname firstname lastname lastname2".split(" "), X[X.length] = "name lastname lastname2 firstname lastname lastname2".split(" "), X[X.length] = ["name", "lastname", "firstname", "fulllastname"], X[X.length] = "firstname lastname lastname firstname lastname lastname2".split(" "), X[X.length] = ["fulllastname", "fulllastname", "lastname", "lastname2"], X[X.length] = ["name", "name", "firstname", "lastname"]);
X[X.length] = "address address address address1 address2 address3".split(" ");
X[X.length] = "address2 address2 address address1 address2 address3".split(" ");
X[X.length] = "address1 address3 address2 address1 address2 address3".split(" ");
X[X.length] = ["address", "address", "address1", "address2"];
X[X.length] = ["address", "address2", "address1", "address2"];
X[X.length] = ["address1", "address1", "address1", "address2"];
X[X.length] = ["address", "address1", "address1", "address2"];
X[X.length] = ["address2", "address2", "address1", "address2"];
X[X.length] = ["address1", "address3", "address1", "address2"];
X[X.length] = ["address", "address3", "address1", "address2"];
X[X.length] = "ssn ssn ssn ssn1 ssn2 ssn3".split(" ");
X[X.length] = ["zip", "zip", "zip1", "zip2"];
X[X.length] = ["birthmonth", "birthdate", "birthyear", aa, xa, "birthyear"];
X[X.length] = ["birthday", "birthday", "birthday", aa, xa, "birthyear"];
X[X.length] = ["birthdate", "birthdate", "birthdate", aa, xa, "birthyear"];
X[X.length] = ["birthdate", "birthdate", "birthyear", aa, xa, "birthyear"];
X[X.length] = ["birthday", "birthday", aa, xa];
X[X.length] = ["birthdate", "birthdate", aa,
xa
];
for (var sa = 1; 4 >= sa; sa++) {
var va = "evephone";
2 == sa && (va = "phone");
3 == sa && (va = "fax");
4 == sa && (va = "mobilephone");
X[X.length] = [va, va, va, va + "1", va + "2", va + "3"];
X[X.length] = [va + "1", va + "2", va, va + "1", va + "2", va + "3"];
X[X.length] = [va + "1", va + "1", va + "2", va + "1", va + "2", va + "3"];
X[X.length] = [va + "1", va + "1", va + "1", va + "1", va + "2", va + "3"];
X[X.length] = [va + "1", va, va, va + "1", va + "2", va + "3"];
X[X.length] = [va, va, va + "2", va + "1", va + "2", va + "3"];
X[X.length] = [va, va + "2", va + "3", va + "1", va + "2", va + "3"];
X[X.length] = [va, va + "2", va, va + "1", va +
"2", va + "3"
];
X[X.length] = [va, va + "3", va, va + "1", va + "2", va + "3"];
X[X.length] = [va, va, va + "1", va + "23"]
}
X[X.length] = "ccnum ccnum ccnum ccnum ccnum1 ccnum2 ccnum3 ccnum4".split(" ");
X[X.length] = "ccnum ccnum ccnum ccnum1 amexccnum2 amexccnum3".split(" ");
X[X.length] = ["ccexp", "ccexp", "ccexpmonth", "ccexpyear"];
X[X.length] = ["ccexp", "ccexpyear", "ccexpmonth", "ccexpyear"];
X[X.length] = ["ccexpyear", "ccexpyear", "ccexpmonth", "ccexpyear"];
X[X.length] = ["ccstart", "ccstart", "ccstartmonth", "ccstartyear"];
X[X.length] = ["ccstart",
"ccstartyear", "ccstartmonth", "ccstartyear"
];
X[X.length] = "cctype cctype cctype firstname middlename lastname".split(" ");
if (T.value || U.value || ma.value || P.value) {
for (var Aa = !0, r = 0; r < fa.length; r++) "country" == fa[r].namematch && "country" == fa[r].textmatch && (Aa = !1), "state" == fa[r].namematch && "state" == fa[r].textmatch && (Aa = !1);
if (Aa) {
for (var za = [], Ia = [], r = 0; r < fa.length; r++) {
var Ta = fa[r].namematch,
Ga = fa[r].textmatch;
"" != Ta && (Ia[Ta] = 1);
"" != Ga && (za[Ga] = 1)
}
var Va = vo(Ia),
Ca = vo(za);
if (Va > Ca)
for (r = 0; r < fa.length; r++) fa[r].namematch &&
(fa[r].regexpname = fa[r].namematch)
}
}
var Ka = fa,
Fa = [];
Fa[Fa.length] = ["birthdate", "birthday", "birthmonth"];
for (var ya = "", La = 0; La < Ka.length; La++) ya += "," + Ka[La].regexpname;
for (var Ja = 0; Ja < Fa.length; Ja++) {
for (var Ha = 0, Ya = 1; Ya < Fa[Ja].length; Ya++) Ha += -1 == ya.indexOf("," + Fa[Ja][Ya]) ? 0 : 1;
if (1 == Ha)
for (var Sa = Fa[Ja], Ua = Ka, Ra = Sa[0], Oa = 0; Oa < Sa.length; Oa++)
for (var Pa = 0; Pa < Ua.length; Pa++) Ua[Pa].regexpname == Sa[Oa] && (Ua[Pa].regexpname = Ra, Ua[Pa].namematch == Sa[Oa] && (Ua[Pa].namematch = Ra), Ua[Pa].textmatch == Sa[Oa] && (Ua[Pa].textmatch =
Ra))
}
for (r = 0; r < fa.length; r++) {
var jb = fa[r],
Ba = jb.elt;
if (oc(Ba)) {
for (var Da = jb.regexpname, gb = !1, w = 0; w < X.length; w++) {
var fb = X[w];
if (0 == fb.length % 2 && Da == fb[0]) {
var kb = fb.length / 2;
if (!(r >= fa.length - (kb - 1)) && !("cctype" == fb[0] && "firstname" == fb[3] && ("select-one" == Ba.type || "radio" == Ba.type))) {
for (var Xa = 0; Xa < kb && Co(fa[r + Xa].elt, fb[kb + Xa]) && !(1 <= Xa && (fa[r + Xa].regexpname != fb[Xa] || !fa[r + Xa].last_field_filled)); Xa++);
if (!(Xa < kb)) {
Da = fb[kb];
for (Xa = 1; Xa < kb; Xa++) fa[r + Xa].regexpname = fb[kb + Xa];
gb = !0;
break
}
}
}
}
if (!gb &&
"cctype" == Da && "select-one" != Ba.type && "radio" != Ba.type) {
for (var db = !1, Ea = 0; Ea < fa.length; Ea++)
if (0 == fa[Ea].regexpname.indexOf("ccnum")) {
db = !0;
break
}
db || (Da = "ccnum")
} else if (!gb && "bankacctnum" == Da) {
for (var Ab = db = !1, eb = !1, Ea = 0; Ea < fa.length; Ea++)
if (0 == fa[Ea].regexpname.indexOf("ccnum")) {
db = !0;
break
} else if (0 == fa[Ea].regexpname.indexOf("cc")) Ab = !0;
else if (0 == fa[Ea].regexpname.indexOf("bank") && "bankacctnum" != fa[Ea].regexpname) {
eb = !0;
break
}!db && Ab && !eb && (Da = "ccnum")
} else if (!gb && "cccsc" == Da) {
db = !1;
for (Ea =
0; Ea < fa.length; Ea++)
if (0 == fa[Ea].regexpname.indexOf("ccnum")) {
db = !0;
break
}
if (!db) continue
} else if (!gb && 0 == Da.indexOf("ccnum") && "select-one" == Ba.type) Da = "cctype";
else if ("address3" == Da && "" == F.address3 && "" != F.city) {
for (var yb = !1, Ea = 0; Ea < fa.length; Ea++)
if ("city" == fa[Ea].regexpname) {
yb = !0;
break
}
yb || (Da = "city")
} else if ("address" == Da && "textarea" == Ba.type) {
for (var vb = !1, Ea = 0; Ea < fa.length; Ea++)
if ("city" == fa[Ea].regexpname || "county" == fa[Ea].regexpname || "state" == fa[Ea].regexpname) {
vb = !0;
break
}
vb || (Da = "fulladdress")
}
if ("undefined" !=
typeof Do && Do)
if (("email" == Ba.type || "text" == Ba.type || "password" == Ba.type || "textarea" == Ba.type || "tel" == Ba.type || "url" == Ba.type) && "" != Ba.value) continue;
else if ("select-one" == Ba.type && 0 != Ba.selectedIndex) continue;
else if (("checkbox" == Ba.type || "radio" == Ba.type) && Ba.checked) continue;
if (0 == Da.indexOf("cc"))
if (G && !K) continue;
else if (!G || !K) {
var rb = Da;
"undefined" != typeof hb[Da] ? rb = hb[Da] : "cctype" == Da && (rb = "ccnum");
if (F && "undefined" != typeof F[rb] && "" != F[rb] && (G || (K = ol(Za("InsecureSite", v)) ? !0 : !1, G = !0), !K)) continue
}
var mb =
Ba.value,
ta = z,
I = Ba,
ob = Da,
zb = g,
Mb = n,
Fd = v,
Hb = F,
Gb = J,
pb = "undefined" != typeof y ? y : !1;
pb && (Xs = !1);
try {
Mb && 0 == ob.indexOf("cc") && (zb = Mb);
var N = null;
if (zb)
for (var R = 0; R < ka.length; R++) {
if (ka[R].ffid == zb) {
N = ka[R];
break
}
} else pb ? pb && (N = Hb) : N = ka[0];
if (N && !I.readOnly && !I.disabled) {
ta && (ta.formfillffid = zb);
var Jb = 0,
cb = 0;
"undefined" != typeof I.size && (Jb = parseInt(I.size));
"undefined" != typeof I.maxLength && (cb = parseInt(I.maxLength));
Co(I, ob) || (ob = ob.replace(/\d+$/, ""));
var Kb = I.value;
if (0 == ob.indexOf("customfield")) {
var Db =
parseInt(ob.substring(11));
N.customfields.length > Db && pa(ta, I, O(N.customfields[Db].value, N, B))
}
var Qb = "select-one" == I.type && (I.options[0].value.match(/^\d{4}$/) || 1 < I.options.length && I.options[1].value.match(/^\d{4}$/));
"birthmonth" == ob && "select-one" == I.type && 28 <= I.options.length ? ob = Qb ? "birthyear" : "birthday" : "birthday" == ob && "select-one" == I.type && 28 > I.options.length ? ob = "birthmonth" : "birthday" == ob && "select-one" == I.type && Qb ? ob = "birthyear" : "birthyear" == ob && "select-one" == I.type && 0 < I.options.length && I.options[0].value.match(/^\d$/) &&
0 != I.options[0].value ? ob = "birthday" : "birthyear" == ob && "select-one" == I.type && 35 > I.options.length && (ob = 12 < I.options.length ? "birthday" : "birthmonth");
if ("ccexpmonth" == ob && "select-one" == I.type && 0 < I.options.length && (I.options[I.options.length - 1].value.match(/^\d{4}$/) || I.options[I.options.length - 1].text.match(/^\d{4}$/))) ob = "ccexpyear";
if ("cctype" == ob && "select-one" == I.type && 100 <= I.options.length)
for (R = 0; R < I.options.length; R++)
if ("US" == I.options[R].value || "USA" == I.options[R].value) {
ob = "country";
break
}
if (pb) {
var sb = {
title: 1,
name: 1,
firstname: 1,
middlename: 1,
middleinitial: 1,
lastname: 1,
username: 1,
maiden: 1,
birthdate: 1,
birthday: 1,
birthmonth: 1,
birthyear: 1,
age: 1,
ssn: 1,
ssn1: 1,
ssn2: 1,
ssn3: 1,
company: 1,
addrbookname: 1,
address: 1,
address1: 1,
address2: 1,
address3: 1,
city: 1,
housenumbername: 1,
housenumber: 1,
housename: 1,
county: 1,
state: 1,
zip: 1,
zip1: 1,
zip2: 1,
country: 1,
phone: 1,
phone1: 1,
phone2: 1,
phone3: 1,
phone23: 1,
phoneext: 1,
fax: 1,
fax1: 1,
fax2: 1,
fax3: 1,
fax23: 1,
evephone: 1,
evephone1: 1,
evephone2: 1,
evephone3: 1,
evephone23: 1,
mobilephone: 1,
mobilephone1: 1,
mobilephone2: 1,
mobilephone3: 1,
mobilephone23: 1,
ccname: 1,
ccnum: 1,
ccnum1: 1,
ccnum2: 1,
ccnum3: 1,
ccnum4: 1,
ccstart: 1,
ccstartmonth: 1,
ccstartyear: 1,
ccexp: 1,
ccexpmonth: 1,
ccexpyear: 1,
cccsc: 1,
ccissuenum: 1,
cctype: 1,
ccphone: 1,
bankname: 1,
bankacctnum: 1,
bankroutingnum: 1,
email: 1,
emailalert: 1,
search: 1,
securityanswer: 1,
captcha: 1,
combineddummy: 1,
comments: 1,
promocode: 1,
invoice: 1,
currpass: 1,
gender: 1,
timezone: 1
};
switch (Gb) {
case "es-ES":
case "es-MX":
sb.lastname2 = 1;
break;
case "ja-JP":
sb.mobileemail = 1, sb.firstname = "namestdfirst",
sb.firstname2 = "namefurfirst", sb.firstname3 = "nameromfirst", sb.lastname = "namestdlast", sb.lastname2 = "namefurlast", sb.lastname3 = "nameromlast"
}
var S = "undefined" != typeof sb[ob] ? 1 == sb[ob] ? ob : sb[ob] : "UNKNOWN:" + ob;
pa(ta, I, S)
} else switch (ob) {
case "firstname":
pa(ta, I, O(N.firstname, N, B));
break;
case "firstname2":
pa(ta, I, O(N.firstname2, N, B));
break;
case "firstname3":
pa(ta, I, O(N.firstname3, N, B));
break;
case "lastname":
pa(ta, I, O(N.lastname, N, B));
break;
case "lastname2":
pa(ta, I, O(N.lastname2, N, B));
break;
case "lastname3":
pa(ta,
I, O(N.lastname3, N, B));
break;
case "email":
pa(ta, I, O(N.email, N, B));
break;
case "mobileemail":
pa(ta, I, O(N.mobileemail, N, B));
break;
case "company":
pa(ta, I, O(N.company, N, B));
break;
case "address1":
pa(ta, I, O(N.address1, N, B));
break;
case "address2":
pa(ta, I, O(N.address2, N, B), !1, !1, "" != N.address1 ? !0 : !1);
break;
case "address3":
pa(ta, I, O(N.address3, N, B), !1, !1, "" != N.address1 ? !0 : !1);
break;
case "username":
pa(ta, I, O(N.username, N, B), !0);
break;
case "phoneext":
pa(ta, I, O(N.phoneext, N, B), !1, !1, "" != N.phone);
break;
case "bankname":
pa(ta,
I, O(N.bankname, N, B));
break;
case "bankacctnum":
pa(ta, I, O(N.bankacctnum, N, B));
break;
case "bankroutingnum":
pa(ta, I, O(N.bankroutingnum, N, B));
break;
case "county":
pa(ta, I, O(N.county, N, B));
break;
case "ccname":
pa(ta, I, O(N.ccname, N, B));
break;
case "ccissuenum":
pa(ta, I, O(N.ccissuenum, N, B), !0);
break;
case "fullmobilephone":
pa(ta, I, O(N.mobilephone, N, B), !0);
break;
case "fullevephone":
pa(ta, I, O(N.evephone, N, B), !0);
break;
case "fullphone":
pa(ta, I, O(N.phone, N, B), !0);
break;
case "fullfax":
pa(ta, I, O(N.fax, N, B), !0);
break;
case "securityanswer":
pa(ta, I, "");
break;
case "promocode":
pa(ta, I, "undefined" != typeof LP_to_formfill && "undefined" != typeof LP_to_formfill.promocode ? LP_to_formfill.promocode : "");
break;
case "maiden":
pa(ta, I, "");
break;
case "ccphone":
pa(ta, I, "");
break;
case "comments":
pa(ta, I, "");
break;
case "invoice":
pa(ta, I, "");
break;
case "addrbookname":
pa(ta, I, "");
break;
case "emailalert":
pa(ta, I, "");
break;
case "combineddummy":
pa(ta, I, "");
break;
case "language":
S = O(N.profilelanguage, N, B);
if ("select-one" == I.type) {
if ("" ==
S) break;
for (var S = S.toLowerCase(), Na = S.replace("-", "_"), Sb = !1, R = 0; R < I.options.length; R++)
if (I.options[R].value.toLowerCase() == S || I.options[R].text.toLowerCase() == S || I.options[R].value.toLowerCase() == Na || I.options[R].text.toLowerCase() == Na) {
I.selectedIndex = R;
Sb = !0;
break
}
if (!Sb) {
S = S.substring(0, 2);
for (R = 0; R < I.options.length; R++)
if (0 == I.options[R].value.toLowerCase().indexOf(S) || 0 == I.options[R].text.toLowerCase().indexOf(S)) {
I.selectedIndex = R;
break
}
}
} else pa(ta, I, S);
break;
case "ccfirstname":
var $a = O(N.ccname,
N, B);
if ("" != $a) {
var lb = $a.split(" ");
0 < lb.length && pa(ta, I, lb[0])
}
break;
case "ccmiddlename":
$a = O(N.ccname, N, B);
"" != $a && (lb = $a.split(" "), 2 < lb.length && pa(ta, I, lb[1]));
break;
case "cclastname":
$a = O(N.ccname, N, B);
"" != $a && (lb = $a.split(" "), 1 < lb.length && pa(ta, I, lb[lb.length - 1]));
break;
case "evephoneext":
var Nb = "";
"undefined" != typeof N.evephoneext ? Nb = N.evephoneext : "undefined" != typeof N.eveext && (Nb = N.eveext);
pa(ta, I, O(Nb, N, B), !1, !1, "" != N.evephone);
break;
case "faxphoneext":
var Ob = "";
"undefined" != typeof N.faxphoneext ?
Ob = N.faxphoneext : "undefined" != typeof N.faxext && (Ob = N.faxext);
pa(ta, I, O(Ob, N, B), !1, !1, "" != N.fax);
break;
case "mobilephoneext":
var Xb = "";
"undefined" != typeof N.mobilephoneext ? Xb = N.mobilephoneext : "undefined" != typeof N.mobileext && (Xb = N.mobileext);
pa(ta, I, O(Xb, N, B), !1, !1, "" != N.mobilephone);
break;
case "timezone":
S = O(N.timezone, N, B);
if ("select-one" == I.type) {
if ("" == S) break;
var qb = S.match(/^([-+]?\d{2}):(\d{2}),(\d)$/);
if (qb) {
var Zb = parseInt(qb[1]),
ac = parseInt(qb[2]);
parseInt(qb[3]);
var Na = Zb + ac / 60,
Wb = "GMT\\s*" +
(0 > Zb ? "-" : "\\+") + "\\s*" + (10 > Math.abs(Zb) ? "0?" : "") + Math.abs(Zb);
0 != ac && (Wb += ":" + ac);
for (var Rb = RegExp(Wb), R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].text == S || I.options[R].value == Na || I.options[R].text == Na || Rb.exec(I.options[R].value) || Rb.exec(I.options[R].text)) {
I.selectedIndex = R;
break
}
}
} else pa(ta, I, S);
break;
case "ccnum":
var dc = !1;
if (4 == cb || 3 == cb) dc = !0;
if (!dc) {
var ec = O(N.ccnum, N, B);
pa(ta, I, ec);
break
}
case "cccsc":
pa(ta, I, O(N.cccsc, N, B), !0);
break;
case "zip":
S = O(N.zip, N, B);
S.match(/^\d{5}-?(?:\d{4})?$/) ?
0 < cb && cb < S.length && (S = 9 == cb && 10 == S.length ? S.substring(0, 5) + S.substring(6, 10) : 4 == cb ? 9 <= S.length ? S.substring(S.length - 4) : "" : S.substring(0, 5)) : 0 < cb && cb < S.length && (S = S.replace(/[^A-Za-z0-9]/g, ""));
pa(ta, I, S);
break;
case "city":
S = O(N.city, N, B);
if ("select-one" == I.type) {
if ("" == S) break;
S = S.toLowerCase();
for (R = 0; R < I.options.length; R++)
if (I.options[R].value.toLowerCase() == S || I.options[R].text.toLowerCase() == S) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S);
break;
case "ssn":
var Pb = O(N.ssn, N, B);
if (4 == cb) {
var tb = Pb.replace(/\D/g,
"");
if (9 == tb.length) Pb = tb.substring(5, 9);
else break
} else 0 < cb && 11 > cb && (Pb = Pb.replace(/-/g, ""));
pa(ta, I, Pb);
break;
case "name":
S = O(N.firstname, N, B) + ("" != N.firstname && "" != N.lastname ? " " : "") + O(N.lastname, N, B);
"" == S && (S = O(N.ccname, N, B));
pa(ta, I, S);
break;
case "fulllastname":
S = O(N.lastname, N, B) + ("" != N.lastname && "" != N.lastname2 ? " " : "") + O(N.lastname2, N, B);
pa(ta, I, S);
break;
case "ssn1":
Pb = O(N.ssn, N, B);
tb = Pb.replace(/\D/g, "");
9 == tb.length && (S = tb.substring(0, 3), pa(ta, I, S));
break;
case "ssn2":
Pb = O(N.ssn, N, B);
tb =
Pb.replace(/\D/g, "");
9 == tb.length && (S = tb.substring(3, 5), pa(ta, I, S));
break;
case "ssn3":
Pb = O(N.ssn, N, B);
tb = Pb.replace(/\D/g, "");
9 == tb.length && (S = tb.substring(5, 9), pa(ta, I, S));
break;
case "birthmonth":
if ("" == N.birthday) break;
S = O(N.birthday, N, B).substring(5, 7);
if ("select-one" == I.type) {
Na = S;
"0" == Na.charAt(0) && (Na = Na.substring(1));
for (var Wb = Za("month" + Na, Fd).toLowerCase(), wb = Za("mon" + Na, Fd).toLowerCase(), R = 0; R < I.options.length; R++)
if (-1 != I.options[R].value.toLowerCase().indexOf(Wb) || -1 != I.options[R].value.toLowerCase().indexOf(wb) || -1 != I.options[R].text.toLowerCase().indexOf(Wb) || -1 != I.options[R].text.toLowerCase().indexOf(wb)) {
I.selectedIndex = R;
break
}
if (R == I.options.length)
for (R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S);
break;
case "birthday":
if ("" == N.birthday) break;
S = O(N.birthday, N, B).substring(8, 10);
if ("select-one" == I.type) {
Na = S;
"0" == Na.charAt(0) && (Na = Na.substring(1));
for (R = 0; R < I.options.length; R++)
if (I.options[R].value ==
S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S);
break;
case "birthyear":
if ("" == N.birthday) break;
var ub = O(N.birthday, N, B),
S = ub.substring(0, 4),
Na = ub.substring(2, 4);
if ("select-one" == I.type)
for (R = 0; R < I.options.length; R++) {
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else 2 == cb && (S = Na), pa(ta, I, S);
break;
case "birthdate":
ub = O(N.birthday, N, B);
N && O(N.country, N, B);
4 <= ub.length &&
(ub = 4 == cb ? ub.substring(0, 4) : 2 == cb ? ub.substring(2, 4) : "US" == O(N.country, N, B) ? ub.substring(5, 7) + "/" + ub.substring(8, 10) + "/" + ub.substring(0, 4) : ub.substring(8, 10) + "/" + ub.substring(5, 7) + "/" + ub.substring(0, 4), pa(ta, I, ub));
break;
case "address":
case "fulladdress":
var mc = "textarea" == I.type ? "\n" : " ",
Tb = [N.address1, N.address2, N.address3];
"fulladdress" == ob && (Tb[Tb.length] = N.city, Tb[Tb.length] = N.county, Tb[Tb.length] = N.state);
S = "";
for (R = 0; R < Tb.length; R++) "" != Tb[R] && (S += ("" != S ? mc : "") + O(Tb[R], N, B));
pa(ta, I, S);
break;
case "title":
S = O(N.title, N, B);
if ("select-one" == I.type) {
if ("" == S) break;
for (var cc = "", ic = "", R = 0; R < I.options.length; R++)
if (I.options[R].value.toLowerCase() == S || -1 != I.options[R].value.toLowerCase().indexOf(S) || I.options[R].text.toLowerCase() == S || -1 != I.options[R].text.toLowerCase().indexOf(S)) {
if (!("" == cc && "" == ic))
if (I.options[R].value.length <= cc.length && I.options[R].text.length <= ic.length) {
if (!(I.options[R].value.length < cc.length || I.options[R].text.length < ic.length)) continue
} else continue;
cc = I.options[R].value;
ic = I.options[R].text;
I.selectedIndex = R
}
} else S = S.substring(0, 1).toUpperCase() + S.substring(1), pa(ta, I, S);
break;
case "state":
S = O(N.state, N, B);
if ("select-one" == I.type) {
S = S.toLowerCase();
if ("" == S) break;
Na = O(N.state_name, N, B).toLowerCase();
for (R = 0; R < I.options.length; R++)
if (I.options[R].value.toLowerCase() == S || I.options[R].value.toLowerCase() == Na || I.options[R].text.toLowerCase() == S || I.options[R].text.toLowerCase() == Na) {
I.selectedIndex = R;
break
}
if (R == I.options.length) {
for (R = 0; R < I.options.length; R++)
if (-1 !=
I.options[R].value.toLowerCase().indexOf(Na) || -1 != I.options[R].text.toLowerCase().indexOf(Na)) {
I.selectedIndex = R;
break
}
if (R == I.options.length) {
for (R = 0; R < I.options.length; R++)
if (-1 != I.options[R].value.toLowerCase().indexOf(S) || -1 != I.options[R].text.toLowerCase().indexOf(S)) {
I.selectedIndex = R;
break
}
if (R == I.options.length && 2 == S.length) {
Wb = S.charAt(0) + "." + S.charAt(1) + ".";
for (R = 0; R < I.options.length; R++)
if (-1 != I.options[R].value.toLowerCase().indexOf(Wb) || -1 != I.options[R].text.toLowerCase().indexOf(Wb)) {
I.selectedIndex =
R;
break
}
}
}
}
} else pa(ta, I, S);
break;
case "country":
S = O(N.country_name, N, B);
if ("select-one" == I.type) {
var S = S.toLowerCase(),
Na = O(N.country, N, B).toLowerCase(),
Wb = O(N.country_cc3l, N, B).toLowerCase(),
wb = "usa" == Wb ? "United States of America" : "",
Eo = "undefined" != typeof N.country2 ? O(N.country2, N, B).toLowerCase() : "";
if ("" == S && "" == Na && "" == Wb && "" == Eo) break;
for (R = 0; R < I.options.length; R++)
if ("" != I.options[R].value && (I.options[R].value.toLowerCase() == S || I.options[R].value.toLowerCase() == Na || I.options[R].value.toLowerCase() ==
Wb || I.options[R].value.toLowerCase() == wb || I.options[R].value.toLowerCase() == Eo || I.options[R].text.toLowerCase() == S || I.options[R].text.toLowerCase() == Na || I.options[R].text.toLowerCase() == Wb || I.options[R].text.toLowerCase() == wb || I.options[R].text.toLowerCase() == Eo)) {
I.selectedIndex = R;
break
}
} else 3 == cb ? pa(ta, I, O(N.country_cc3l, N, B)) : 2 == cb ? pa(ta, I, O(N.country, N, B)) : pa(ta, I, S);
break;
case "cctype":
var fc = O(N.ccnum, N, B),
$b = "UNK";
if (("34" == fc.substring(0, 2) || "37" == fc.substring(0, 2)) && 15 == fc.length) $b = "AMEX";
else if (("6011" == fc.substring(0, 4) || "65" == fc.substring(0, 2)) && 16 == fc.length) $b = "DISC";
else if (("51" == fc.substring(0, 2) || "52" == fc.substring(0, 2) || "53" == fc.substring(0, 2) || "54" == fc.substring(0, 2) || "55" == fc.substring(0, 2)) && 16 == fc.length) $b = "MC";
else if (("417500" == fc.substring(0, 6) || "4917" == fc.substring(0, 4) || "4913" == fc.substring(0, 4) || "4508" == fc.substring(0, 4) || "4844" == fc.substring(0, 4)) && 16 == fc.length) $b = "ELECTRON";
else if ("4" == fc.substring(0, 1) && 16 == fc.length) $b = "VISA";
else if (("5018" == fc.substring(0,
4) || "5020" == fc.substring(0, 4) || "5038" == fc.substring(0, 4) || "6304" == fc.substring(0, 4) || "6759" == fc.substring(0, 4) || "6761" == fc.substring(0, 4)) && 12 <= fc.length && 19 >= fc.length) $b = "MAESTRO";
else if (("6334" == fc.substring(0, 4) || "6767" == fc.substring(0, 4)) && (16 == fc.length || 18 == fc.length || 19 == fc.length)) $b = "SOLO";
S = $b;
if ("UNK" != S)
if ("select-one" == I.type) {
for (var lc = -1, R = 0; R < I.options.length; R++) {
var Il = I.options[R].value.toUpperCase(),
kc = I.options[R].text.toUpperCase();
if (Il == S || kc == S) {
I.selectedIndex = R;
break
}
if (nh(S,
Il) || nh(S, kc)) lc = R
}
R == I.options.length && -1 != lc && (I.selectedIndex = lc)
} else if ("radio" == I.type) {
var Il = I.value.toUpperCase(),
kc = I.id.toUpperCase(),
gc = !1;
if (nh(S, Il) || nh(S, kc)) gc = !0;
if (!gc) {
var Bb = I.parentNode;
if (Bb && Bb.childNodes) {
for (R = 0; R < Bb.childNodes.length && Bb.childNodes[R] != I; R++);
if (R < Bb.childNodes.length - 1) {
var Yb = Bb.childNodes[R + 1];
if (3 == Yb.nodeType && nh(S, Yb.nodeValue)) gc = !0;
else if (3 == Yb.nodeType && R < Bb.childNodes.length - 2 || 1 == Yb.nodeType) {
var Eb = 1 == Yb.nodeType ? Bb.childNodes[R + 1] : Bb.childNodes[R +
2];
if (1 == Eb.nodeType && "LABEL" == Eb.tagName && Eb.htmlFor == I.id) {
var bc = Af(Eb, I);
nh(S, bc) && (gc = !0)
} else 1 == Eb.nodeType && "IMG" == Eb.tagName && "string" == typeof Eb.alt && (bc = Eb.alt, nh(S, bc) && (gc = !0))
}
}
}
}
gc && (I.checked = !0, I.click())
} else pa(ta, I, S);
break;
case "ccexpmonth":
if ("" == N.ccexp) break;
S = O(N.ccexp, N, B).substring(5, 7);
if ("select-one" == I.type) {
Na = S;
"0" == Na.charAt(0) && (Na = Na.substring(1));
Wb = Za("month" + Na, Fd).toLowerCase();
wb = Za("mon" + Na, Fd).toLowerCase();
for (R = 0; R < I.options.length; R++)
if (-1 != I.options[R].value.toLowerCase().indexOf(Wb) || -1 != I.options[R].value.toLowerCase().indexOf(wb) || -1 != I.options[R].text.toLowerCase().indexOf(Wb) || -1 != I.options[R].text.toLowerCase().indexOf(wb)) {
I.selectedIndex = R;
break
}
if (R == I.options.length)
for (R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S);
break;
case "ccexpyear":
if ("" == N.ccexp) break;
var Bc = O(N.ccexp, N, B),
S = Bc.substring(0, 4);
if ("select-one" == I.type) {
Na = Bc.substring(2, 4);
for (R = 0; R <
I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S, !1, !0);
break;
case "ccexp":
Bc = O(N.ccexp, N, B);
7 == Bc.length && (Bc += "-01");
S = 10 == Bc.length ? Bc.substring(5, 7) + "/" + Bc.substring(2, 4) : "";
if ("select-one" == I.type) {
if ("" == S) break;
Na = 10 == Bc.length ? Bc.substring(5, 7) + "/" + Bc.substring(0, 4) : "";
Wb = 10 == Bc.length ? Bc.substring(5, 7) + Bc.substring(2, 4) : "";
wb = 10 == Bc.length ? Bc.substring(5, 7) + Bc.substring(0, 4) : "";
for (R =
0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].value == Wb || I.options[R].value == wb || I.options[R].text == S || I.options[R].text == Na || I.options[R].text == Wb || I.options[R].text == wb) {
I.selectedIndex = R;
break
}
} else 10 == Bc.length && (4 == cb ? S = Bc.substring(5, 7) + Bc.substring(2, 4) : 9 == cb && (S = Bc.substring(5, 7) + " / " + Bc.substring(0, 4))), pa(ta, I, S);
break;
case "ccstartmonth":
if ("" == N.ccstart) break;
S = O(N.ccstart, N, B).substring(5, 7);
if ("select-one" == I.type) {
Na = S;
"0" == Na.charAt(0) &&
(Na = Na.substring(1));
Wb = Za("month" + Na, Fd).toLowerCase();
wb = Za("mon" + Na, Fd).toLowerCase();
for (R = 0; R < I.options.length; R++)
if (-1 != I.options[R].value.toLowerCase().indexOf(Wb) || -1 != I.options[R].value.toLowerCase().indexOf(wb) || -1 != I.options[R].text.toLowerCase().indexOf(Wb) || -1 != I.options[R].text.toLowerCase().indexOf(wb)) {
I.selectedIndex = R;
break
}
if (R == I.options.length)
for (R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex =
R;
break
}
} else pa(ta, I, S);
break;
case "ccstartyear":
if ("" == N.ccstart) break;
var Cb = O(N.ccstart, N, B),
S = Cb.substring(0, 4);
if ("select-one" == I.type) {
Na = Cb.substring(2, 4);
for (R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].text == S || I.options[R].text == Na) {
I.selectedIndex = R;
break
}
} else pa(ta, I, S, !1, !0);
break;
case "ccstart":
Cb = O(N.ccstart, N, B);
S = 10 == Cb.length ? Cb.substring(5, 7) + "/" + Cb.substring(2, 4) : "";
if ("select-one" == I.type) {
if ("" == S) break;
Na = 10 == Cb.length ? Cb.substring(5,
7) + "/" + Cb.substring(0, 4) : "";
Wb = 10 == Cb.length ? Cb.substring(5, 7) + Cb.substring(2, 4) : "";
wb = 10 == Cb.length ? Cb.substring(5, 7) + Cb.substring(0, 4) : "";
for (R = 0; R < I.options.length; R++)
if (I.options[R].value == S || I.options[R].value == Na || I.options[R].value == Wb || I.options[R].value == wb || I.options[R].text == S || I.options[R].text == Na || I.options[R].text == Wb || I.options[R].text == wb) {
I.selectedIndex = R;
break
}
} else 10 == Cb.length && 4 == cb && (S = Cb.substring(5, 7) + Cb.substring(2, 4)), pa(ta, I, S);
break;
case "ccnum1":
S = O(N.ccnum, N, B).substring(0,
4);
pa(ta, I, S);
break;
case "ccnum2":
S = O(N.ccnum, N, B).substring(4, 8);
pa(ta, I, S);
break;
case "ccnum3":
S = O(N.ccnum, N, B).substring(8, 12);
pa(ta, I, S);
break;
case "ccnum4":
S = O(N.ccnum, N, B).substring(12);
pa(ta, I, S);
break;
case "amexccnum2":
S = O(N.ccnum, N, B).substring(4, 10);
pa(ta, I, S);
break;
case "amexccnum3":
S = O(N.ccnum, N, B).substring(10, 15);
pa(ta, I, S);
break;
case "middlename":
var S = O(N.middlename, N, B),
uc = S.substring(0, 1);
1 == cb || 2 == cb ? pa(ta, I, uc) : pa(ta, I, S);
break;
case "middleinitial":
S = O(N.middlename, N, B).substring(0,
1);
pa(ta, I, S);
break;
case "mobilephone1":
case "mobilephone2":
case "mobilephone3":
case "evephone1":
case "evephone2":
case "evephone3":
case "phone1":
case "phone2":
case "phone3":
case "fax1":
case "fax2":
case "fax3":
var Lb = ob.substring(0, ob.length - 1),
wc = ob.substring(ob.length - 1),
Fb = N.phone;
"evephone" == Lb && (Fb = N.evephone);
"mobilephone" == Lb && (Fb = N.mobilephone);
"fax" == Lb && (Fb = N.fax);
S = O(Fb, N, B);
3 >= S.length && (S = "");
tb = S.replace(/\D/g, "");
10 == tb.length && "2" <= tb.charAt(0) && "2" <= tb.charAt(3) && (tb = "1" + tb);
if (11 ==
tb.length && "1" == tb.charAt(0) && "2" <= tb.charAt(1) && "2" <= tb.charAt(4)) switch (wc) {
case "1":
pa(ta, I, tb.substring(1, 4));
break;
case "2":
pa(ta, I, tb.substring(4, 7));
break;
case "3":
pa(ta, I, tb.substring(7, 11))
} else pa(ta, I, S, !0);
break;
case "mobilephone23":
case "evephone23":
case "phone23":
case "fax23":
Lb = ob.substring(0, ob.length - 2);
Fb = N.phone;
"evephone" == Lb && (Fb = N.evephone);
"fax" == Lb && (Fb = N.fax);
"mobilephone" == Lb && (Fb = N.mobilephone);
S = O(Fb, N, B);
3 >= S.length && (S = "");
tb = S.replace(/\D/g, "");
10 == tb.length && "2" <= tb.charAt(0) &&
"2" <= tb.charAt(3) && (tb = "1" + tb);
if (11 == tb.length && "1" == tb.charAt(0) && "2" <= tb.charAt(1) && "2" <= tb.charAt(4)) {
var yc = (0 >= Jb || 8 <= Jb) && (0 >= cb || 8 <= cb) ? !0 : !1;
pa(ta, I, tb.substring(4, 7) + (yc ? "-" : "") + tb.substring(7, 11))
} else pa(ta, I, S, !0);
break;
case "mobilephone":
case "evephone":
case "phone":
case "fax":
var Lb = ob,
Fb = N.phone,
hc = "undefined" != typeof N.countryphone ? N.countryphone : "undefined" != typeof N.phone3lcc ? N.phone3lcc : "";
"evephone" == Lb && (Fb = N.evephone, hc = "undefined" != typeof N.countryevephone ? N.countryevephone :
"undefined" != typeof N.evephone3lcc ? N.evephone3lcc : "");
"fax" == Lb && (Fb = N.fax, hc = "undefined" != typeof N.countryfaxphone ? N.countryfaxphone : "undefined" != typeof N.fax3lcc ? N.fax3lcc : "");
"mobilephone" == Lb && (Fb = N.mobilephone, hc = "undefined" != typeof N.countrymobphone ? N.countrymobphone : "undefined" != typeof N.mobilephone3lcc ? N.mobilephone3lcc : "");
S = O(Fb, N, B);
3 >= S.length && (S = "");
if (11 == S.length && S.match(/^\d+$/) && "1" == S.charAt(0) && "2" <= S.charAt(1) && "2" <= S.charAt(4)) {
if (S = S.substring(1), 0 >= cb || 12 <= cb) S = S.substring(0,
3) + "-" + S.substring(3, 6) + "-" + S.substring(6, 10)
} else if (2 <= S.length) {
var rc = O(hc, N, B),
jc = Ys(rc);
jc && 0 == S.indexOf(jc) && "0" == S.charAt(jc.length) && (S = S.substring(jc.length))
}
pa(ta, I, S, !0);
break;
case "mobilephonecc":
case "evephonecc":
case "phonecc":
case "faxcc":
Lb = ob.substring(0, ob.length - 2);
Fb = N.phone;
hc = "undefined" != typeof N.countryphone ? N.countryphone : "undefined" != typeof N.phone3lcc ? N.phone3lcc : "";
"evephone" == Lb && (Fb = N.evephone, hc = "undefined" != typeof N.countryevephone ? N.countryevephone : "undefined" !=
typeof N.evephone3lcc ? N.evephone3lcc : "");
"fax" == Lb && (Fb = N.fax, hc = "undefined" != typeof N.countryfaxphone ? N.countryfaxphone : "undefined" != typeof N.fax3lcc ? N.fax3lcc : "");
"mobilephone" == Lb && (Fb = N.mobilephone, hc = "undefined" != typeof N.countrymobphone ? N.countrymobphone : "undefined" != typeof N.mobilephone3lcc ? N.mobilephone3lcc : "");
S = O(Fb, N, B);
rc = O(hc, N, B);
(jc = Ys(rc)) && 0 == S.indexOf(jc) && pa(ta, I, jc, !0);
break;
case "zip1":
S = O(N.zip, N, B);
tb = S.replace(/\D/g, "");
if (5 == tb.length || 9 == tb.length) S = tb.substring(0, 5);
else if ("ja-JP" ==
Fd && 7 == tb.length) S = tb.substring(0, 3);
else {
var Ub = S.replace(/[^A-Za-z0-9]/g, "");
Ub.match(/^(?:[A-Za-z]\d){3}$/) ? S = Ub.substring(0, 3) : Ub.match(/^[A-Za-z]{1,2}\d[A-Za-z0-9]?\d[A-Za-z]{2}$/) ? S = Ub.substring(0, Ub.length - 3) : Ub.length < S.length && (lb = S.split(/[^A-Za-z0-9]+/), S = lb[0])
}
pa(ta, I, S);
break;
case "zip2":
var S = O(N.zip, N, B),
tb = S.replace(/\D/g, ""),
zc = !1;
5 == tb.length ? (S = "", zc = !0) : 9 == tb.length ? S = tb.substring(5, 9) : "ja-JP" == Fd && 7 == tb.length ? S = tb.substring(3, 7) : (Ub = S.replace(/[^A-Za-z0-9]/g, ""), Ub.match(/^(?:[A-Za-z]\d){3}$/) ?
S = Ub.substring(3, 6) : Ub.match(/^[A-Za-z]{1,2}\d[A-Za-z0-9]?\d[A-Za-z]{2}$/) ? S = Ub.substring(Ub.length - 3) : Ub.length < S.length && (lb = S.split(/[^A-Za-z0-9]+/), S = lb[1]));
pa(ta, I, S, !1, !1, zc);
break;
case "gender":
S = O(N.gender, N, B).toUpperCase();
if ("" != S)
if (Na = S, "M" == S && (Na = Za("Male", Fd)), "F" == S && (Na = Za("Female", Fd)), Na = Na.toUpperCase(), "select-one" == I.type)
for (R = 0; R < I.options.length; R++) {
var Ac = ae(I.options[R].text).toUpperCase(),
nc = ae(I.options[R].value).toUpperCase();
if (0 == nc.indexOf(S) || 0 == Ac.indexOf(S) ||
0 == nc.indexOf(Na) || 0 == Ac.indexOf(Na)) {
I.selectedIndex = R;
break
}
} else if ("radio" == I.type || "checkbox" == I.type)
if (nc = "", nc = null != I.value ? ae(I.value).toUpperCase() : Oh(I).toUpperCase(), 0 == nc.indexOf(S) || 0 == nc.indexOf(Na)) I.checked = !0;
else {
if ((Bb = I.parentNode) && Bb.childNodes) {
for (R = 0; R < Bb.childNodes.length && Bb.childNodes[R] != I; R++);
if (R < Bb.childNodes.length - 1) {
var Yb = Bb.childNodes[R + 1],
vc = "";
null != Yb.nodeValue && (vc = ae(Yb.nodeValue).toUpperCase());
if (3 == Yb.nodeType && 0 == vc.indexOf(S) || 0 == vc.indexOf(Na)) I.checked = !0;
else if (3 == Yb.nodeType && R < Bb.childNodes.length - 2 || 1 == Yb.nodeType)
if (Eb = 1 == Yb.nodeType ? Bb.childNodes[R + 1] : Bb.childNodes[R + 2], 1 == Eb.nodeType && "LABEL" == Eb.tagName && Eb.htmlFor == I.id) {
var bc = Af(Eb, I),
Ec = ae(bc).toUpperCase();
if (0 == Ec.indexOf(S) || 0 == Ec.indexOf(Na)) I.checked = !0
} else if (1 == Eb.nodeType && "IMG" == Eb.tagName && "string" == typeof Eb.alt) {
var bc = Eb.alt,
Gc = ae(bc).toUpperCase();
if (0 == Gc.indexOf(S) || 0 == Gc.indexOf(Na)) I.checked = !0
}
}
}
} else pa(ta, I, S);
break;
case "age":
var xc = O(N.birthday, N, B);
if ("" != xc) {
var Lc =
parseInt(xc.substring(0, 4)),
Ic = parseInt(xc.substring(5, 7)),
ub = parseInt(xc.substring(8, 10)),
Fc = new Date,
Nc = Fc.getFullYear(),
Jc = Fc.getMonth() + 1,
Pc = Fc.getDate(),
Dc = Nc - Lc;
(Jc < Ic || Jc == Ic && Pc < ub) && Dc--;
if ("select-one" == I.type)
for (R = 0; R < I.options.length; R++) {
var Hc = I.options[R].text,
pc = -1,
qc = -1;
if (qb = Hc.match(/(\d+)\D+(\d+)/)) pc = parseInt(qb[1]), qc = parseInt(qb[2]);
else if (qb = Hc.match(/^\d+/)) {
var Cc = parseInt(qb[0]);
R < I.options.length / 2 ? (pc = 0, qc = Cc) : (pc = Cc, qc = 99999)
} else if (qb = Hc.match(/\d+$/)) Cc = parseInt(qb[0]),
R < I.options.length / 2 ? (pc = 0, qc = Cc - 1) : (pc = Cc + 1, qc = 99999);
if (-1 != pc && -1 != qc && Dc >= pc && Dc <= qc) {
I.selectedIndex = R;
break
}
} else pa(ta, I, Dc)
}
break;
case "housenumber":
S = O(N.address1, N, B), "undefined" != typeof N.housenumber && "" != N.housenumber && (S = O(N.housenumber, N, B));
case "housenumbername":
if ("undefined" == typeof S && (S = "undefined" != typeof N.housenumbername && "" != N.housenumbername ? O(N.housenumbername, N, B) : O(N.address1, N, B)), qb = S.match(/^\d+/), qb || (S = O(N.address2, N, B), qb = S.match(/^\d+/)), qb || (S = O(N.address3, N, B),
qb = S.match(/^\d+/)), qb) {
pa(ta, I, qb[0]);
break
} else if ("housenumber" == ob) break;
case "housename":
S = O(N.address1, N, B), "undefined" != typeof N.housename && "" != N.housename && (S = O(N.housename, N, B)), S = S.replace(/^\d+\s*/, ""), pa(ta, I, S)
}
I.value != Kb && Qc(I)
}
} catch (Mc) {
ga("Failure with filling form field: " + Mc + " ln: " + Mc.lineNumber)
}
Ba.value != mb && ("undefined" == typeof qa[Da] && (qa[Da] = 0), qa[Da]++)
}
}
}
}
}
if (l && l.frames && (!f || null == Z))
for (D = 0; D < l.frames.length; D++) try {
if (l.frames[D].document) {
var Kc = wd(c, l.frames[D].document,
f, d, g, h + 1, l.frames[D].window, n);
if (Kc && !f) return z && (z.m_checkfillformresult = Kc, z.m_checkfillformnumforms = C.length), Kc
}
} catch (Sc) {}
f && "undefined" != typeof ad && (ad && 1 == h) && Cn(g, !1, "", l)
} catch (Oc) {
ga("Failure with checking formfill: " + Oc + " ln: " + Oc.lineNumber, u)
}
if (!f) return z && (z.m_checkfillformresult = !1, z.m_checkfillformnumforms = C.length), !1
}
function Ws(c, e, f, d, g, h, l, n, p, q, r, t, A, y, J, u, s, z, ia, B, F, C) {
for (var D = c.length, K = 0, ea = 0; ea < D; ea++) {
var v = !1,
Y = c[ea];
if (("email" == Y.type || "text" == Y.type || "password" ==
Y.type || "select-one" == Y.type || "textarea" == Y.type || "radio" == Y.type || "tel" == Y.type || "url" == Y.type || "checkbox" == Y.type) && !("select-one" == Y.type && !0 == Y.disabled)) {
if (100 < ++K) break;
var G = xa(Y),
E = !1;
if ("" != G) {
try {
if (l && null != n)
if (-1 != F.navigator.userAgent.indexOf("Opera")) {
q.setStart(Y, 0);
q.setEnd(Y, 0);
var H = p.compareBoundaryPoints(Range.START_TO_START, q),
O = p.compareBoundaryPoints(Range.END_TO_END, q);
if (0 < H || 0 > O) continue
} else if ("function" == typeof n.containsNode) {
if (!n.containsNode(Y, !0)) continue
} else if (null !=
q && "undefined" != typeof q.moveToElementText) {
var Q = Y;
if ("select-one" == Q.type) {
for (var M = Q.previousSibling, L = !1; M;) {
if (1 == M.nodeType && "SELECT" != M.tagName) {
Q = M;
L = !0;
break
}
M = M.previousSibling
}
L || (Q = Q.parentNode)
}
q.moveToElementText(Q);
H = n.compareEndPoints("StartToStart", q);
O = n.compareEndPoints("EndToEnd", q);
if (0 < H || 0 > O) continue
}
} catch (ca) {}
var Z = 0,
w = 0;
"undefined" != typeof Y.size && (Z = parseInt(Y.size));
"undefined" != typeof Y.maxLength && (w = parseInt(Y.maxLength));
0 >= Z && 0 >= w && Y.style && (Q = Y.style.width, Q.match(/^\d+px$/) &&
(Q = parseInt(Q.substring(0, Q.length - 2)), 0 == Q % 10 && (Z = Q / 10)));
var W = !0,
Q = [],
V = [];
try {
var da = Y.getAttribute("autocompletetype");
if ("string" != typeof da || "" == da) da = Y.getAttribute("autocomplete");
if ("string" == typeof da && "" != da)
for (var ga = da.split(" "), L = "", ba = 0; ba < ga.length; ba++) {
switch (ga[ba]) {
case "given-name":
L = "firstname";
break;
case "middle-name":
L = "middlename";
break;
case "additional-name":
L = "middlename";
break;
case "middle-initial":
L = "middleinitial";
break;
case "additional-name-initial":
L = "middleinitial";
break;
case "surname":
L = "lastname";
break;
case "family-name":
L = "lastname";
break;
case "name-full":
L = "name";
break;
case "name":
L = "name";
break;
case "name-prefix":
L = "title";
break;
case "honorific-prefix":
L = "title";
break;
case "street-address":
L = "address";
break;
case "address-line1":
L = "address1";
break;
case "address-line2":
L = "address2";
break;
case "address-line3":
L = "address3";
break;
case "locality":
L = "city";
break;
case "city":
L = "city";
break;
case "administrative-area":
L = "state";
break;
case "state":
L = "state";
break;
case "province":
L = "state";
break;
case "region":
L = "state";
break;
case "postal-code":
L = "zip";
break;
case "country":
L = "country";
break;
case "country-name":
L = "country";
break;
case "email":
L = "email";
break;
case "phone-full":
L = "fullphone";
break;
case "tel":
L = "fullphone";
break;
case "phone-country-code":
L = "phonecc";
break;
case "tel-country-code":
L = "phonecc";
break;
case "phone-national":
L = "phone";
break;
case "tel-national":
L = "phone";
break;
case "phone-area-code":
L = "phone1";
break;
case "tel-area-code":
L = "phone1";
break;
case "phone-local":
L = "phone23";
break;
case "tel-local":
L = "phone23";
break;
case "phone-local-prefix":
L = "phone2";
break;
case "tel-local-prefix":
L = "phone2";
break;
case "phone-local-suffix":
L = "phone3";
break;
case "tel-local-suffix":
L = "phone3";
break;
case "phone-extension":
L = "phoneext";
break;
case "tel-extension":
L = "phoneext";
break;
case "fax-full":
L = "fullfax";
break;
case "fax":
L = "fullfax";
break;
case "fax-country-code":
L = "faxcc";
break;
case "fax-national":
L = "fax";
break;
case "fax-area-code":
L = "fax1";
break;
case "fax-local":
L =
"fax23";
break;
case "fax-local-prefix":
L = "fax2";
break;
case "fax-local-suffix":
L = "fax3";
break;
case "fax-extension":
L = "faxphoneext";
break;
case "cc-full-name":
L = "ccname";
break;
case "cc-name":
L = "ccname";
break;
case "cc-given-name":
L = "ccfirstname";
break;
case "cc-middle-name":
L = "ccmiddlename";
break;
case "cc-additional-name":
L = "ccmiddlename";
break;
case "cc-surname":
L = "cclastname";
break;
case "cc-family-name":
L = "cclastname";
break;
case "cc-number":
L = "ccnum";
break;
case "cc-exp-month":
L = "ccexpmonth";
break;
case "cc-exp-year":
L =
"ccexpyear";
break;
case "cc-exp":
L = "ccexp";
break;
case "cc-csc":
L = "cccsc";
break;
case "language":
L = "language";
break;
case "birthday":
L = "birthdate";
break;
case "bday":
L = "birthdate";
break;
case "birthday-month":
L = "birthmonth";
break;
case "bday-month":
L = "birthmonth";
break;
case "birthday-year":
L = "birthyear";
break;
case "bday-year":
L = "birthyear";
break;
case "birthday-day":
L = "birthday";
break;
case "bday-day":
L = "birthday";
break;
case "organization":
L = "company";
break;
case "org":
L = "company";
break;
case "gender":
L = "gender";
break;
case "sex":
L = "gender"
}
if ("" != L) {
Q[0] = V[0] = L;
if (!l && (r.value++, f.value++, 3 <= ++J.value)) return !u && ("undefined" == typeof Pd || !Pd(e, "addconfirm")) && vc("FillableFormDetected", e, 0, "formfill"), e ? e.contentDocument.ffidindex = -1 : document.ffidindex = -1, !0;
break
}
}
} catch (ka) {}
if (0 == Q.length) {
var ja = L = !1,
ha = "";
if (l || 5 >= ++r.value) l && (ha = Oh(Y));
if (!l && 20 < r.value) return !1;
var U = 2,
T = 1;
l || (U = T = "" != ha ? 2 : 1);
if ("undefined" != typeof t && "undefined" != typeof t.length)
for (ba = 0; ba < t.length && W && !L; ba++)
if (null != t[ba]) {
var P =
A[ba];
if (!("radio" == Y.type && "gender" != P && "cctype" != P && 0 != P.indexOf("customfield")) && !("checkbox" == Y.type && "gender" != P && 0 != P.indexOf("customfield")) && !("select-one" == Y.type && "state" != P && "country" != P && "cctype" != P && "timezone" != P && "city" != P && 0 != P.indexOf("birth") && "title" != P && 0 != P.indexOf("ccexp") && 0 != P.indexOf("ccstart") && "gender" != P && "age" != P && 0 != P.indexOf("customfield")) && !("password" == Y.type && 0 != P.indexOf("ccnum") && "cccsc" != P && "ccissuenum" != P && "cctype" != P && "bankacctnum" != P && 0 != P.indexOf("ssn") && 0 !=
P.indexOf("customfield")) && (!("text" == Y.type || "textarea" == Y.type || "email" == Y.type || "tel" == Y.type || "url" == Y.type) || !("cctype" == P || "timezone" == P || "gender" == P)) && Co(Y, P, !0, Z, w) && !(0 == P.indexOf("address") && 0 < w && 15 > w)) {
for (var ma = !1, na = !1, la = U; la >= T && !(1 == la && !ma && 0 < V.length && "select-one" != Y.type); la--) {
var pa;
if (1 == la) pa = G;
else if (2 == la && (pa = ha, "" == pa)) continue;
var fa = 1 == la ? t[ba] : y[ba],
oa;
if (oa = "undefined" == typeof d[P] || 2 > d[P]) {
oa = fa;
var aa = pa,
fa = oa.toString() + "_" + aa;
80 < fa.length && ("function" == typeof Wr ?
fa = Wr(fa) : "function" == typeof SHA256 && (fa = SHA256(fa)));
if (null != Mj[fa]) oa = "1" == Mj[fa];
else {
oa = oa.exec(aa);
if (2500 < Fo) {
aa = void 0;
for (aa in Mj) {
delete Mj[aa];
break
}
Fo = 0
}
Mj[fa] = oa ? "1" : "0";
Fo++
}
}
if (oa) {
if (2 == la && ("evephone" == P || "mobilephone" == P)) ja = !0;
if (2 == la && "phone" == P && ja) break;
if (!l && !E) {
if (!oc(Y)) {
W = !1;
v = h.value;
break
}
E = !0
}
kb(P, jx) ? "undefined" != typeof LP_to_formfill && "undefined" != typeof LP_to_formfill.promocode && RegExp(Za("ff_promocode_regexp", C), "i").exec(pa) && (J.value++, f.value++, P = "promocode") :
(J.value++, f.value++);
if (l) 1 == la ? (Q[Q.length] = P, na = !0) : (V[V.length] = P, ma = !0);
else {
"undefined" == typeof d[P] && (d[P] = 0);
d[P]++;
if (3 <= J.value) return !u && ("undefined" == typeof Pd || !Pd(e, "addconfirm")) && vc("FillableFormDetected", e, 0, "formfill"), e ? e.contentDocument.ffidindex = -1 : document.ffidindex = -1, !0;
L = !0;
break
}
}
}
if (ma && na) break
}
}
}
if (l && W) {
Z = [];
for (w = 0; w < V.length; w++) kb(V[w], Q) ? Z[Z.length] = V[w] : "undefined" != typeof hb[V[w]] && kb(hb[V[w]], Q) && (Z[Z.length] = V[w]);
E = null;
if (0 < Z.length) E = Z[0];
else if (0 < V.length) E =
V[0];
else if (0 < Q.length) {
if (0 == Q[0].indexOf("ccnum") && "select-one" == Y.type)
for (E = 1; E < Q.length; E++)
if (0 == Q[E].indexOf("ccexp")) {
Q.shift();
break
}
E = Q[0]
}
for (w = 0; w < Q.length; w++)
if (0 == Q[w].indexOf("customfield")) {
E = Q[w];
break
}
if (null != E) {
"name" == E && kb("name", Z) && kb("company", V) && (E = "company");
if ("ccexp" == E && "select-one" == Y.type && kb("ccexp", V) && kb("cctype", Q) && 12 != Y.options.length && 13 != Y.options.length) {
for (v = 0; v < Y.options.length && !Y.options[v].value.match(/^(?:\d{1,2}|\d{4}|\d{2}\/?(?:\d{2}|\d{4}))$/) && !Y.options[v].text.match(/^(?:\d{1,2}|\d{4}|\d{2}\/?(?:\d{2}|\d{4}))$/); v++);
v == Y.options.length && (E = "cctype")
}
"ccexp" == E && "text" == Y.type && (kb("ccexp", V) && kb("cccsc", Q) && "undefined" != typeof Y.maxLength && 3 <= Y.maxLength && 4 >= Y.maxLength) && (E = "cccsc");
v = new ix;
v.elt = Y;
v.regexpname = E;
v.last_field_filled = h.value;
Z = E = "";
0 < V.length && (Z = V[0]);
0 < Q.length && ("state" == Q[0] && "state" != Z && "select-one" == Y.type && (z.value = !0), "country" == Q[0] && "country" != Z && "select-one" == Y.type && (s.value = !0), "ccexpmonth" == Q[0] && "ccexpmonth" !=
Z && ("ccexp" != Z && "select-one" == Y.type) && (ia.value = !0), "ccexpyear" == Q[0] && "ccexpyear" != Z && ("ccexp" != Z && "select-one" == Y.type) && (B.value = !0), E = Q[0]);
v.namematch = E;
v.textmatch = Z;
g[g.length] = v;
v = !0
}
}
}
h.value = v
}
}
return 2
}
function Zs(c, e, f, d) {
if ("undefined" == typeof f || null == f) f = 1;
if (10 < f || !c && !d || !e) return !1;
for (var g = ["input", "select"], h = 0; h < g.length; h++)
for (var l = e.getElementsByTagName(g[h]), n = 0; n < l.length; n++) {
var p = l[n];
if (!p.readOnly && !p.disabled)
if ("email" == p.type || "text" == p.type || "password" == p.type ||
"tel" == p.type || "url" == p.type) "" != p.value && (p.value = "", Qc(p));
else if ("select-one" == p.type) 0 != p.selectedIndex && (p.selectedIndex = 0, Qc(p));
else if (("radio" == p.type || "checkbox" == p.type) && p.checked) p.checked = !1, Qc(p)
}
if ("undefined" == typeof d || null == d) d = c.contentWindow;
if (d && d.frames)
for (h = 0; h < d.frames.length; h++) d.frames[h].document && Zs(c, d.frames[h].document, f + 1, d.frames[h].window)
}
function Bo(c) {
var e = !1;
if ("function" == typeof or) {
var f = or(c + ".properties");
if (f && ("undefined" == typeof Go[c] || Go[c] < f))
if (e = !0, Go[c] = f, ig[c] = {}, f = Jb(c + ".properties", null, 1))
for (var f = f.replace("\r", ""), d = f.split("\n"), g = d.length, f = 0; f < g; ++f) {
var h = d[f];
if (0 == h.indexOf("ff_")) {
var l = h.indexOf("=");
if (-1 != l) {
var n = h.substring(0, l),
h = h.substring(l + 1);
ig[c][n] = h
}
}
}
}
if (e || "undefined" == typeof zd[c]) zd[c] = [], Uf[c] = [];
if (!(0 < zd[c].length)) {
e = !1;
for (f = 0; f < ki.length; f++) d = "ff_" + ki[f] + "_regexp", g = Za(d, c, !0), g != d && (e = !0), "undefined" != typeof ig[c] && "undefined" != typeof ig[c][d] && (g = ig[c][d]), zd[c][f] = g.length ? RegExp(g, "i") : null, d = "ff_text_" +
ki[f] + "_regexp", g = Za(d, c, !0), "undefined" != typeof ig[c] && "undefined" != typeof ig[c][d] && (g = ig[c][d]), Uf[c][f] = g.length && g != d ? RegExp(g, "i") : zd[c][f];
e || delete zd[c]
}
}
function Oh(c) {
var e = "";
try {
if ("" != c.id && "undefined" != typeof c.ownerDocument && null != c.ownerDocument)
for (var f = c.ownerDocument.getElementsByTagName("label"), d = 0; d < f.length; d++)
if (f[d].htmlFor == c.id) {
var g = zf(Af(f[d], c, !1, !0));
if (2 <= g.length) return g;
break
}
if ("string" == typeof c.placeholder && 2 < c.placeholder.length) return c.placeholder;
var h =
c.parentNode;
if (h && ("DIV" == h.tagName || "SPAN" == h.tagName)) h = h.parentNode;
if (h && "TD" == h.tagName) {
var l = zf(Af(h, c, !1, !0));
if (2 <= l.length) return l;
var n = h.parentNode,
p = zf(Af(n, c, !1, !0));
if (2 <= p.length) return p;
var l = f = -1,
q = h.offsetParent;
if (q)
for (p = 0; p < q.rows.length; p++)
if (n == q.rows[p]) {
f = p;
break
}
for (p = 0; p < n.cells.length; p++)
if ("undefined" != typeof n.cells[p] && h == n.cells[p]) {
l = p;
break
}
h = 0;
if (0 < f && -1 != l) {
for (d = p = n = 0; d <= l; d++) {
var r = q.rows[f].cells[d],
t = 1;
r && "number" == typeof r.colSpan && (t = r.colSpan);
d < l ?
n += t : p = n + t - 1
}
for (var A = 0, d = 0; d <= p; d++) {
r = q.rows[f - 1].cells[d];
t = 1;
r && "number" == typeof r.colSpan && (t = r.colSpan);
var y = 1;
r && "number" == typeof r.rowSpan && (y = r.rowSpan);
1 < y && (n += y - 1, p += y - 1);
var y = A,
J = A + t - 1;
if ((n >= y && n <= J || p >= y && p <= J) && r)
if (g = zf(Af(r, c, !1, !0)), 2 <= g.length) {
e = g;
h = 1;
break
}
A += t
}
}
if (!h && -1 != f && -1 != l && (r = q.rows[f].cells[0])) g = zf(Af(r, c, !1, !0)), 2 <= g.length && (e = g)
}
} catch (u) {}
if ("" == e) a: if ("" == xa(c)) e = "";
else {
e = c;
d = "";
for (g = 0; 10 > g && e.parentNode; g++) {
e = e.parentNode;
d = zf(Af(e, c));
q = 200;
try {
"undefined" !=
typeof Ao && "lifelock.com" == Ao && (q = 150)
} catch (s) {}
if (d.length > q) {
b: if (d = c, c = "", e = e.innerHTML, g = RegExp("<(input|select|textarea)[^>]+name=[\"']?" + Gl(yl(xa(d))) + "[\"']?[^>]*>", "i"), g = g.exec(e), !g && (g = RegExp("<(input|select|textarea)[^>]+id=[\"']?" + Gl(yl(xa(d))) + "[\"']?[^>]*>", "i"), g = g.exec(e), !g)) e = "";
else {
q = e.indexOf(g[0]);
d = 0;
g = 1001 < q ? q - 1001 : 0;
for (q -= 1; q >= g; q--)
if (r = e.charAt(q), ">" == r) {
if (0 >= d) {
c = c.replace(/&nbsp;/, " ");
c = zf(c);
if (2 < c.length) {
e = c;
break b
}
c = ""
}
d++
} else "<" == r ? 0 < d && d-- : 0 >= d && (c = r + c);
c = c.replace(/&nbsp;/, " ");
c = zf(c);
2 < c.length || (c = "");
e = c
}
break a
}
if (2 <= d.length) break
}
e = d
}
return e
}
function Co(c, e, f, d, g) {
if ("ssn1" == e || "ssn2" == e || "ssn3" == e || "ccnum1" == e || "ccnum2" == e || "ccnum3" == e || "ccnum4" == e || "phone1" == e || "phone2" == e || "phone3" == e || "phone23" == e || "evephone1" == e || "evephone2" == e || "evephone3" == e || "evephone23" == e || "mobilephone1" == e || "mobilephone2" == e || "mobilephone3" == e || "mobilephone23" == e || "fax1" == e || "fax2" == e || "fax3" == e || "fax23" == e || "zip1" == e || "zip2" == e || "amexccnum2" == e || "amexccnum3" ==
e) {
if ("undefined" == typeof d || "undefined" == typeof g) g = d = 0, "undefined" != typeof c.size && (d = parseInt(c.size)), "undefined" != typeof c.maxLength && (g = parseInt(c.maxLength)), 0 >= d && 0 >= g && c.style && (c = c.style.width, c.match(/^\d+px$/) && (c = parseInt(c.substring(0, c.length - 2)), 0 == c % 10 && (d = c / 10)));
"ssn2" == e ? e = c = 2 : "ssn1" == e || "phone1" == e || "phone2" == e || "fax1" == e || "fax2" == e || "evephone1" == e || "evephone2" == e || "mobilephone1" == e || "mobilephone2" == e ? e = c = 3 : "zip1" == e ? (e = 5, c = 2) : "phone23" == e || "fax23" == e || "evephone23" == e || "mobilephone23" ==
e ? (e = 8, c = 7) : "ccnum4" == e || "zip2" == e ? (e = 4, c = 3) : "amexccnum2" == e ? e = c = 6 : "amexccnum3" == e ? e = c = 5 : "phone3" == e || "fax3" == e || "mobilephone3" == e || "evephone3" == e ? (e = 5, c = 4) : e = c = 4;
if ((0 >= d || d > e) && (0 >= g || g > e) || f && 0 < g && g < c) return !1
}
return !0
}
function nh(c, e) {
c = c.toUpperCase();
e = e.toUpperCase();
if ("AMEX" == c && -1 != e.indexOf("BANAMEX")) return !1;
if (-1 != e.indexOf(c)) return !0;
switch (c) {
case "AMEX":
return -1 != e.indexOf("AMERICAN") || -1 != e.indexOf("AMX") || "AX" == e;
case "DISC":
return -1 != e.indexOf("DIS") || "DI" == e;
case "MC":
return -1 !=
e.indexOf("MASTER");
case "VISA":
return -1 != e.indexOf("VSA") || "VI" == e;
default:
return !1
}
}
function pa(c, e, f, d, g, h) {
if ("" != f || h) {
if ("undefined" != typeof e.maxLength && Xs && (h = parseInt(e.maxLength), 0 < h && f.length > h)) {
if (d) return;
f = g ? f.substring(f.length - h) : f.substring(0, h)
}
if (c) {
if ("undefined" == typeof c.formfillfields || null == c.formfillfields) c.formfillfields = [];
c.formfillfields[xa(e)] = f
}
e.value != f && (e.focus(), e.value = f, Qc(e), e.blur())
}
}
function Af(c, e, f, d) {
f || (Ho = !1);
if (c == e) return Ho = !0, "";
if (3 == c.nodeType) return 2 <
zf(c.nodeValue).length ? c.nodeValue : "";
f = [];
var g = 0,
h = "string" == typeof c.tagName ? c.tagName : "";
if (c.lp_too_many) return "";
var l = c && c.style && !oc(c, !0);
d = !1;
"LABEL" == h && (d = !0);
g = 0;
if ("OPTION" != h && "SCRIPT" != h && "TEXTAREA" != h && !l)
for (;
"undefined" != typeof c.childNodes[g];) {
f[f.length] = Af(c.childNodes[g], e, !0, d);
if (Ho) break;
if (50 < g++) return c.lp_too_many = 1, ""
}
c = "|";
"undefined" != typeof d && d && (c = "");
return f.join(c)
}
function Ys(c) {
var e = [];
e.AND = 376;
e.ARE = 971;
e.AFG = 93;
e.ATG = 1;
e.AIA = 1;
e.ALB = 355;
e.ARM = 374;
e.ANT =
599;
e.AGO = 244;
e.ATA = 672;
e.ARG = 54;
e.ASM = 1;
e.AUT = 43;
e.AUS = 61;
e.ABW = 297;
e.ALA = 358;
e.AZE = 994;
e.BIH = 387;
e.BRB = 1;
e.BGD = 880;
e.BEL = 32;
e.BFA = 226;
e.BGR = 359;
e.BHR = 973;
e.BDI = 257;
e.BEN = 229;
e.BLM = 590;
e.BMU = 1;
e.BRN = 673;
e.BOL = 591;
e.BRA = 55;
e.BHS = 1;
e.BTN = 975;
e.BVT = 47;
e.BWA = 267;
e.BLR = 375;
e.BLZ = 501;
e.CAN = 1;
e.CCK = 61;
e.COD = 243;
e.CAF = 236;
e.COG = 242;
e.CHE = 41;
e.CIV = 225;
e.COK = 682;
e.CHL = 56;
e.CMR = 237;
e.CHN = 86;
e.COL = 57;
e.CRI = 506;
e.CUB = 53;
e.CPV = 238;
e.CXR = 61;
e.CYP = 357;
e.CZE = 420;
e.DEU = 49;
e.DJI = 253;
e.DNK = 45;
e.DMA = 1;
e.DOM = 1;
e.DZA =
213;
e.ECU = 593;
e.EST = 372;
e.EGY = 20;
e.ESH = 212;
e.ERI = 291;
e.ESP = 34;
e.ETH = 251;
e.FIN = 358;
e.FJI = 679;
e.FLK = 500;
e.FSM = 691;
e.FRO = 298;
e.FRA = 33;
e.GAB = 241;
e.GBR = 44;
e.GRD = 1;
e.GEO = 995;
e.GUF = 594;
e.GGY = 44;
e.GHA = 233;
e.GIB = 350;
e.GRL = 299;
e.GMB = 220;
e.GIN = 224;
e.GLP = 590;
e.GNQ = 240;
e.GRC = 30;
e.SGS = 995;
e.GTM = 502;
e.GUM = 1;
e.GNB = 245;
e.GUY = 592;
e.HKG = 852;
e.HMD = 672;
e.HND = 504;
e.HRV = 385;
e.HTI = 509;
e.HUN = 36;
e.ESC = 34;
e.IDN = 62;
e.IRL = 353;
e.ISR = 972;
e.IMM = 44;
e.IND = 91;
e.IOT = 246;
e.IRQ = 964;
e.IRN = 98;
e.ISL = 354;
e.ITA = 39;
e.JEY = 44;
e.JAM = 1;
e.JOR = 962;
e.JPN = 81;
e.KEN = 254;
e.KGZ = 996;
e.KHM = 855;
e.KIR = 686;
e.COM = 269;
e.KNA = 1;
e.PRK = 850;
e.KOR = 82;
e.KWT = 965;
e.CYM = 1;
e.KAZ = 7;
e.LAO = 856;
e.LBN = 961;
e.LCA = 1;
e.LIE = 423;
e.LKA = 94;
e.LBR = 231;
e.LSO = 266;
e.LTU = 370;
e.LUX = 352;
e.LVA = 371;
e.LBY = 218;
e.MAR = 212;
e.MCO = 377;
e.MDA = 373;
e.MNE = 382;
e.MAF = 590;
e.MDG = 261;
e.MHL = 692;
e.MKD = 389;
e.MLI = 223;
e.MMR = 95;
e.MNG = 976;
e.MAC = 853;
e.MNP = 1;
e.MTQ = 596;
e.MRT = 222;
e.MSR = 1;
e.MLT = 356;
e.MUS = 230;
e.MDV = 960;
e.MWI = 265;
e.MEX = 52;
e.MYS = 60;
e.MOZ = 258;
e.NAM = 264;
e.NCL = 687;
e.NER = 227;
e.NFK = 672;
e.NGA = 234;
e.NIC = 505;
e.NLD = 31;
e.NOR = 47;
e.NPL = 977;
e.NRU = 674;
e.NIU = 683;
e.NZL = 64;
e.OMN = 968;
e.PAN = 507;
e.PER = 51;
e.PYF = 689;
e.PNG = 675;
e.PHL = 63;
e.PAK = 92;
e.POL = 48;
e.SPM = 508;
e.PCN = 872;
e.PRI = 1;
e.PSE = 970;
e.PRT = 351;
e.PLW = 680;
e.PRY = 595;
e.QAT = 974;
e.REU = 262;
e.ROU = 40;
e.SRB = 381;
e.RUS = 7;
e.RWA = 250;
e.SAU = 966;
e.SLB = 677;
e.SYC = 248;
e.SDN = 249;
e.SWE = 46;
e.SGP = 65;
e.SHN = 290;
e.SVN = 386;
e.SJM = 47;
e.SVK = 421;
e.SLE = 232;
e.SMR = 378;
e.SEN = 221;
e.SOM = 252;
e.SUR = 597;
e.STP = 239;
e.SLV = 503;
e.SYR = 963;
e.SWZ = 268;
e.TCA = 1;
e.TCD = 235;
e.ATF = 596;
e.TGO = 228;
e.THA = 66;
e.TJK = 992;
e.TKL = 690;
e.TLS = 670;
e.TKM = 993;
e.TUN = 216;
e.TON = 676;
e.TUR = 90;
e.TTO = 1;
e.TUV = 688;
e.TWN = 886;
e.TZA = 255;
e.UKR = 380;
e.UGA = 256;
e.UMI = 1;
e.USA = 1;
e.URY = 598;
e.UZB = 998;
e.VAT = 379;
e.VCT = 1;
e.VEN = 58;
e.VGB = 1;
e.VIR = 1;
e.VNM = 84;
e.VUT = 678;
e.WLF = 681;
e.WSM = 685;
e.YEM = 967;
e.MYT = 262;
e.YUG = 381;
e.ZAF = 27;
e.ZMB = 260;
e.ZWE = 263;
return "undefined" != typeof e[c] ? "" + e[c] : null
}
function Nq(c) {
c = c.getElementById("Email");
return null != c && ("hidden" == c.type || "hidden" == c.className) && "Email" == c.name ? c.value : ""
}
function Lg(c, e, f, d, g) {
"undefined" ==
typeof g && (g = 1);
if (10 < g) return null;
var h = "undefined" != typeof LP && "function" == typeof LP.getBrowser().getBrowserForDocument ? LP.getBrowser().getBrowserForDocument(e) : null;
h && (c = h);
if ("undefined" != typeof LP && !c) return null;
var l = h = null;
try {
if (!f && "undefined" != typeof Pd && (Pd(c, "autologin") || Pd(c, "generate"))) return null;
h = e.location.href;
"undefined" != typeof Wa && "undefined" != typeof Wa.URLToASCII && (h = Wa.URLToASCII(h));
var n = xb(h),
p = nb(h, n),
q = sc(n.host, h);
if (("undefined" == typeof P || P) && (f || ("undefined" ==
typeof Io || Io) && ("undefined" == typeof dr || !dr(p, q))))
for (var r = e.getElementsByTagName("form"), t = 0; t < r.length; t++)
if (!("undefined" != typeof t.offsetLeft && 0 > t.offsetLeft || "undefined" != typeof t.offsetTop && 0 > t.offsetTop)) {
var A = Mk(r[t]);
if (2 <= A.password && 4 >= A.password && 2 <= A.passwordvisible && 4 >= A.passwordvisible && !0 == A.passwordsContiguous) {
if (!f) {
var y = "undefined" != typeof LP ? LP.lpgetcurrenturl(c) : document.location.href;
"undefined" != typeof Wa && "undefined" != typeof Wa.URLToASCII && (y = Wa.URLToASCII(y));
re[y] =
r[t];
A = !1;
if ("undefined" == typeof disable_check_form_fill || !disable_check_form_fill) A = wd(c, e, !1, !0, null, 1, d);
var J = !1,
u = ah(r[t]),
s = [];
if (u) {
var B = Nq(e),
J = !0;
Xf[y] = u;
var ia = "string" == typeof n.path ? n.path.split("/") : [],
C = "undefined" != typeof la && "undefined" != typeof la[q] ? la[q] : [],
F;
for (F in C)
if (!("undefined" == typeof z[F] || z[F].genpw || z[F].isbookmark) && Lw(z[F], 1)) {
var D = new bj;
D.realmmatch = !1;
D.id = z[F].id;
var v = xb(z[F].url);
D.usernamematch = "" != z[F].unencryptedUsername && z[F].unencryptedUsername == B;
D.urlmatch =
nb(z[F].url, v) == p ? !0 : !1;
D.servermatch = v.host == n.host ? !0 : !1;
D.portmatch = kj(v, n);
D.serverportmatch = D.servermatch && D.portmatch;
var K = "string" == typeof v.path ? v.path.split("/") : [],
ea;
for (ea = 0; ea < ia.length && ea < K.length && K[ea] == ia[ea]; ea++);
D.pathlevelmatch = ea;
D.url = h;
D.fieldmatchcount = 0;
s[s.length] = D
}
"undefined" != typeof Ng && (s.sort(Ng), s = Og(xd, s, q, "string" == typeof n.path ? n.path : "", n.host, z, Ge(n)))
}
"undefined" != typeof LP && LP.lpshowHelpDlg("genpw");
vc("GeneratePassword", c, s, "generate", r[t], null, A, J);
A && (c ?
c.contentDocument.ffidindex = -1 : document.ffidindex = -1)
}
return r[t]
}
f && 1 <= A.password && (l = r[t])
}
} catch (G) {
ga("Failure with checking generate password: " + G + " ln: " + G.lineNumber, h)
}
if ("undefined" == typeof d || null == d) d = c.contentWindow;
if (d && d.frames)
for (F = 0; F < d.frames.length; F++) try {
if (d.frames[F].document) {
var Y = Lg(c, d.frames[F].document, f, d.frames[F].window, g + 1);
if (Y) return Y
}
} catch (E) {}
return l
}
function ah(c) {
for (var e = RegExp(Za("ff_currpass_regexp"), "i"), f = 0; f < c.elements.length; f++) {
var d = c.elements[f];
if ("password" == d.type && oc(d)) {
if (e.exec(xa(d))) return d;
var g = Oh(d);
if ("" != g && e.exec(g)) return d
}
}
return null
}
function Mk(c, e) {
var f = [];
f.text = f.password = f["select-one"] = f.textarea = f.email = f.tel = f.url = f.passwordValues = f.passwordvisible = f.uniquepasswords = 0;
f.uname = f.pname = f.oname = "";
for (var d = c.elements, g = !1, h = !1, l = [], n = "undefined" != typeof d ? d.length : 0, p = 0; p < n; p++) {
var q = d[p].type,
r = xa(d[p]),
t = d[p].value;
("password" == q || "text" == q || "select-one" == q || "textarea" == q || "email" == q || "tel" == q || "url" == q) && f[q]++;
"password" == q ? (e || oc(d[p]) && ++f.passwordvisible, "" != t && f.passwordValues++, g && (h = !0), g = !0, kb(t, l) || (l[l.length] = t)) : "hidden" == q || "INPUT" != d[p].tagName && "SELECT" != d[p].tagName && "TEXTAREA" != d[p].tagName || (g = !1);
if (("text" == q || "email" == q || "tel" == q || "url" == q) && "openid_url" != r && ("" == f.uname || "" == f.pname)) f.uname = r;
"password" == q && (f.pname = r);
if (("text" == q || "email" == q || "tel" == q || "url" == q) && "openid_url" == r) f.oname = r
}
f.passwordsContiguous = h;
f.uniquepasswords = l.length;
return f
}
function fn(c, e, f, d) {
"undefined" ==
typeof d && (d = 1);
if (10 < d) return null;
var g = "undefined" != typeof LP ? !LP.isFennec ? LP.getBrowser().selectedTab.linkedBrowser.contentDocument : LP.getBrowser() ? LP.getBrowser().contentDocument : null : document;
if (!g) return null;
if (!(c == g && "undefined" != typeof g.LPlpm_setupFocusHandler && !0 == g.LPlpm_setupFocusHandler)) {
c == g && (g.LPlpm_setupFocusHandler = !0);
for (var g = ["input", "select"], h = 0; h < g.length; h++)
for (var l = c.getElementsByTagName(g[h]), n = 0, p = 0; p < l.length; p++)
if (!(e && "password" != l[p].type) && ("text" == l[p].type ||
"email" == l[p].type || "tel" == l[p].type || "url" == l[p].type || "password" == l[p].type || "select-one" == l[p].type || "textarea" == l[p].type || "radio" == l[p].type)) {
if ("text" == l[p].type || "email" == l[p].type || "url" == l[p].type || "tel" == l[p].type) {
var q = RegExp(Za("ff_search_regexp"), "i");
if ("" != l[p].name && q.exec(l[p].name)) continue
}
if (20 < n) break;
else n++;
l[p].addEventListener("focus", function(c) {
"undefined" != typeof LP ? LP.FieldFocus(c) : FieldFocus(c)
}, !1)
}
if ("undefined" == typeof f || null == f) f = "undefined" != typeof LP ? !LP.isFennec ?
LP.getBrowser().selectedTab.linkedBrowser.contentWindow : LP.getBrowser().contentWindow : window;
if (f && f.frames)
for (h = 0; h < f.frames.length; h++) try {
f.frames[h].document && fn(f.frames[h].document, e, f.frames[h].window, d + 1)
} catch (r) {}
}
}
function Ym(c, e, f, d) {
var g = (new Date).getTime();
1E3 > g - $s || ($s = g, kn(), Wc = {}, le = {}, Hc = {}, $c = {}, Rd = {}, Eb = {}, jc = {}, Jo(!0, c), !P && !rc && LP.lp_handle_buttons_all("loggingin"), g = "version=" + LP.en(nc) + "&method=" + LP.get_method() + "&hp=" + (LP.IsHomePage() ? "1" : "0"), g += e ? "&sessionid=" + LP.en(e) :
"", g += f ? "&wxusername=" + LP.en(f) : "", g += d ? "&wxhash=" + LP.en(d) : "", g += "&uuid=" + LP.en(LP.getuuid()), Rd.logincheckpostdata = g, Oc ? (Kc = ha = Q = "", vd("", "lp_logincheckhelper"), LP.mostRecent().setTimeout(function() {
Gc("logincheck")
}, 2E3)) : (vj = Jl = Ab(), LP.lpMakeRequest(LP.lp_base + "login_check.php", g, li, function() {
we(c, "makerequest")
}, c)))
}
function we(c, e) {
var f = (new Date).getTime();
1E3 > f - at || (at = f, !P && !rc && LP.lp_handle_buttons_all("off"), (f = bt()) ? (LP.lplogin(f.username, f.password, c), f = !0) : f = !1, !f && !rc && (Zk = !1, "httptest" ==
c && Kl ? LP.lpOpenLogin() : "noexistingsession" == e || "nokeyfileA" == e || "nokeyfileB" == e || ("invalidresponse" == e || "exception" == e ? Ua("LoginError", !1, !0) : "makerequest" == e ? Ua("ErrorLoginMsg") : Ua("LoginError", !1, !0))))
}
function Ek(c, e, f, d) {
kn();
if (Dd || Oc) f == Eg ? Gc("login", {
data0: c,
data1: Kc,
data2: wf
}) : f == jg ? Gc("login", {
data0: c,
data1: Kc,
data2: wf
}) : f != oh && Gc("login", {
data0: c,
data1: e
});
if (Oc) "namedpipes" == f || f == oh ? (ld = "", P = !0, mi = rc = !1, ad = 0, kc = vb = -1, Qg = 0, LP.lp_handle_buttons_all("in"), Ko(), Fg = null, Pc()) : (rc = P = !1, Kc =
ha = Q = "", lf(), vd("", "lp_loginhelper_wav_delayedasologincheck"), f == Eg ? (Fg = (new Date).getTime(), LP.mostRecent().setTimeout(function() {
Gc("logincheck", {
data0: "donotignoreself"
})
}, 2E3)) : LP.mostRecent().setTimeout(function() {
Gc("logincheck")
}, 2E3));
else {
"function" == typeof eb && (eb(c + "_lp.act.xml"), eb(c + "_lps.act.xml"));
Wc = {};
le = {};
Hc = {};
$c = {};
Rd = {};
ni = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
Eb = {};
d || (jc = {});
f == Eg || f ==
oh || f == jg || (Q = c.toLowerCase().replace(/\s*/g, ""), ha = Fa(Q), lf(), c = LP.make_lp_key(Q, e), Kc = LP.make_lp_hash(Q, c, e), ct(Q, e), vd(c, "lp_loginhelper"));
Sh(ha + "_lp.key", ha + "_lp.act.key");
Sh(ha + "_lp.act.key", ha + "_lp.act.lps");
Sh(ha + "_lp.act.lps", ha + "_lpall.lps");
rc || Jo(!0, f);
!P && !rc && LP.lp_handle_buttons_all("loggingin");
c = "xml=2&username=" + LP.en(Q) + "&method=" + LP.get_method() + "&hash=" + Kc + "&version=" + LP.en(nc);
c += "&hp=" + (LP.IsHomePage() ? "1" : "0");
c += "&encrypted_username=" + LP.en(da(Q, null, !0));
c += "&uuid=" + LP.en(LP.getuuid());
"undefined" != typeof Ka && (c += "&lang=" + LP.en(Ka));
var g = LP.get_key_iterations(Q);
c += "&iterations=" + LP.en(g);
Sf = g;
"" != g && 1 < parseInt(g) && (g = Ll(Q, e), c += g, "" != g && "undefined" != typeof g_oldpbkdf2 && 1 == g_oldpbkdf2 && (c += "&fallback=1"));
if (f == Eg || f == oh || f == jg) c += "&wrfrom=" + LP.en(f);
LP.lpdolostpwotp && (!LP.lpprefsHasUserValue("StoreLostPWOTP") || LP.lpprefsGetBoolPref("StoreLostPWOTP")) ? c += "&lostpwotphash=" + LP.en(LP.GetOTPHash()) : LP.DeleteOTP();
Rd = {};
Rd.postdata = c;
Rd.from = f;
Wc = {};
Wc.postdata = c;
Wc.from = f;
ni = e;
le = {};
le.postdata = c;
le.from = f;
Hc = {};
Hc.postdata = c;
Hc.from = f;
$c = {};
$c.postdata = c;
$c.from = f;
Eb = {};
Eb.postdata = c;
Eb.from = f;
d || (jc = {});
jc.postdata = c;
jc.from = f;
c += "&otp=&sesameotp=&gridresponse=";
c += "&multifactorresponse=";
c = LP.isFennecNative ? c + "&duosupported=1" : c + "&outofbandsupported=1";
vj = Jl = Ab();
LP.lpMakeRequest(LP.lp_base + "login.php", c, Bf, function() {
Ve(f)
}, f);
e = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
}
function Ll(c, e) {
for (var f = 0; f < c.length; f++)
if (127 < c.charCodeAt(f)) return "&reqpbkdf2v2=1";
for (f = 0; f < e.length; f++)
if (127 < e.charCodeAt(f)) return "&reqpbkdf2v2=1";
return ""
}
function Ve(c) {
var e = (new Date).getTime();
1E3 > e - dt || (dt = e, !P && !rc && LP.lp_handle_buttons_all("off"), Jo(!1, c))
}
function Jo(c, e) {
if (!Oc) {
if ("" == ja || "" == Q || "" == ha) {
if ("frompipes" == e) return;
var f = bt();
if (!f) {
Ga && ("httptest" != e ? Ua("LoginError", !1, !0) : Kl && LP.setTimeout(function() {
LP.lpOpenLogin()
}, 0));
return
}
var d = f.password;
Q = f.username.toLowerCase().replace(/\s*/g,
"");
ha = Fa(Q);
var g = LP.make_lp_key(Q, d);
Kc = LP.make_lp_hash(Q, g, d);
lf();
vd(g, "loginoffline");
d = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
d = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
f.password = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
f.password = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
if (c) {
if (!rc) {
if (null == ja || "" == ja) {
var h = Nj(Q);
if (!h) {
Ga && Ua("LoginError", !1, !0);
return
}
}(h = lc(ha, !0, !1)) ? (h = h.substring(0, 200), 0 <= h.indexOf("type=sesameoffline\ndata=") || 0 <= h.indexOf("type=trueapioffline\ndata=") || (0 <= h.indexOf("type=omnikeyoffline\ndata=") || 0 <= h.indexOf("type=yubikeyoffline\ndata=") || 0 <= h.indexOf("type=yubikeyofflinemulti\nkeys=")) ||
et(e, !0)) : Ga && Ua("LoginError", !1, !0)
}
} else if (!rc) {
LP.lp_handle_buttons_all("off");
if (null == ja || "" == ja)
if (h = Nj(Q), !h) {
Ua("LoginError", !1, !0);
return
}
if (h = lc(ha, !0, !1)) {
h = h.substring(0, 1200);
if (0 <= h.indexOf("type=sesameoffline\ndata=")) {
for (f = "";;) {
f = jo(null);
if ("" == f || 64 != f.length) {
if (64 < f.length) {
LP.alert(LP.lpgs("SesameWrongButton"));
continue
}
Sa(!1, "ff_sesameoffline");
Ua("LoginError", !1, !0);
return
}
break
}
Rd.password_offline = f
} else if (0 <= h.indexOf("type=trueapioffline\ndata=") || 0 <= h.indexOf("type=omnikeyoffline\ndata=")) {
d =
0 <= h.indexOf("type=trueapioffline\ndata=") ? "trueapi" : "omnikey";
f = "";
cc("type") == d && (f = cc("password_offline"));
if (!f || 64 != f.length) f = Fa(Fa(ic(Q) + d));
if (!f || 64 != f.length)
for (;;) {
"trueapi" == d ? ma() && LP.lpis_win && "function" == typeof Z.trueapi_get_hash && (f = Z.trueapi_get_hash(Q)) : "omnikey" == d && ma() && "function" == typeof Z.omnikey_get_public_key && (f = Z.omnikey_get_public_key(ej()));
if ("" == f || 64 != f.length) {
f = Ml(Q, d);
Sa(!1, "ff_trueapioffline");
Ua("LoginError", !1, !0, !1, f);
return
}
break
}
jc.password_offline = f;
jc.type =
d
} else if (0 <= h.indexOf("type=yubikeyoffline\ndata=")) {
f = zl(null);
if ("" == f || 44 != f.length) {
Sa(!1, "ff_yubioffline");
Ua("LoginError", !1, !0);
return
}
f = f.substring(0, 12);
f = Fa(Fa(Fa(ic("LastPassIsGreat") + f) + f));
Wc.password_offline = f
} else if (0 <= h.indexOf("type=yubikeyofflinemulti\nkeys=")) {
f = zl(null);
if ("" == f || 44 != f.length) {
Sa(!1, "ff_no yubi");
Ua("LoginError", !1, !0);
return
}
var f = f.substring(0, 12),
f = Fa(Fa(Fa(ic("LastPassIsGreat") + f) + f)),
d = h.indexOf("type=yubikeyofflinemulti\nkeys="),
h = h.substring(d),
d = !1,
l =
h.indexOf("\n", 30);
if (0 < l)
for (var g = Fa(f), n = h.substring(30, l), h = h.substring(l + 6), h = n.split("&"), p, l = 0; l < h.length; ++l)
if (p = h[l].split("#"), 2 == p.length) {
var q = p[1];
g == p[0] && (p = Ya(q, Zb(f)), "" != p && (d = !0, Wc.password_offline = f, Wc.password_keysline = n, Wc.password_server = p))
}
if (!d) {
Sa(!1, "ff_otpkeydecrypt");
Ua("LoginError", !1, !0);
return
}
}
et(e, !1)
} else Ua("LoginError", !1, !0)
}
}
}
function et(c, e) {
Ga && "pluginlogin" == c && (!LP.lpprefsHasUserValue("showHomepageAfterLogin", !1) || LP.lpprefsGetBoolPref("showHomepageAfterLogin", !1)) && cl();
Ko();
ld = "";
rc = P = !0;
mi = !1;
ad = Ga ? 1 : 0;
dg = bc = kc = vb = -1;
Qg = 0;
lf();
LP.lp_handle_buttons_all("in");
Fb(!0);
We && (LP.mostRecent().clearTimeout(We), We = null);
We = LP.mostRecent().setTimeout(function() {
LP.notifyoffline(c)
}, e ? 3E4 : 0);
c == Eg || c == oh || c == jg || (Xe && (LP.mostRecent().clearTimeout(Xe), Xe = null), Xe = LP.mostRecent().setTimeout(function() {
LP.retryonlinelogin(3E4)
}, 3E4))
}
function Ko() {
LP.lpprefsSetBoolPref("ffhasloggedin", !0, !1);
LP.SetupUserPreferences();
LP.lpSetupIdleTimer();
LP.lpprefsHasUserValue("ffhasloggedinsuccessfully", !1) || (LP.lpprefsSetBoolPref("ffhasloggedinsuccessfully", !0, !1), LP.flush_prefs())
}
function Nj(c, e, f, d) {
var g = "undefined" == typeof e || null == e ? ja : e,
h = "undefined" == typeof f || f ? !0 : !1,
l = Fa(c),
n = Jb(l + "_lpall.slps");
if (n) n = Ih(n, !0);
else if (n = Jb(l + "_lpall.lps")) c = Tf(n, !0), Rb(l + "_lpall.slps", c), eb(l + "_lpall.lps");
else {
n = Jb(c + "_lp.act.lps");
if (!n) return Ga && hd && !d && Zb(Fa(c + "")) != ja ? (pf = ja, Hh(), g = {
accts_version: 0,
sites: [],
securenotes: [],
prompts: []
}, hd && (g.prompts.login_site_prompt = !0, g.prompts.edit_site_prompt = !0, g.prompts.edit_sn_prompt = !0, g.prompts.view_pw_prompt = !0, g.prompts.view_ff_prompt = !0, g.prompts.switch_identity_prompt = !0, g.prompts.switch_f_prompt = !0, g.prompts.multifactor_reprompt = !0), g.formfills = [], g.identities = [], g.equivalentdomains = [], g.neverurls = [], g.premium_exp = 0, g.enterpriseuser = 0, g.encrypted_username = da(Q, null, !0), g.pendings = [], g.shareeautopushes = [], g.maxid = [], g.maxid.maxid = 0, g.urlrules = [], wc(g, null, "readkeyfile"), Nj(c, e, f, !0)) : null;
Sh(c + "_lp.act.lps", l + "_lpall.lps")
}
c = n.split("\n");
return 2 !=
c.length || h && ("" == g || "lastpass rocks" != Ya(c[1], g, !0)) ? null : n
}
function li(c, e, f) {
try {
if (c && 4 == c.readyState)
if (200 != c.status || null == c.responseXML || null == c.responseXML.documentElement) "function" == typeof e && e();
else {
var d = c.responseXML.documentElement,
g = d.getElementsByTagName("ok");
if (!g || 0 == g.length) {
var h = d.getElementsByTagName("error");
h && 0 < h.length && h[0].hasAttribute("invalidsession") ? (Sa(!1, "ff_invalidsess2"), LP.lpClearCache(!0, !1, !1), dc(LP.lp_base + "invalidsession.php", !0), Ua("LoginError", !1, !0)) :
h && 0 < h.length && h[0].hasAttribute("silent") && 1 == parseInt(h[0].getAttribute("silent")) ? (!LP.lpprefsHasUserValue("ffhasloggedin", !1) && !LP.lpprefsHasUserValue("loginusers", !1) && (LP.lpprefsSetBoolPref("ffhasloggedin", !0, !1), LP.flush_prefs(), !gl && !LP.isFennec && LP.OpenCreateAccount()), we(f, "noexistingsession")) : (ga("login_check.php returned invalid response text=" + c.responseText), we(f, "invalidresponse"))
} else if (pf = Zb(Fa(g[0].getAttribute("pwdeckey"))), Q = g[0].getAttribute("lpusername"), ha = Fa(Q), ld = g[0].getAttribute("uid"),
"1" == g[0].getAttribute("pwresetreqd")) LP.lpbaseopenifnotopen("passwordreset.php?u=" + LP.en(Q));
else {
if (!("websitelogin" == f || f == Eq || f == Eg || "websiterefresh" == f || "websiterefreshrsa" == f || "frompipes" == f || pr > qr) && "preferences" != f && LP.lpprefsHasUserValue("logOffWhenCloseBrowser") && LP.lpprefsGetBoolPref("logOffWhenCloseBrowser")) {
var l = LP.lpprefsHasUserValue("lastpollcheck") ? LP.lpprefsGetIntPref("lastpollcheck") : 0,
n = LP.lpprefsHasUserValue("logOffWhenCloseBrowserVal") ? LP.lpprefsGetIntPref("logOffWhenCloseBrowserVal") :
0;
if (Ab() - l >= 60 * n) {
Sa(!1, "ff_logOffWhenCloseBrowser");
Kl && LP.setTimeout(function() {
LP.lpOpenLogin()
}, 0);
return
}
}
var p;
if ("" == ja) {
var q, r = Nj(Q, null, !1);
q = r ? r.split("\n")[0] : null;
if (!q) {
we(f, "nokeyfileA");
return
}
p = Zb(Ya(q, pf, !0));
if (!Nj(Q, p)) {
we(f, "nokeyfileB");
return
}
}
if (g[0].hasAttribute("iterations")) {
var t = g[0].getAttribute("iterations");
ft(t) && (Rb(Fa(Q) + "_key.itr", t), Sf = t)
}
if (!(null != g[0].getAttribute("trusted") && "1" == g[0].getAttribute("trusted")) && "httptest" == f) {
var A = null != g[0].getAttribute("sesamepassword") &&
"" != g[0].getAttribute("sesamepassword") ? !0 : !1,
y = null != g[0].getAttribute("yubikeyenabled") && "1" == g[0].getAttribute("yubikeyenabled") ? !0 : !1,
J = null != g[0].getAttribute("googleauthenabled") && "1" == g[0].getAttribute("googleauthenabled") ? !0 : !1,
u = null != g[0].getAttribute("multifactorenabled") && "" != g[0].getAttribute("multifactorenabled") ? !0 : !1,
s = null != g[0].getAttribute("sesameotpok") && "" != g[0].getAttribute("sesameotpok") ? !0 : !1,
z = null != g[0].getAttribute("yubikeyotpok") && "" != g[0].getAttribute("yubikeyotpok") ? !0 : !1,
ia = null != g[0].getAttribute("googleauthotpok") && "" != g[0].getAttribute("googleauthotpok") ? !0 : !1,
B = null != g[0].getAttribute("multifactorresponseok") && "" != g[0].getAttribute("multifactorresponseok") ? !0 : !1;
if (A && !s) {
var F = jo(Q);
if ("" == F) {
Sa(!1, "ff_nosesame");
Ua("LoginError", !1, !0);
return
}
var C = pc("logincheckpostdata") + "&sesameotp=" + encodeURIComponent(F);
pc("label") && (C += "&trustlabel=" + LP.en(pc("label")));
LP.lpMakeRequest(LP.lp_base + "login_check.php", C, li, function() {
we(f, "makerequest")
}, f);
return
}
if (y && !z) {
F = zl(Q);
if ("" == F) {
Sa(!1, "ff_noyubi");
Ua("LoginError", !1, !0);
return
}
C = pc("logincheckpostdata") + "&otp=" + encodeURIComponent(F);
Pb("label") && (C += "&trustlabel=" + LP.en(Pb("label")));
LP.lpMakeRequest(LP.lp_base + "login_check.php", C, li, function() {
we(f, "makerequest")
}, f);
return
}
if (J && !ia) {
F = zs(Q);
if ("" == F) {
Sa(!1, "ff_nogoogle");
Ua("LoginError", !1, !0);
return
}
C = pc("logincheckpostdata") + "&otp=" + encodeURIComponent(F);
kh("label") && (C += "&trustlabel=" + LP.en(kh("label")));
LP.lpMakeRequest(LP.lp_base + "login_check.php",
C, li, function() {
we(f, "makerequest")
}, f);
return
}
if (!kx(g, f)) return;
if (u)
if (B) {
if ("omnikey" == cc("type")) {
var D = g[0].getAttribute("multifactorofflinepassword");
jc.password_offline = D
}
} else {
var K = g[0].getAttribute("type");
c = "";
if ("trueapi" == K) {
var v = Fa(Fa(ic(Q) + K));
64 != v.length && ma() && LP.lpis_win && "function" == typeof Z.trueapi_get_hash && (v = Z.trueapi_get_hash(Q));
jc.password_offline = v;
jc.type = K;
c = "" != v ? Fa(v + g[0].getAttribute("challenge")) : ""
} else "omnikey" == K && (jc.type = K, ma() && "function" == typeof Z.omnikey_decrypt &&
(c = Z.omnikey_decrypt(g[0].getAttribute("challenge"), ej()))); if ("" == c) {
var G = Ml(Q, K);
Sa(!1, "ff_nomulti");
Ua("LoginError", !1, !0, !1, G);
return
}
C = pc("logincheckpostdata") + "&multifactorresponse=" + encodeURIComponent(c);
cc("label") && (C += "&trustlabel=" + LP.en(cc("label")));
g[0].getAttribute("wxsessid") && (C += "&wxsessid=" + LP.en(g[0].getAttribute("wxsessid")));
LP.lpMakeRequest(LP.lp_base + "login_check.php", C, li, function() {
we(f, "makerequest")
}, f);
return
}
}(null == ja || "" == ja) && vd(p, "lpLoginCheckResponse");
gt(g, f, !0)
}
}
} catch (Y) {
ga("Failure in lpLoginCheckResponse: " +
Y + " ln: " + Y.lineNumber), we(f, "exception")
}
}
function kx(c, e) {
if ("httptest" != e) return !0;
var f = null != c[0].getAttribute("gridenabled") && "" != c[0].getAttribute("gridenabled") ? !0 : !1,
d = null != c[0].getAttribute("gridresponseok") && "" != c[0].getAttribute("gridresponseok") ? !0 : !1;
if (f && !d) {
f = As(Q, c[0].getAttribute("challenge"));
if ("" == f) {
Sa(!1, "ff_nogrid");
Ua("LoginError", !1, !0);
return
}
f = pc("logincheckpostdata") + "&gridresponse=" + encodeURIComponent(f);
Yf("label") && (f += "&trustlabel=" + LP.en(Yf("label")));
c[0].getAttribute("wxsessid") &&
(f += "&wxsessid=" + LP.en(c[0].getAttribute("wxsessid")));
LP.lpMakeRequest(LP.lp_base + "login_check.php", f, li, function() {
we(e, "makerequest")
}, e);
return !1
}
return !0
}
function Bf(c, e, f) {
try {
if (c && 4 == c.readyState)
if (200 != c.status || null == c.responseXML || null == c.responseXML.documentElement) ga("Problem with login response. status=" + c.status + " text=" + c.responseText, null), "function" == typeof e && e();
else {
var d = c.responseXML.documentElement,
g = d.getElementsByTagName("ok");
if (!g || 0 == g.length) {
var h = d.getElementsByTagName("error");
if (h && 0 < h.length && h[0].hasAttribute("iterations")) {
var l = h[0].getAttribute("iterations");
ft(l) && (Rb(Fa(Q) + "_key.itr", l), LP.lplogin(Q, ni, Pb("from")))
} else if (h && 0 < h.length && h[0].getAttribute("pbkdf2fallback") && ("undefined" == typeof g_oldpbkdf2 || 1 != g_oldpbkdf2)) g_oldpbkdf2 = 1, LP.lplogin(Q, ni, Pb("from"));
else if ("undefined" != typeof g_oldpbkdf2 && (g_oldpbkdf2 = 0), h[0].getAttribute("server")) {
var n = h[0].getAttribute("server");
if ("lastpass.com" == n || "lastpass.eu" == n) LP.lp_basehost = n, LP.lp_base = "https://" + n +
"/", base_url = "https://" + n + "/", LP.lpprefsSetCharPref("server", n, !1), LP.lplogin(Q, ni, Pb("from"))
} else {
h && 0 < h.length && h[0].hasAttribute("openurl") && LP.lpanyopen(h[0].getAttribute("openurl"));
var p = 0 == h.length ? "" : c.responseText;
if (h && 0 < h.length && h[0].hasAttribute("invalidsession")) Sa(!1, "ff_invalidsession"), LP.lpClearCache(!0, !1, !1), dc(LP.lp_base + "invalidsession.php", !0), Ua("LoginError", !1, !0);
else if (p && 0 < p.indexOf("blacklist")) Sa(!1, "ff_blacklisted"), LP.lpClearCache(!0, !1, !1), Ua("Blacklist", !1, !0, !1,
null, h[0].getAttribute("custombutton"), h[0].getAttribute("customaction"));
else if (p && 0 < p.indexOf("sesameotprequired")) {
LP.lpClearCache(!0, !1, !1);
var q = jo(Q);
if ("" == q) Sa(!1, "ff_nosesame"), Ua("LoginError", !1, !0);
else {
var r = pc("postdata") + "&sesameotp=" + encodeURIComponent(q),
t = pc("from");
pc("label") && (r += "&trustlabel=" + LP.en(pc("label")));
LP.lpMakeRequest(LP.lp_base + "login.php", r, Bf, function() {
Ve(t)
}, t)
}
} else if (p && 0 < p.indexOf("sesameotpfailed")) LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_sesamefailed"), Ua(h &&
0 < h.length && h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
else if (p && 0 < p.indexOf("otprequired")) LP.lpClearCache(!0, !1, !1), q = zl(Q), "" == q ? (Sa(!1, "ff_noyubi"), Ua("LoginError", !1, !0)) : (r = Pb("postdata") + "&otp=" + encodeURIComponent(q), t = Pb("from"), Pb("label") && (r += "&trustlabel=" + LP.en(Pb("label"))), LP.lpMakeRequest(LP.lp_base + "login.php", r, Bf, function() {
Ve(t)
}, t));
else if (p && 0 < p.indexOf("otpfailed")) LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_yubifailed"), Ua(h && 0 < h.length && h[0].getAttribute("message") ?
h[0].getAttribute("message") : "LoginError", !1, !0);
else {
if (p && 0 < p.indexOf("googleauthfailed")) {
var A = kh("fail_count");
null == A && (A = 0);
A++;
le.fail_count = A;
if (5 > A) p = " googleauthrequired";
else {
le.fail_count = 0;
LP.lpClearCache(!0, !1, !1);
Sa(!1, "ff_googauth");
Ua(h && 0 < h.length && h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
return
}
}
if (p && 0 < p.indexOf("securityquestionfailed")) {
var y = $d("fail_count");
null == y && (y = 0);
y++;
$c.fail_count = y;
if (5 > y) h && 0 < h.length && h[0].getAttribute("message") &&
Cb(h[0].getAttribute("message")), p = " securityquestionrequired";
else {
$c.fail_count = 0;
LP.lpClearCache(!0, !1, !1);
Sa(!1, "ff_securityquestion");
Ua(h && 0 < h.length && h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
return
}
}
if (p && 0 < p.indexOf("googleauthrequired")) LP.lpClearCache(!0, !1, !1), q = zs(Q), "" == q ? (Sa(!1, "ff_googauth"), Ua("LoginError", !1, !0)) : (r = kh("postdata") + "&otp=" + encodeURIComponent(q), t = kh("from"), kh("label") && (r += "&trustlabel=" + LP.en(kh("label"))), LP.lpMakeRequest(LP.lp_base +
"login.php", r, Bf, function() {
Ve(t)
}, t));
else if (p && 0 < p.indexOf("outofbandrequired")) {
LP.lpClearCache(!0, !1, !1);
var J = h[0].getAttribute("allowtrust");
Hc.allowtrust = J;
var u = h[0].getAttribute("capabilities");
Hc.capabilities = u;
var s = h[0].getAttribute("smshash");
Hc.smshash = s;
var z = h[0].getAttribute("smstime");
Hc.smstime = z;
var ia = h[0].getAttribute("smsuid");
Hc.smsuid = ia;
var C = h[0].getAttribute("sms_nextcode");
Hc.sms_nextcode = C;
var F = h[0].getAttribute("outofbandimage");
Hc.outofbandimage = F;
var B = h[0].getAttribute("preferduowebsdk");
Hc.preferduowebsdk = B;
r = Q;
Eb.active = "1";
var D = {
otp: "",
username: r,
type: "outofband",
allowtrust: Se("allowtrust"),
capabilities: Se("capabilities"),
smshash: Se("smshash"),
smstime: Se("smstime"),
smsuid: Se("smsuid"),
outofbandimage: Se("outofbandimage"),
sms_nextcode: Se("sms_nextcode")
};
P = !1;
LP.lp_handle_buttons_all("off");
"1" == Se("preferduowebsdk") || LP.isFennecNative ? LP.lpbaseopen("duo.php?username=" + encodeURIComponent(Q)) : LP.lpGetCurrentWindow().openDialog(zb + "content/yubikey.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,alwaysRaised",
D);
"undefined" != typeof D.label && (Hc.label = D.label);
Eb.active = null
} else if (p && 0 < p.indexOf("securityquestionrequired"))
if (h[0].getAttribute("redirecturl")) dc(h[0].getAttribute("redirecturl"));
else {
LP.lpClearCache(!0, !1, !1);
var K = h[0].getAttribute("question");
$c.question = K;
var v = h[0].getAttribute("autotrust");
$c.autotrust = v;
var G = h[0].getAttribute("hidedisable");
$c.hidedisable = G;
var Y = h[0].getAttribute("reseturl");
$c.reseturl = Y;
h = Q;
Eb.active = "1";
var E = {
otp: "",
username: h,
type: "securityquestion",
question: $d("question"),
autotrust: $d("autotrust"),
hidedisable: $d("hidedisable"),
reseturl: $d("reseturl")
};
if (LP.isFennecNative)
if (h = {
value: ""
}, D = {
value: !1
}, Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService).prompt(null, LP.lpgs("Security Question"), $d("question"), h, $d("autotrust") ? null : LP.lpgs("Trust this device?"), D)) {
if (E.otp = h.value, $d("autotrust") || D.value) E.label = LP.lpgs("Firefox Mobile") + " - " + LP.getuuid()
} else {
if ("0" == securityquesion_getdata("hidedisable") &&
LP.confirm(LP.lpgs("Would you like to reset your security question?"))) {
var L = securityquesion_getdata("reseturl");
L && "" != L ? dc(L) : LP.lpbaseopen("lostkey.php?cmd=sendemail&username=" + encodeURIComponent(Q) + "&type=securityquestion")
}
} else LP.lpGetCurrentWindow().openDialog(zb + "content/yubikey.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", E);
"undefined" != typeof E.label && ($c.label = E.label);
Eb.active = null;
q = E.otp;
"" == q ? (Sa(!1, "ff_securityquestion"), Ua("LoginError", !1, !0)) : (r = $d("postdata") +
"&otp=" + encodeURIComponent(q), t = $d("from"), $d("label") && (r += "&trustlabel=" + LP.en($d("label"))), LP.lpMakeRequest(LP.lp_base + "login.php", r, Bf, function() {
Ve(t)
}, t))
} else if (p && 0 < p.indexOf("gridresponserequired")) {
LP.lpClearCache(!0, !1, !1);
var H = As(Q, h[0].getAttribute("challenge"));
"" == H ? (Sa(!1, "ff_nogridotp"), Ua("LoginError", !1, !0)) : (r = Yf("postdata") + "&gridresponse=" + encodeURIComponent(H), t = Yf("from"), Yf("label") && (r += "&trustlabel=" + LP.en(Yf("label"))), h[0].getAttribute("wxsessid") && (r += "&wxsessid=" +
LP.en(h[0].getAttribute("wxsessid"))), LP.lpMakeRequest(LP.lp_base + "login.php", r, Bf, function() {
Ve(t)
}, t))
} else if (p && 0 < p.indexOf("gridresponsefailed")) LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_gridotp"), Ua(h && 0 < h.length && h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
else if (p && 0 < p.indexOf("multifactorresponserequired")) {
LP.lpClearCache(!0, !1, !1);
var O = h[0].getAttribute("type"),
H = "";
if ("trueapi" == O) {
q = "";
"trueapi" == cc("type") && (q = cc("password_offline"));
if (!q || 64 != q.length) q =
Fa(Fa(ic(Q) + O));
if (!q || 64 != q.length) ma() && LP.lpis_win && "function" == typeof Z.trueapi_get_hash && (q = Z.trueapi_get_hash(Q));
jc.password_offline = q;
jc.type = O;
H = "" != q ? Fa(q + h[0].getAttribute("challenge")) : ""
} else "omnikey" == O && (jc.type = O, ma() && "function" == typeof Z.omnikey_decrypt && (H = Z.omnikey_decrypt(h[0].getAttribute("challenge"), ej()))); if ("" == H) {
var da = Ml(Q, O);
Sa(!1, "ff_nomultifactor");
Ua("LoginError", !1, !0, !1, da)
} else r = cc("postdata") + "&multifactorresponse=" + encodeURIComponent(H), t = cc("from"), cc("label") &&
(r += "&trustlabel=" + LP.en(cc("label"))), h[0].getAttribute("wxsessid") && (r += "&wxsessid=" + LP.en(h[0].getAttribute("wxsessid"))), LP.lpMakeRequest(LP.lp_base + "login.php", r, Bf, function() {
Ve(t)
}, t)
} else if (p && 0 < p.indexOf("multifactorresponsefailed")) da = Ml(Q, h[0].getAttribute("type")), LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_multifactor"), Ua(h && 0 < h.length && h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0, !1, da);
else if (p && 0 < p.indexOf("unknownemail")) Sa(!1, "ff_unknownusername"), Ua(h[0].getAttribute("message") ?
h[0].getAttribute("message") : "LoginError", !1, !0, !0);
else if (p && 0 < p.indexOf("unknownpassword")) Sa(!1, "ff_unknownpw"), Ua(h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
else if (p && 0 < p.indexOf("iprestriction")) LP.lpClearCache(!0, !1, !1), Sa(!1, "ff_iprestriction"), Ua(h[0].getAttribute("message") ? h[0].getAttribute("message") : "LoginError", !1, !0);
else if (h && 0 < h.length && h[0].hasAttribute("cause")) {
var M = h[0].getAttribute("cause");
Sa(!1, "ff_cause" + M);
Ua(0 < h.length && h[0].getAttribute("message") ?
h[0].getAttribute("message") : "LoginError", !1, !0, !1, null, h[0].getAttribute("custombutton"), h[0].getAttribute("customaction"))
} else ga("login.php returned invalid response text=" + c.responseText), Ve(f)
}
}
} else g[0].hasAttribute("iterations") && (l = g[0].getAttribute("iterations"), Rb(Fa(Q) + "_key.itr", l), Sf = l), pf = Zb(Fa(g[0].getAttribute("pwdeckey"))), Q = g[0].getAttribute("lpusername"), ha = Fa(Q), ld = g[0].getAttribute("uid"), ni = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"1" == g[0].getAttribute("pwresetreqd") ? LP.lpbaseopen("passwordreset.php?u=" + LP.en(Q)) : (Hh(), gt(g, f, !1))
}
} catch (ca) {
ga("Failure in lpLoginResponse: " + ca + " ln: " + ca.lineNumber), Ve(f)
}
}
function gt(c, e, f) {
if (null == ja || "" == ja) ga("lpLoginCommon : WTF! We are in lpLoginCommon but our key has not been set -- INVESTIGATE! from=" + e + " logincheck=" + ("undefined" == typeof f ? "undefined" : f)), Sa(!1, "ff_nokeylogincommon");
rc = !1;
if (null == f || "undefined" == typeof f) f = !0;
We && (LP.mostRecent().clearTimeout(We), We = null);
Xe &&
(LP.mostRecent().clearTimeout(Xe), Xe = null);
Sh(ha + "_lp.key", ha + "_lp.act.key");
Sh(ha + "_lp.act.key", ha + "_lp.act.lps");
var d = c[0].getAttribute("sesamepassword");
Rd.password_offline = d;
d = c[0].getAttribute("yubikeyhash");
Wc.password_offline = d;
d = c[0].getAttribute("yubikeykeysline");
Wc.password_keysline = d;
d = c[0].getAttribute("yubikeyserverpassword");
Wc.password_server = d;
d = c[0].getAttribute("gridpassword");
Eb.password_offline = d;
(rn = 1 == c[0].getAttribute("disableoffline") ? 1 : 0) && LP.lpClearCache(!0, !1, !1, !0);
lf();
Dj = c[0].getAttribute("privatekeyenchash");
LP.lphelpstats = new Cq;
LP.lphelpstats.currentlyopen = !1;
LP.lphelpstats.wino = null;
LP.lphelpstats.highlighthelp = "1" == c[0].getAttribute("hih") ? !0 : !1;
LP.lphelpstats.genpwhelp = "1" == c[0].getAttribute("genh") ? !0 : !1;
LP.lphelpstats.addsitehelp = "1" == c[0].getAttribute("addh") ? !0 : !1;
oi = c[0].getAttribute("country");
gh = "1" == c[0].getAttribute("upgrade") ? !0 : !1;
ml = "1" == c[0].getAttribute("logoff_other_ses") ? !0 : !1;
if ((d = c[0].getAttribute("pollinterval")) && -1 != d && !isNaN(parseInt(d)) &&
isFinite(d)) LP.lpprefsSetIntPref("pollServerVal", d), LP.lpprefsSetBoolPref("pollServer", !0), LP.g_flags.pollIntervalSetByPolicy = 1;
rr(c[0], "login");
LP.lpLoadThreshold = c[0].getAttribute("pageloadthres");
d = LP.getsinglefactortype();
"1" == c[0].getAttribute("multifactor_singlefactor") ? "" == d && ("trueapi" == cc("type") ? ma() && LP.lpis_win && "function" == typeof Z.trueapi_default_login_exists && Z.trueapi_default_login_exists(Q) && LP.setsinglefactortype(cc("type")) : "vtapi" == c[0].getAttribute("singlefactortype") ? ma() && LP.lpis_mac &&
"function" == typeof Z.lpvt_has_data && Z.lpvt_has_data() && LP.setsinglefactortype(c[0].getAttribute("singlefactortype")) : "validity" == c[0].getAttribute("singlefactortype") ? ma() && LP.lpis_win && "function" == typeof Z.validity_has_data && Z.validity_has_data() && LP.setsinglefactortype(c[0].getAttribute("singlefactortype")) : "winbio" == c[0].getAttribute("singlefactortype") && ma() && LP.lpis_win && "function" == typeof Z.winbio_has_data && Z.winbio_has_data() && LP.setsinglefactortype(c[0].getAttribute("singlefactortype"))) :
"" != d && LP.disable_single_factor();
P = !0;
mi = 1 == parseInt(c[0].getAttribute("isadmin"));
ph = 1 == parseInt(c[0].getAttribute("companyadmin"));
Lo = 1 == parseInt(c[0].getAttribute("showcredmon"));
ad = parseInt(c[0].getAttribute("loglogins"));
c[0].getAttribute("email");
kc = parseInt(c[0].getAttribute("accts_version"));
dg = parseInt(c[0].getAttribute("attachversion"));
Nl = c[0].getAttribute("token");
Sc = c[0].getAttribute("sessionid");
Ol = parseInt(c[0].getAttribute("multifactorscore"));
Pl = null != c[0].getAttribute("disablepwalerts") &&
1 == c[0].getAttribute("disablepwalerts") ? !0 : !1;
lpsendchallengescore = null != c[0].getAttribute("sendchallengescore") && 1 == c[0].getAttribute("sendchallengescore") ? !0 : !1;
kc != vb && (vb = -1);
LP.lp_handle_buttons_all("in");
d = c[0].getAttribute("pushserver");
if (null != d && d.length) try {
var g = 0;
if (!LP.lpprefsHasUserValue("pollServer") || LP.lpprefsGetBoolPref("pollServer")) g = 6E4 * (LP.lpprefsHasUserValue("pollServerVal") ? LP.lpprefsGetIntPref("pollServerVal") : 15);
if (0 != g) {
var h = d.split(" ");
ht(h[0], h[1], Rr)
}
} catch (l) {}
if ((h =
c[0].getAttribute("note_title")) && h.length) d = c[0].getAttribute("note_text"), g = c[0].hasAttribute("note_url") ? c[0].getAttribute("note_url") : null, vc(h, null, 0, "viewalert", g, !0, d);
if (!0 == LP.getcontrol("offer_popupfill") && (Mb = LP.lpprefsHasUserValue("usepopupfill") ? LP.lpprefsGetBoolPref("usepopupfill") : !0) && !LP.lpprefsHasUserValue("changedpopupfill")) LP.lpprefsSetBoolPref("showFormFillNotifications", !1), LP.lpprefsSetBoolPref("showFormFillNotifications", !1, !1), LP.lpprefsSetBoolPref("showFillNotifications", !1), LP.lpprefsSetBoolPref("showFillNotifications", !1, !1), LP.lpprefsSetBoolPref("offerGeneratePasswd", !1), LP.lpprefsSetBoolPref("offerGeneratePasswd", !1, !1), LP.lpprefsSetBoolPref("notificationsAfterClick", !1), LP.lpprefsSetBoolPref("changedpopupfill", !0);
d = "websiterefreshrsa" == e ? !0 : !1;
if (ma())
if (null == ja || "" == ja) ga("lprsa_login : lp_local_key is invalid");
else if ("1" != c[0].getAttribute("donotregeneratekeys"))
if (h = 0, d && (Fk(), h = 2), "" == Dj) {
c[0].setAttribute("donotregeneratekeys", "1");
var d = rb(ja),
d = d.toUpperCase(),
g = {}, n = {};
!0 != Z.xGenerateKeys(d, g, n) || null == g.value || "" == g.value || null == n.value || "" == n.value ? ga("lprsa_login : failed to generating new rsa key pair", null) : ws(d, g.value, n.value, h)
} else("" == Gg("readfromfile") || "" == cg || Fa(cg) != Dj) && ws("", "", "");
LP.lpdolostpwotp && c[0].hasAttribute("lostpwotpresult") && (($b(ha + "_lps.act.sxml") || $b(ha + "_lps.act.xml")) && !LP.lpprefsHasUserValue("StoreLostPWOTP") ? LP.lpprefsSetBoolPref("StoreLostPWOTP", !0) : LP.lpprefsHasUserValue("StoreLostPWOTP") || LP.lpprefsSetBoolPref("StoreLostPWOTP", !0));
if (LP.lpdolostpwotp && (!LP.lpprefsHasUserValue("StoreLostPWOTP") || LP.lpprefsGetBoolPref("StoreLostPWOTP")) && c[0].hasAttribute("lostpwotpresult") && "ok" != c[0].getAttribute("lostpwotpresult")) LP.DeleteOTP(), LP.MakeOTP();
LP.lpCloseNotifications();
if ((!f || "websitelogin" == e) && !Oc && !Dd) "websitelogin" == e && Hh(), Gc("internal_logincheck_ack", {
data0: Sc,
data1: Q,
data2: LP.GetIdentity()
});
try {
var p = "0" == c[0].getAttribute("ignoreminor") ? !1 : !0,
q = c[0].getAttribute("reqdversion");
"" != nc && "" != q && 0 > Hl(nc, q, p) && (LP.alert(LP.lpgs("A required update is available for LastPass. Please press OK to begin download and installation.")),
LP.lpUpdate())
} catch (r) {}
Ko();
Ql = !0;
it(c[0].getAttribute("formfillver"), "ff.dat", jt, "ff", "ff.dat");
it(c[0].getAttribute("sitesver"), "sites.dat", -1, "sites", "sites.dat");
0 == LP.numsites() || kc != vb ? Fb() : LP.lpRecheckTabs(!0);
("pluginlogin" == e || "createaccount" == e || e == jg || e == oh) && Pc();
f = Ab();
LP.lpprefsSetIntPref("lastpollcheck", f);
LP.flush_prefs();
vj = Jl = f;
LP.lpdopoll && LP.setupPollTimer();
oo ? (oo = !1, Ns()) : ("pluginlogin" == e || "createaccount" == e || e == jg) && (!LP.lpprefsHasUserValue("showHomepageAfterLogin", !1) || !0 == LP.lpprefsGetBoolPref("showHomepageAfterLogin", !1)) && cl();
LP.isFennecNative || (e = fr(), "" == e && (e = "0"), parseInt(e) < parseInt(c[0].getAttribute("iconsversion")) && LP.lpMakeRequest(LP.lp_base + "geticon.php", "versionff=" + LP.en(e), gr));
LP.ShowPremiumMenuItem();
LP.ShowMenuItem("entconsole", "Admin Console", ph);
LP.lpretryrequests();
if (c[0].getAttribute("sauid0")) {
e = 0;
f = "";
p = null;
"undefined" != typeof La && null != La ? p = La : "undefined" != typeof Xa && null != Xa && (p = Xa);
if (null != p) try {
for (; c[0].getAttribute("sauid" + e);) {
var t =
io(c[0].getAttribute("sakey" + e), p.bin2hex(ja));
t && (f += "&sauid" + e + "=" + LP.en(c[0].getAttribute("sauid" + e)) + "&sakey" + e + "=" + LP.en(t));
e++
}
} catch (A) {}
f.length && LP.lpMakeRequest(LP.lp_base + "uploadsuperkeys.php", "cmd=uploadsuperadmin&" + f, null, null)
}
}
function it(c, e, f, d, g) {
if (!("" == c || "0" == c)) {
var h = f;
f = !1;
$b(e) ? (e = Jb(e), h = -1 == e.indexOf("\n") ? e.length : e.indexOf("\n"), h = e.substr(0, h)) : f = !0; - 1 != h && 0 < Hl(c, h) && (f = !0);
f && LP.lpMakeRequest(LP.lp_base + "getappdata.php", "type=" + LP.en(d), pw, null, g)
}
}
function bt() {
if (Ga &&
hd) return null;
var c = lh();
if (0 == c.length) return null;
var c = c[0],
e = Re();
return "undefined" == typeof e[c] ? null : {
username: c,
password: e[c]
}
}
function Dk(c, e) {
for (var f = lh(), d = 0; d < f.length; d++)
if (f[d] == c) {
f.splice(d, 1);
break
}
null == e && (e = LP.lpprefsHasUserValue("rememberUsername") ? LP.lpprefsGetBoolPref("rememberUsername") : !1);
e && LP.check_email(c) && f.unshift(c);
Jj(f)
}
function lh(c) {
var e = "";
LP.lpprefsHasUserValue("loginusers", !1) && (e = LP.lpprefsGetCharPref("loginusers", !1));
var f = [],
d = encodeURIComponent(c);
"undefined" !=
typeof c && "" != c && -1 == e.indexOf(d) && (e = d + "|" + e);
if ("" != e) {
f = e.split("|");
for (c = 0; c < f.length; c++) try {
f[c] = decodeURIComponent(f[c])
} catch (g) {
f[c] = ""
}
}
return f
}
function Xm(c, e) {
var f = Re();
"undefined" != typeof f[c] && LP.make_lp_key(c, f[c]) != e && (f[c] = null, hh(f))
}
function Re() {
var c = "";
LP.lpprefsHasUserValue("loginpws", !1) && (c = Ih(LP.lpprefsGetCharPref("loginpws", !1)));
var e = [],
f = [];
if ("" != c) {
e = c.split("|");
for (c = 0; c < e.length; c++) {
var d = e[c].split("=");
if ("undefined" != typeof d[1]) {
var g;
try {
g = decodeURIComponent(d[0])
} catch (h) {
g =
""
}
var l;
try {
l = decodeURIComponent(d[1])
} catch (n) {
l = ""
}
d = Zb(Fa(g));
l = Ya(l, d);
f[g] = l
}
}
}
return f
}
function uw(c, e) {
Cr(c, e)
}
function Cr(c) {
P || LP.lpGetCurrentWindow().setTimeout(function() {
P || LP.lpOpenLogin(c.extra)
}, 500)
}
function Ml(c, e) {
return "multifactordisable.php?cmd=sendemail&username=" + encodeURIComponent(c) + "&type=" + encodeURIComponent(e)
}
function ft(c) {
var e = Fa(Q),
e = Jb(e + "_key.itr");
return null != e && "" != e && parseInt(e) > c && lx ? LP.confirm(LP.lpgs("IterationsReduction")) : !0
}
function Rl(c, e, f) {
Mo = !1;
if (f) a: {
c =
pi(!0);
var d = e.rid,
g = e.ts;
f = null;
for (var h in c) {
if (c[h].rid == d) {
ga("SK:We tried to append a row with an idential rid value", null);
break a
}
if (null == f) {
var l = parseInt(c[h].ts);
g < l && (f = h)
}
}
if (null == f) c[c.length] = e;
else {
d = [];
for (h in c) h == f && (d[d.length] = e), d[d.length] = c[h];
c = d
}
kt(c) || ga("SK:Could not write to retry file in lpretryinsert", null)
} else if ("invalidresponse" == c || "onerror" == c || "exception" == c || "objectcreation" == c) e = e.url, -1 == e.indexOf("loglogin.php") && -1 == e.indexOf("logformfill.php") && (-1 ==
e.indexOf("error.php") && -1 == e.indexOf("prof.php") && -1 == e.indexOf("getappdata.php") && -1 == e.indexOf("poll_server.php") && -1 == e.indexOf("httptest.php") && -1 == e.indexOf("geticon.php") && -1 == e.indexOf("logout.php") && -1 == e.indexOf("uploadsuperkeys.php")) && Ua("ErrorSendingMsg")
}
function lt(c) {
var e = [];
if ("string" == typeof c && "" != c) {
c = c.split("&");
for (var f = 0; f < c.length; f++) {
var d = c[f].split("=");
e[d[0]] = 2 <= d.length ? decodeURIComponent(d[1]) : ""
}
}
return e
}
function mx() {
var c = Q;
if (("" == c || null == c) && "undefined" !=
typeof Ec) c = Ec;
var e = "undefined" == typeof pd ? "ff" : "cr";
if ("" == c || null == c) return e + "unknown1";
c = c.toLowerCase().replace(/\s*/g, "");
if ("" == c) return e + "unknown2";
c = da(c, null, !0);
return "" == c ? e + "unknown3" : c
}
function ns(c) {
return c.responseXML && c.responseXML.documentElement ? "undefined" != typeof c.responseXML.documentElement.nodeName && "parsererror" == c.responseXML.documentElement.nodeName && void 0 != typeof c.responseXML.documentElement.namespaceURI && "http://www.mozilla.org/newlayout/xml/parsererror.xml" == c.responseXML.documentElement.namespaceURI ? !1 : !0 : !1
}
function No(c) {
return 0 < c.indexOf("?rid=") || 0 < c.indexOf("&rid=")
}
function Oo(c, e) {
e ? mt(c) ? (Db.status = "done", Db.donems = (new Date).getTime(), Po(!1)) : (ga("SK:lpremovefromretryfile failed for rid=" + c, null), nt("SK:lpremovefromretryfile failed for rid=" + c + ". Contents of retry file:"), Db.exit = !0) : (Db.status = "failed", Db.donems = (new Date).getTime(), Po(!0, !0, c))
}
function Po(c, e, f) {
if (c) {
c = e ? 864E5 : 6E5;
var d = Db.retryintervalms,
g = 2 * d;
0 == g ? g = 2E3 : g > c && (g = c);
Db.retryintervalms = g;
d != g && (Math.round(d / 1E3),
Math.round(g / 1E3));
e && ("undefined" == typeof Oj[f] && (Oj[f] = 0), Oj[f]++, 16 == Oj[f] && (Oj[f] = 0, mt(f)))
} else Db.retryintervalms != Db.initretryintervalms && (Math.round(Db.retryintervalms / 1E3), Math.round(Db.initretryintervalms / 1E3)), Db.retryintervalms = Db.initretryintervalms
}
function mt(c) {
var e = pi(!0);
if (0 == e.length) return !0;
var f, d = !1,
g = [];
for (f = 0; f < e.length; ++f) e[f].rid == c ? d = !0 : g[g.length] = e[f];
if (!d) return nt("SK:lpremovefromretryfile : ERROR could not find rid=" + c + ". Contents of retry file:"), !1;
if (!kt(g)) return !1;
0 == g.length && LP.lpGetAccounts();
return !0
}
function nt() {
var c = pi(!0),
e;
for (e in c)
for (var f in c[e]);
}
function pi(c) {
if (null == Pj || c) {
c = [];
var e;
e = Jk();
e = "" == e ? [] : Jb(e);
if (null == e) return c;
if ("" == e) return Pj = c;
e = Ya(e);
if ("" == e || null == e) return ga("Failed to decrypt retry data", null), cn(), c;
e = Ie(e);
if (null == e) return ga("Failed to lpatob decrypted retry data (so perhaps decryption failed)", null), cn(), c;
var f = e.indexOf(">LastPassRetry");
if (28 > e.length || 0 != e.indexOf("LastPassRetry<") || f != e.length - 14) return ga("Retry data format after decryption invalid: end=" +
f + " data=" + e, null), cn(), c;
e = e.substring(14, f);
if ("" != e) {
e = e.split("\n");
for (f = 0; f < e.length; ++f) {
var d = c,
g = c.length,
h;
h = [];
var l = /<([^ ]+) ?(.*)\/>/;
if ((l = l.exec(e[f])) && 3 == l.length)
for (var n = l[2], l = /([^=]+)="([^"]*)"/, p = null; null != (p = l.exec(n)) && 3 == p.length;) {
var q = p[1].toString(),
p = p[2].toString(),
n = n.replace(q + '="' + p + '"', ""),
q = ae(q),
p = qc(p);
"null" == q ? p = null : "false" == q && (p = !1);
h[q] = p
}
d[g] = h
}
}
Pj = c
}
return Pj
}
function kt(c) {
var e = "",
f;
for (f = 0; f < c.length; ++f) {
var d = 0 == f ? "" : "\n",
g = c[f],
h = "<row",
l = void 0;
for (l in g) null == g[l] && (g[l] = "null"), "object" == typeof g[l] && (g[l] = "null"), h += " " + l + '="' + yl(g[l].toString()) + '"';
h += "/>";
e += d + h
}
c = Hk("LastPassRetry<" + e + ">LastPassRetry");
if (null == c) return !1;
c = da(c);
if ("" == c || null == c) return !1;
Pj = null;
f = Jk();
"" == f ? c = !1 : (Rb(f, c), c = !0);
pi(!0);
return c
}
function on(c, e, f) {
for (var d = c.getElementsByTagName("input"), g = 0, h = null, l = 0; l < d.length; l++)
if (d[l].form == e)
if ("password" == d[l].type && "" != d[l].value) g = 1;
else if (f == d[l].type) {
if (g && "button" != f) return d[l].click(), 1;
g && "button" ==
f && !h && (h = d[l])
}
if ("button" == f) {
for (var n = null, d = c.getElementsByTagName("button"), l = 0; l < d.length; l++)
if (d[l].form == e && ("button" == d[l].type || "submit" == d[l].type || "image" == d[l].type) && g) n ? "submit" == d[l].type && (n = d[l]) : n = d[l];
if (n) return n.click(), 1;
if ("button" == f && h) return h.click(), 1
}
return 0
}
function Za(c, e, f, d) {
var g = c,
h = "string" == typeof c ? c.replace(/:/g, "_") : c,
l = "undefined" == typeof e || null == e ? "" : e;
if ("undefined" != typeof Rg[l + c]) return Rg[l + c];
if ("undefined" == typeof tn[l] && "string" == typeof c && 0 ==
c.indexOf("ff_")) {
a: {
var n = l,
p = n,
n = "" == n ? "en-US" : n;
if ($b("ff.dat")) {
for (var q = Jb("ff.dat", null, 1).split("\n"), r = !1, t = 0; t < q.length; t++) {
if (r && 0 == q[t].indexOf("lang=")) break a;
if (!r && q[t] == "lang=" + n) r = !0;
else if (r) {
var A = q[t].indexOf("=");
if (-1 != A) {
var y = q[t].substr(0, A),
A = q[t].substr(A + 1);
ot(y, p + y, A)
}
}
}
tn[p] = 1
}
}
if ("undefined" != typeof Rg[l + c]) return Rg[l + c]
}
"undefined" == typeof qi["en-US"] && (qi["en-US"] = T["@mozilla.org/intl/stringbundle;1"].getService(ca.nsIStringBundleService).createBundle("chrome://lastpass-locales/content/en-US/lang.properties"));
if (("undefined" == typeof e || null == e) && !d && "undefined" != typeof Ka) e = Ka;
if ("undefined" == typeof e || null == e) try {
g = nx.GetStringFromName(h), "" == g && (g = qi["en-US"].GetStringFromName(h))
} catch (J) {} else {
try {
"undefined" == typeof qi[e] && (qi[e] = T["@mozilla.org/intl/stringbundle;1"].getService(ca.nsIStringBundleService).createBundle("chrome://lastpass-locales/content/" + e + "/lang.properties")), g = qi[e].GetStringFromName(h)
} catch (u) {
return Za(c, null, f, !0)
}
if ("" == g) return Za(c, null, f, !0)
}
return ot(c, l + c, g)
}
function ot(c,
e, f) {
if ("string" != typeof c || 0 != c.indexOf("ff_") || null == f || "undefined" == typeof f || 0 != f.indexOf("__")) return "string" == typeof c && 0 == c.indexOf("ff_") && (Rg[e] = f), f;
f = f.substr(2);
c = "";
for (var d = 0; 8 > d; d++) c += "arti";
f = Ya(f, c);
return Rg[e] = f
}
function jj(c, e, f, d, g, h, l, n, p, q, r) {
c || (c = {}, c.contentWindow = l);
"undefined" == typeof n && (n = 1);
if (10 < n) return null;
1 == n && ("undefined" == typeof c.lpformtosubmit1 && (c.lpformtosubmit1 = null), "undefined" == typeof c.lpformtosubmit2 && (c.lpformtosubmit2 = null));
if ("undefined" == typeof h ||
null == h) h = c.contentDocument;
if ("undefined" == typeof l || null == l) l = c.contentWindow;
var t = "undefined" != typeof LP ? LP.lpgetcurrenturl(c) : Wa.URLToASCII(content.document.location.href);
if (!h || "undefined" == typeof h.location || null == h.location) return !1;
var A = Wa.URLToASCII(h.location.href),
y = Ta(A),
J = [];
Pk(J, l, h);
if (Mb) var u = [];
var s = Ab();
p || (p = []);
q || (q = []);
for (var C = !1, ia = !1, B = !1, F = 0; 2 > F; F++)
if (!ia)
for (var D in Va) {
var v = D,
K = Va[D],
G = z[K.aid];
G && "undefined" != typeof G.frompartner && (r = !0);
var E = G && null != G.sharedfromaid &&
"" != G.sharedfromaid && "0" != G.sharedfromaid,
Y = !1;
if (0 == F)
if ("undefined" != typeof c.loginAid && c.loginAid == K.aid) Y = !0, e = !1;
else continue;
else K.save_all && (f = !0);
if (ri(Ta(K.url), y))
if (g && (g.aid = K.aid), !0 != d && 45 <= s - K.create_time) p[p.length] = v, q[q.length] = K.url;
else {
var L = nb(A),
H = nb(K.url),
O = t == A ? L : nb(t),
Q = xb(K.url),
Z = sc(Q.host, K.url),
M = !1;
if (!Y && L != H) {
var da = xb(A),
ca = sc(da.host, A);
if (ri(ca, Z)) {
var W = je(J, Z, K.p, K.o, K.multi, K.pname, K.uname, -1);
W && hj(W, K, null, !1) && (M = !0)
}
}
if (Y || M || L == H || O == H) {
K.save_all && (B = !0);
K.onlyfill && (e = !0);
if (d) return C = !e && !K.overlay_shown ? !0 : !1, K.overlay_shown = !0, C;
var w = !0;
if ("" != K.custom_js) {
var P = Qk(K.custom_js, fb(G, 0), fb(G, 1), "2", !1, h);
"" != P && -1 != P.indexOf("lpdonotsendkeys") && (w = !1);
try {
if (h.body) {
var V = h.createElement("script"),
ba = h.createTextNode(P);
V.appendChild(ba);
"" != h.body.textContent.replace(/^\s\s*/, "").replace(/\s\s*$/, "") && h.body.appendChild(V)
}
} catch (ka) {
ga("Error running custom JS 2: " + ka + " ln: " + ka.lineNumber, A)
}
}
if (!K.save_all && 0 == F || 1 == F) {
if (f || Y) W = je(J,
Z, K.p, K.o, K.multi, null, null, -1), !W && r && !K.multi && (W = je(J, Z, K.p, K.o, !0, null, K.uname, -1));
else if (W = je(J, Z, K.p, K.o, K.multi, K.pname, K.uname, -1), !W && "undefined" != typeof K.uname && "" != K.uname && ("undefined" == typeof K.pname || null == K.pname || "" == K.pname)) W = je(J, Z, K.p, K.o, !0, null, K.uname, -1);
if (!W && "undefined" != typeof G.frompartner && 0 == l.frames.length)
for (var ha = 0; ha < J.length; ha++) {
var ja = J[ha];
if (0 == ja.textnames.length && 0 == ja.pwnames.length) {
W = ja.form;
e = !0;
break
}
}
if (!W && "undefined" != typeof G.frompartner && "" ==
K.p)
for (ha = 0; ha < J.length; ha++)
if (ja = J[ha], 1 == ja.textnames.length && 0 == ja.pwnames.length) {
W = ja.form;
break
}
}
var U = function(c, d, e, f, g) {
var l;
l = "google.com" == g && "Email" == c.id && "Email" == c.name && "email" == c.type && "hidden" == c.className ? !0 : !1;
if (!l && (f = "undefined" != typeof f && f && "undefined" != typeof Qj && "undefined" != typeof Qj[f] && 25E3 >= (new Date).getTime() - Qj[f], c.value != d || f)) {
if (!e)
if ("undefined" == typeof h.recent_no_dupes && (h.recent_no_dupes = []), "undefined" == typeof h.recent_no_dupes[xa(c)]) h.recent_no_dupes[xa(c)] =
1;
else if ("" != c.value) return;
if (!(Sk && "off" == c.getAttribute("autocomplete"))) {
E && "password" == c.type && ("undefined" == typeof h.LPlpsharedpasswordfills && (h.LPlpsharedpasswordfills = []), "object" == typeof h.LPlpsharedpasswordfills && (h.LPlpsharedpasswordfills[h.LPlpsharedpasswordfills.length] = c));
e = !0;
"select-one" == c.type && c.value == d && (e = !1);
if ("imo.im" == g && f) {
c.value = "";
c.focus();
for (g = 0; g < d.length; g++) gs(c, d.charCodeAt(g), 0, !1)
} else if (e) {
f && c.focus();
a: {
f = h;
if ("undefined" != typeof c.form && "undefined" != typeof g &&
"" != g && (l = "undefined" == typeof c.form || null == c.form || "undefined" == typeof c.form.action || 0 == c.form.action.indexOf("javascript:") ? "" : Ta(c.form.action), "" != l && 0 < l.indexOf(".") && -1 == l.indexOf("(") && -1 == l.indexOf(")") && "0.0.0.0" != l && !ri(g, l)))
if (oc(c)) {
"undefined" == typeof f.allow_crossorigin && (f.allow_crossorigin = []);
"undefined" == typeof f.allow_crossorigin[g] && (f.allow_crossorigin[g] = []);
if ("undefined" == typeof f.allow_crossorigin[g][l])
if (ol("LASTPASS SECURITY WARNING\n\nDo you allow your credentials for " +
g + " to be sent to " + l + "?\n\nClicking 'Yes' will automatically fill your credentials on this page.\nClicking 'No' will prevent your credentials from being automatically filled.")) {
f.allow_crossorigin[g][l] = !0;
var n = f.location.href;
"https://" == n.substring(0, 8) ? n = n.substring(8) : "http://" == n.substring(0, 7) && (n = n.substring(7));
LP.lpDeleteNever(n, 3, !1)
} else f.allow_crossorigin[g][l] = !1, br(f.location.href);
if (!f.allow_crossorigin[g][l]) {
g = !1;
break a
}
} else {
g = !1;
break a
}
g = !0
}
if (!g) return !1;
c.value = d;
Mb && u.push(c)
}
"undefined" !=
typeof LP && LP.lpprefsHasUserValue("clearfilledfieldsonlogoff") && LP.lpprefsGetBoolPref("clearfilledfieldsonlogoff") && ("object" != typeof h.lp_filled_fields && (h.lp_filled_fields = []), h.lp_filled_fields[h.lp_filled_fields.length] = c);
e && Qc(c, w);
g = {};
g.f = c;
g.v = d;
h.lastpass_recheck_fields[h.lastpass_recheck_fields.length] = g
}
}
};
if (!W && r && h.getElementsByTagName("input").length) {
for (var T = h.getElementsByTagName("input"), la = -1, ma = -1, na = 0; na < T.length; na++) {
var pa = T[na].type;
if (("text" == pa || "email" == pa || "tel" ==
pa || "url" == pa) && -1 == ma) la = na;
"password" == pa && -1 == ma && (ma = na)
}
var oa = null; - 1 != ma && (h.lastpass_recheck_fields = [], -1 != la && U(T[la], K.u, !1, K.aid, y), U(T[ma], K.p, !1, K.aid, y), oa = T[ma].form);
"undefined" != typeof G.frompartner && oa && nn(h, oa, K.submit_id)
}
if ("undefined" != typeof G.frompartner && !W && "" != K.custom_js) {
var qa = -1 != K.custom_js.indexOf("lpframe1.") ? c.contentWindow.frames[0].document : h,
P = Qk(K.custom_js, fb(z[K.aid], 0), fb(z[K.aid], 1), "3", e, qa);
try {
qa.body && (V = qa.createElement("script"), ba = qa.createTextNode(P),
V.appendChild(ba), "" != qa.body.textContent.replace(/^\s\s*/, "").replace(/\s\s*$/, "") && qa.body.appendChild(V))
} catch (wa) {
ga("Error running custom JS 3: " + wa + " ln: " + wa.lineNumber, A)
}
}
if (!W && !K.save_all && Mb) {
var fa = h.g_popupfill_parent;
fa || (fa = h.g_popupfill_parent_last);
fa && ("password" == fa.type ? U(fa, fb(z[K.aid], 1), !0, K.aid, y) : U(fa, fb(z[K.aid], 0), !0, K.aid, y))
}
if (!W && !K.save_all) break;
var ua = W && W.ownerDocument ? W.ownerDocument : h,
aa = W ? W.elements : [],
sa = null;
if (W) {
if (f || Y) {
K.uname = K.pname = K.oname = "";
for (var X =
0; X < aa.length; X++)
if ("undefined" != typeof aa[X].type)
if (("text" == aa[X].type || "email" == aa[X].type || "tel" == aa[X].type || "url" == aa[X].type) && "openid_url" != xa(aa[X]) && ("" == K.uname || "" == K.pname)) K.uname = xa(aa[X]);
else if ("password" == aa[X].type) K.pname = xa(aa[X]);
else if (("text" == aa[X].type || "email" == aa[X].type || "tel" == aa[X].type || "url" == aa[X].type) && "openid_url" == xa(aa[X])) K.oname = xa(aa[X])
}(fa = h.g_popupfill_parent) || (fa = h.g_popupfill_parent_last);
if (Mb && (f || Y) && ua && fa)
if (xa(fa), fa.form == W) {
var za = fa,
va =
xa(za);
if (za && va)
if ("text" == za.type || "email" == za.type || "tel" == za.type || "url" == za.type) {
if (!K.uname || K.uname != xa(za)) K.uname = xa(za)
} else if ("password" == za.type && (!K.pname || K.pname != xa(za))) K.pname = xa(za)
}
}
h.lastpass_recheck_fields = [];
"undefined" != typeof h._LP_STATE && "pageshowdone" == h._LP_STATE && (23 <= LP.lp_getFFVersionFloat() && delete h.recent_no_dupes, h.recent_no_dupes = [], h.allow_crossorigin = []);
for (var Aa = 0, X = 0; X < aa.length; X++)
if ("undefined" != typeof aa[X].type) {
if ("reset" != aa[X].type && "button" != aa[X].type &&
"image" != aa[X].type && "submit" != aa[X].type && "file" != aa[X].type && "textarea" != aa[X].type) {
var Ba = null,
Da = null;
if ("password" == aa[X].type) {
Aa++;
var Fa = aa[X].form;
if (Fa) {
for (var Ia = null, ha = 0; ha < J.length; ha++)
if (ja = J[ha], ja.form == Fa) {
Ia = ja;
break
}
if (Ia && 3 == ja.numPass) {
var Ka = ah(Fa);
Kh(Ka);
(1 == Aa && aa[X] && aa[X] == Ka || 3 == Aa && aa[X] && aa[X] == Ka) && U(aa[X], K.p, !1, K.aid, y);
continue
}
} else if (1 == Aa) Ba = aa[X];
else if (2 == Aa && null != Ba) Da = Ba, Ba = aa[X];
else if (3 == Aa && null != Ba && null != Da) {
U(Da, K.p, !1, K.aid, y);
continue
}
} else Ba =
null; if ("" != K.uname && xa(aa[X]) == K.uname)
for (var Ca = h.getElementsByName(K.uname), Ea = 0; Ea < Ca.length; Ea++) U(Ca[Ea], K.u, !1, K.aid, y);
if ("" != K.pname && xa(aa[X]) == K.pname) {
Ca = h.getElementsByName(K.pname);
for (Ea = 0; Ea < Ca.length; Ea++) U(Ca[Ea], K.p, !1, K.aid, y)
}
"" != K.oname && xa(aa[X]) == K.oname && U(aa[X], K.o, !1, K.aid, y)
}
if ("" != K.captcha_id && xa(aa[X]) == K.captcha_id) sa = aa[X];
else if ("undefined" != typeof K.fields && "undefined" != typeof K.fields[xa(aa[X])])
if ("checkbox" == aa[X].type) {
var Ga = K.fields[xa(aa[X])] ? !0 : !1;
aa[X].checked !=
Ga && (aa[X].checked = Ga, Qc(aa[X].checked))
} else if ("radio" == aa[X].type) aa[X].value == K.fields[xa(aa[X])] && !aa[X].checked && (aa[X].checked = !0, Qc(aa[X].checked));
else if ("select-one" == aa[X].type)
for (var ya = 0; ya < aa[X].options.length; ya++) {
if (aa[X].options[ya].value == K.fields[xa(aa[X])]) {
U(aa[X], K.fields[xa(aa[X])], !1, K.aid, y);
break
}
} else if ("select-multiple" == aa[X].type) {
var La = K.fields[xa(aa[X])],
Ja;
Ja = "" != La ? La.split("|") : [];
for (ya = 0; ya < Ja.length; ya++) Ja[ya] = decodeURIComponent(Ja[ya]);
for (var Ha = !1, ya =
0; ya < aa[X].options.length; ya++) kb(aa[X].options[ya].value, Ja) ? aa[X].options[ya].selected || (Ha = aa[X].options[ya].selected = !0) : aa[X].options[ya].selected && (aa[X].options[ya].selected = !1, Ha = !0);
Ha && Qc(aa[X])
} else "hidden" != aa[X].type && "reset" != aa[X].type && ("button" != aa[X].type && "image" != aa[X].type && "submit" != aa[X].type && "file" != aa[X].type && "textarea" != aa[X].type) && U(aa[X], K.fields[xa(aa[X])], !1, K.aid, y)
}
if (h && Mb) try {
if ("undefined" != typeof K.fields)
for (x in K.fields) {
var Sa = x.match(/^(input|select|textarea)(\d+)$/);
if (Sa) {
var Ua = parseInt(Sa[2]);
if ("NaN" != Ua)
for (var Pa = ["input", "select", "textarea"], Oa = [], Xa = [], Ra = 0; Ra < Pa.length; Ra++) {
var cb = h.getElementsByTagName(Pa[Ra])[Ua];
if (null != cb) {
U(cb, K.fields[x], !1, K.aid, y);
break
}
}
}
}
} catch (jb) {}
var gb = !1,
db = !1,
hb = !1,
qb = !1,
eb;
for (eb in K.otherfields) {
var lb = [];
if ("" != eb && "undefined" != typeof ua.getElementsByName) {
for (var rb = ua.getElementsByName(eb), X = 0; X < rb.length; X++) "FORM" == rb[X].tagName && (lb[lb.length] = rb[X]);
if (0 == lb.length && K.save_all) {
var yb = ua.getElementById(eb);
yb && "FORM" == yb.tagName && (lb = Array(yb))
}
}
if (0 == lb.length) {
for (var sb = ua.getElementsByTagName("form"), X = 0; X < sb.length; X++) xa(sb[X]) == eb && (lb[lb.length] = sb[X]);
Pa = ["input", "select", "textarea"];
Oa = [];
Xa = [];
for (Ra = 0; Ra < Pa.length; Ra++)
for (var rb = h.getElementsByTagName(Pa[Ra]), vb = 0; vb < rb.length; vb++)
if (null == rb[vb].form || "" == xa(rb[vb]) || "undefined" != typeof K.otherfields[eb][Pa[Ra] + vb]) Oa[Oa.length] = rb[vb], Xa[Xa.length] = Pa[Ra] + vb;
if (0 < Oa.length) {
var zb = {};
zb.elements = Oa;
zb.elementnames = Xa;
lb[lb.length] = zb
}
}
for (X =
0; X < lb.length; X++) {
var wb = lb[X];
if ("undefined" != typeof wb.elements && wb.elements && "undefined" != typeof wb.elements.length)
for (ya = 0; ya < wb.elements.length; ya++) {
var mb = wb.elements[ya],
ta = xa(mb);
if ("undefined" == typeof K.otherfields[eb][ta]) {
var I = xa(mb, !0);
"undefined" != typeof K.otherfields[eb][I] && (ta = I)
}
if (("" == ta || "undefined" == typeof K.otherfields[eb][ta]) && "undefined" != typeof wb.elementnames && wb.elementnames.length > ya) ta = wb.elementnames[ya];
if ("email" == mb.type || "tel" == mb.type || "url" == mb.type || "text" ==
mb.type || "password" == mb.type) gb = !0, "password" == mb.type && (hb = !0);
if ("undefined" != typeof K.otherfields[eb][ta])
if ("" != K.captcha_id && xa(mb) == K.captcha_id) sa = mb;
else if ("checkbox" == mb.type) Ga = K.otherfields[eb][ta] ? !0 : !1, mb.checked != Ga && (mb.checked = Ga, Qc(mb)), B && !c.lpformtosubmit2 && (c.lpformtosubmit2 = mb.form);
else if ("radio" == mb.type) mb.value == K.otherfields[eb][ta] && !mb.checked && (mb.checked = !0, Qc(mb)), B && !c.lpformtosubmit2 && (c.lpformtosubmit2 = mb.form);
else if ("select-one" == mb.type) {
for (var ob = 0; ob < mb.options.length; ob++)
if (mb.options[ob].value ==
K.otherfields[eb][ta]) {
U(mb, K.otherfields[eb][ta], !0, K.aid, y);
break
}
B && !c.lpformtosubmit2 && (c.lpformtosubmit2 = mb.form)
} else if ("select-multiple" == mb.type) {
La = K.otherfields[eb][ta];
Ja = "" != La ? La.split("|") : [];
for (ob = 0; ob < Ja.length; ob++) Ja[ob] = decodeURIComponent(Ja[ob]);
Ha = !1;
for (ob = 0; ob < mb.options.length; ob++) kb(mb.options[ob].value, Ja) ? mb.options[ob].selected || (Ha = mb.options[ob].selected = !0) : mb.options[ob].selected && (mb.options[ob].selected = !1, Ha = !0);
Ha && Qc(mb);
B && !c.lpformtosubmit2 && (c.lpformtosubmit2 =
mb.form)
} else if ("email" == mb.type || "tel" == mb.type || "url" == mb.type || "text" == mb.type || "password" == mb.type || "textarea" == mb.type) {
U(mb, K.otherfields[eb][ta], !0, K.aid, y);
if ("" != K.otherfields[eb][ta] && ("email" == mb.type || "tel" == mb.type || "url" == mb.type || "text" == mb.type || "password" == mb.type)) db = !0, "password" == mb.type && (qb = !0);
B && ("password" == mb.type ? c.lpformtosubmit1 || (c.lpformtosubmit1 = mb.form) : c.lpformtosubmit2 || (c.lpformtosubmit2 = mb.form))
}
}
}
}
if (B && gb && !db && (G = z[K.aid]) && G.logins && 0 < G.logins.length) {
var pb =
G.logins[0].otherfields;
if (pb) {
for (var ub = 0, T = h.getElementsByTagName("input"), $a = 0; $a < T.length; $a++)
if ("text" == T[$a].type || "password" == T[$a].type || "email" == T[$a].type || "tel" == T[$a].type || "url" == T[$a].type) {
for (; ub < pb.length && "text" != pb[ub].type && "password" != pb[ub].type && "email" != pb[ub].type && "tel" != pb[ub].type && "url" != pb[ub].type;) ub++;
if (ub < pb.length) {
var Bb = pb[ub];
"" != Bb.value && Bb.type == T[$a].type && (16 <= Bb.name.length && Bb.name.length == xa(T[$a]).length) && (U(T[$a], Ya(Bb.value), !0, K.aid, y), db = !0, "password" ==
T[$a].type ? (qb = !0, c.lpformtosubmit1 || (c.lpformtosubmit1 = T[$a].form)) : c.lpformtosubmit2 || (c.lpformtosubmit2 = T[$a].form));
ub++
}
}
if (!db) {
T = h.getElementsByTagName("input");
for ($a = 0; $a < T.length; $a++)
if ("text" == T[$a].type || "password" == T[$a].type || "email" == T[$a].type || "tel" == T[$a].type || "url" == T[$a].type) {
var Fb = xa(T[$a]),
Cb = Fb.match(/^(\D+)\d+$/);
if (Cb)
for (var Fb = Cb[1], N = 0; N < pb.length; N++)
if ("" != pb[N].value && (Cb = pb[N].name.match(/^(\D+)\d+$/)) && Cb[1] == Fb) {
U(T[$a], Ya(pb[N].value), !0, K.aid, y);
db = !0;
"password" ==
T[$a].type ? (qb = !0, c.lpformtosubmit1 || (c.lpformtosubmit1 = T[$a].form)) : c.lpformtosubmit2 || (c.lpformtosubmit2 = T[$a].form);
break
}
}
}
}
}
if (B && hb && !qb) {
for (var R = null, Hb = 0, Gb = null, Jb = null, sb = h.getElementsByTagName("form"), Eb = 0; Eb < sb.length; Eb++)
if (Oa = sb[Eb].elements, !(null == Oa || "undefined" == typeof Oa)) {
for (var Kb = 0, Aa = 0, Pb = null, S = null, Na = 0; Na < Oa.length; Na++) {
var Db = Oa[Na];
if ("text" == Db.type || "email" == Db.type || "tel" == Db.type || "url" == Db.type) 0 == Kb && (Pb = Db), Kb++;
"password" == Db.type && (0 == Aa && (S = Db), Aa++)
}
if (1 ==
Aa && (!R || 1 == Kb && 1 != Hb)) Hb = Kb, R = sb[Eb], Gb = Pb, Jb = S
}
R && (Gb && U(Gb, fb(z[K.aid], 0), !0, K.aid, y), U(Jb, fb(z[K.aid], 1), !0, K.aid, y), qb = !0, c.lpformtosubmit1 = R)
}
if (h && Mb) {
var Lb = 0,
Qb = !0;
(fa = h.g_popupfill_parent) || (fa = h.g_popupfill_parent_last);
if (!fa && B && !qb) {
var Sb = Sl(),
Nb, Ob;
for (Nb = 0; Nb < Sb.length; Nb++)
if (Ob = Sb[Nb], "sites" == Ob.fillhint) {
(fa = Ob.IHTMLElement) || (fa = hc(h, Ob.idorname));
break
}
}
if (fa) {
for (Lb = 0; Lb < u.length; Lb++)
if (u[Lb] == fa) {
Qb = !1;
break
}
if (Qb) {
var Xb = fa.form ? kg(h, fa.form) : !1,
Yb = fa.form ? Cf(h, fa.form) : !1;
if (fa.form && Yb && !Xb) {
var Zb = fa.form.getElementsByTagName("INPUT");
if (Zb) {
var Wb, Tb = Zb;
if (!Tb || 0 >= Tb.length) Wb = null;
else {
for (var Ub = void 0, ac = Tb.length, $b = null, tb = null, Ub = 0; Ub < ac; Ub++) {
var Rb = Tb[Ub];
if (Rb) {
if (("text" == Rb.type || "tel" == Rb.type || "email" == Rb.type) && !tb) $b = Rb;
"password" == Rb.type && !tb && (tb = Rb)
}
}
var bc = {};
$b && (bc.text = $b);
tb && (bc.password = tb);
Wb = si(bc) ? null : bc
}
Wb && Wb.text && U(Wb.text, fb(z[K.aid], 0), !1, K.aid, y);
Wb && Wb.password && U(Wb.password, fb(z[K.aid], 1), !1, K.aid, y);
if (!Wb || fa != Wb.text &&
fa != Wb.password) "password" == fa.type ? U(fa, fb(z[K.aid], 1), !1, K.aid, y) : U(fa, fb(z[K.aid], 0), !1, K.aid, y)
}!c.lpformtosubmit1 && B && (c.lpformtosubmit1 = fa.form)
} else "password" == fa.type ? U(fa, fb(z[K.aid], 1), !0, K.aid, y) : U(fa, fb(z[K.aid], 0), !0, K.aid, y)
}
}
}
h.lastpass_domcontent_redo = function() {
if (h && h.lastpass_recheck_fields) {
for (var c = 0; c < h.lastpass_recheck_fields.length; c++) h.lastpass_recheck_fields[c].f && "" == h.lastpass_recheck_fields[c].f.value && h.lastpass_recheck_fields[c].f.value != h.lastpass_recheck_fields[c].v &&
(xa(h.lastpass_recheck_fields[c].f), h.lastpass_recheck_fields[c].f.value = h.lastpass_recheck_fields[c].v, Qc(h.lastpass_recheck_fields[c].f));
h.lastpass_recheck_fields = null
}
};
e && An(K.aid) && (e = !1);
if ("" != K.custom_js) {
qa = -1 != K.custom_js.indexOf("lpframe1.") ? c.contentWindow.frames[0].document : h;
P = Qk(K.custom_js, fb(z[K.aid], 0), fb(z[K.aid], 1), "3", e, qa);
try {
qa.body && (V = qa.createElement("script"), ba = qa.createTextNode(P), V.appendChild(ba), "" != qa.body.textContent.replace(/^\s\s*/, "").replace(/\s\s*$/, "") && qa.body.appendChild(V))
} catch (dc) {
ga("Error running custom JS 3: " +
dc + " ln: " + dc.lineNumber, A)
}
}
var gc = -1 == K.custom_js.indexOf("lpdontsubmit") && !B;
e || (h.LPlpskipaddconfirm = !0);
null != sa && oc(sa);
null != sa && oc(sa) ? (hn(h), vc("EnterCaptcha", c, 0, "captcha"), Mg(sa), sa.focus(), c.lpformtosubmit1 = c.lpformtosubmit2 = null) : gc && ("undefined" != typeof c.loginAid && (c.loginAid = ""), e || (K.overlay_shown = !0, Mn(h, K.aid)), e || nn(ua, W, K.submit_id));
Nn(h, Za("Submitted the form, waiting for the remote website..."));
p[p.length] = v;
q[q.length] = K.url;
C = !0;
!K.multi && !e && (ij[c] = A);
ia = !0;
break
}
}
}
if ((B || -1 != n) && l && l.frames) {
var ec = l.frames.length;
10 < ec && (ec = 10);
for (D = 0; D < ec; D++) l.frames[D].document && jj(c, e, f, d, g, l.frames[D].document, l.frames[D].window, n + 1, p, q, r) && (C = !0)
}
if (1 >= n && B) {
if (!e) {
var cc = null;
c.lpformtosubmit1 ? cc = c.lpformtosubmit1 : c.lpformtosubmit2 && (cc = c.lpformtosubmit2);
cc && (K.overlay_shown = !0, Mn(h, K.aid), ua = cc.ownerDocument, nn(ua, cc, K.submit_id), Nn(h, Za("Submitted the form, waiting for the remote website...")))
}
c.lpformtosubmit1 = null;
c.lpformtosubmit2 = null
}
for (D = p.length - 1; 2 > n && 0 <= D; D--) Va.length >
p[D] && Va[p[D]].url == q[D] && Va.splice(p[D], 1);
return C
}
function Pk(c, e, f, d) {
"undefined" == typeof d && (d = 1);
if (10 < d) return null;
if (!("undefined" == typeof f || "undefined" == typeof f.location)) {
var g = Wa.URLToASCII(f.location.href),
h = xb(g),
g = sc(h.host, g),
h = f.getElementsByTagName("form"),
l = h.length;
100 < l && (l = 100);
for (var n = 0, p = 0; p < l; p++) {
var q = [];
q.tld = g;
q.pwnames = [];
q.textnames = [];
if (h && !("undefined" == typeof h[p] || "undefined" == typeof h[p].elements)) {
var r = h[p].elements;
if ("undefined" != typeof r) {
var t = 0,
A = 0,
y = r.length;
200 < y && (y = 200);
for (var J = 0; J < y; J++)
if ("undefined" != typeof r[J].type) {
if ("password" == r[J].type) {
if ("facebook.com" == g && "string" == typeof r[J].id && r[J].id.match(/^[a-z0-9]{6}_\d{1,2}_ci_password$/)) continue;
if (!oc(r[J])) {
f.LPlpinvisiblepw = !0;
var u = null;
if ("undefined" != typeof cb) {
var s = cb(f);
s && (u = s.contentWindow)
} else u = content.window; if (u) {
for (; null != u.top && u.top != u;) u = u.top;
u = u.document;
"undefined" == typeof u.LPlpinstalledclick && "undefined" != typeof u.LPlpnoinstalledclick && fj(b, f)
}
if (pn) continue;
else h[p].bHasInvisible = !0
}
}
"text" == r[J].type || "email" == r[J].type || "tel" == r[J].type || "url" == r[J].type ? t++ : "password" == r[J].type && A++;
if (("text" == r[J].type || "email" == r[J].type || "tel" == r[J].type || "url" == r[J].type) && "yahoo.com" != g && "directcpv.com" != g && "zestservers.com" != g) q.textnames[q.textnames.length] = xa(r[J]);
"password" == r[J].type && (q.pwnames[q.pwnames.length] = xa(r[J]))
}
q.form = h[p];
q.numText = t;
q.numPass = A;
c[c.length] = q;
if ((0 < t || 0 < A) && 10 <= ++n) break
}
}
}
if (-1 == d) return null;
if ("undefined" == typeof e ||
null == e)
if (s = cb(f)) e = s.contentWindow;
if (e && e.frames) {
f = e.frames.length;
10 < f && (f = 10);
for (g = 0; g < f; g++) e.frames[g].document && Pk(c, e.frames[g].window, e.frames[g].document, d + 1)
}
}
}
function je(c, e, f, d, g, h, l) {
f = "undefined" == typeof f || "" != f;
d = null;
for (var n = 0, p = 0, q = 0; q < c.length; q++) {
var r = c[q],
t = null,
A = e && "undefined" != typeof e && !ri(e, r.tld) ? !1 : !0;
if (A) {
for (A = 0; A < r.pwnames.length; A++) {
var y = r.pwnames[A];
if (f && ("undefined" == typeof h || null == h || y == h)) t = r.form
}
if (null != t && (null == d || r.numText + r.numPass < n + p || r.numText +
r.numPass == n + p && (r.numPass < r.bestNumPass || d.bHasInvisible && !t.bHasInvisible))) d = t, n = r.numText, p = r.numPass
}
}
if (null != d) return d;
if (g)
for (q = 0; q < c.length; q++)
if (r = c[q], e && "undefined" != typeof e && !ri(e, r.tld) ? !1 : !0)
for (A = 0; A < r.textnames.length; A++)
if ("undefined" == typeof l || null == l || r.textnames[A] == l) return r.form;
return null
}
function ri(c, e) {
if ("string" != typeof c || "string" != typeof e) return !1;
c = c.toLowerCase();
e = e.toLowerCase();
return c == e ? !0 : "undefined" != typeof gb[c] && "undefined" != typeof gb[e] && gb[c] ==
gb[e] ? !0 : !1
}
function Wn(c, e, f, d, g, h, l, n, p, q, r, t, A, y, J, u, s, z, ia, C, F, B, D, K, v, E, Y, L, H, O) {
msfids = [];
t && ("undefined" == typeof t.neveraccounts && (t.neveraccounts = []), "undefined" == typeof t.nevergenerates && (t.nevergenerates = []), "undefined" == typeof t.neverformfills && (t.neverformfills = []), "undefined" == typeof t.neverautologins && (t.neverautologins = []), "undefined" == typeof t.nevershowicons && (t.nevershowicons = []), "undefined" == typeof t.onlyaccounts && (t.onlyaccounts = []), "undefined" == typeof t.onlygenerates && (t.onlygenerates = []), "undefined" == typeof t.onlyformfills && (t.onlyformfills = []), "undefined" == typeof t.onlyautologins && (t.onlyautologins = []), "undefined" == typeof t.onlyshowicons && (t.onlyshowicons = []));
0 == d && (uj = !1, Oe = yj = se = 0, qd = "", Ye = 0);
if (null == K || "undefined" == typeof K) {
K = Sb;
if ("undefined" == typeof Ub || null == Ub || 0 == Ub.length) Ub = La.bin2hex(Sb);
v = Ub
}
var Q = 0,
W = h && 0 < h.length ? h.length - 1 : -1,
M = p && 0 < p.length ? p.length - 1 : 0,
ca = !1;
"LPAV" != c.substring(0, 4) && (d = e);
z || (z = []);
z.maxid = 0;
for (H || (H = []); d < e;) {
var P = c.substring(d, d + 4),
ba =
mh(c.substring(d + 4, d + 8));
if ("ACCT" == P && "error" != E) {
var w = d + 8,
T = [],
w = w + G(c, w, T, "aid"),
V = parseInt(T.aid);
V > z.maxid && (z.maxid = V);
w += G(c, w, T, "encname");
T.name = "undefined" == typeof parsedonotdecryptnames ? Ac(T.encname, 1, K, v) : T.encname;
w += G(c, w, T, "encgroup");
T.group = Ac(T.encgroup, 1, K, v);
K != Sb && (T.group = "" == T.group ? E.decsharename : E.decsharename + "\\" + T.group);
w += G(c, w, T, "url");
w += G(c, w, T, "extra");
w += G(c, w, T, "fav");
w += G(c, w, T, "sharedfromaid");
w += G(c, w, T, "username");
w += G(c, w, T, "password");
w += G(c, w, T, "pwprotect");
T.pwprotect = "1" == T.pwprotect;
w += G(c, w, T, "genpw");
T.genpw = "1" == T.genpw;
w += G(c, w, T, "sn");
T.sn = "1" == T.sn;
w += G(c, w, T, "last_touch");
w += G(c, w, T, "autologin");
T.autologin = "1" == T.autologin;
w += G(c, w, T, "never_autofill");
T.never_autofill = "1" == T.never_autofill;
w += G(c, w, T, "realm_data");
w += G(c, w, T, "fiid");
w += G(c, w, T, "custom_js");
w < d + ba + 8 && (w += G(c, w, T, "submit_id"));
w < d + ba + 8 && (w += G(c, w, T, "captcha_id"));
w < d + ba + 8 && (w += G(c, w, T, "urid"), P = parseInt(T.urid), P > z.maxid && (z.maxid = P));
w < d + ba + 8 && (w += G(c, w, T, "basic_auth"));
w <
d + ba + 8 && (w += G(c, w, T, "method"));
w < d + ba + 8 && (w += G(c, w, T, "action"));
w < d + ba + 8 && (w += G(c, w, T, "groupid"));
w < d + ba + 8 && (w += G(c, w, T, "deleted"));
w < d + ba + 8 && (w += G(c, w, T, "attachkey"), w += G(c, w, T, "attachpresent"));
w < d + ba + 8 ? (w += G(c, w, T, "individualshare"), T.individualshare = "1" == T.individualshare) : T.individualshare = !1;
w < d + ba + 8 ? w += G(c, w, T, "notetype") : T.notetype = "";
w < d + ba + 8 ? w += G(c, w, T, "noalert") : T.noalert = "";
T.fields = [];
"undefined" != typeof E && null != E && K != Sb && (T.sharefolderid = E.id, 0 == E.give && (T.sharedfromaid = 1));
T.sn ? l &&
l.push(T) : h && (W = h.length, h.push(T));
Q++
} else if ("SPMT" == P) n && (w = d + 8, w += G(c, w, n, "login_site_prompt"), n.login_site_prompt = "1" == n.login_site_prompt, w += G(c, w, n, "edit_site_prompt"), n.edit_site_prompt = "1" == n.edit_site_prompt, w += G(c, w, n, "edit_sn_prompt"), n.edit_sn_prompt = "1" == n.edit_sn_prompt, w += G(c, w, n, "view_pw_prompt"), n.view_pw_prompt = "1" == n.view_pw_prompt, w += G(c, w, n, "view_ff_prompt"), n.view_ff_prompt = "1" == n.view_ff_prompt, w += G(c, w, n, "improve"), n.improve = "1" == n.improve, w += G(c, w, n, "switch_identity_prompt"),
n.switch_identity_prompt = "1" == n.switch_identity_prompt, w += G(c, w, n, "switch_f_prompt"), n.switch_f_prompt = "1" == n.switch_f_prompt, w < d + ba + 8 ? (w += G(c, w, n, "multifactor_reprompt"), n.multifactor_reprompt = "1" == n.multifactor_reprompt) : n.multifactor_reprompt = !1, w < d + ba + 8 ? (w += G(c, w, n, "company_login_site_prompt"), n.company_login_site_prompt = "1" == n.company_login_site_prompt) : n.company_login_site_prompt = !1, w < d + ba + 8 ? (w += G(c, w, n, "company_copyview_site_prompt"), n.company_copyview_site_prompt = "1" == n.company_copyview_site_prompt) :
n.company_copyview_site_prompt = !1);
else if ("PREF" == P) F && (w = d + 8, w += G(c, w, F, "allowmasterpasswordsave"), w += G(c, w, F, "logoffclosebrowser"), w += G(c, w, F, "logoffidle"), w < d + ba + 8 && (w += G(c, w, F, "noexport")), w < d + ba + 8 && (w += G(c, w, F, "logofflock")), w < d + ba + 8 && (w += G(c, w, F, "logoffscreen")), w < d + ba + 8 && (w += G(c, w, F, "logoffshutdown")), w < d + ba + 8 && (w += G(c, w, F, "sitepwlen")), w < d + ba + 8 && (w += G(c, w, F, "hideidentities")), w < d + ba + 8 && (w += G(c, w, F, "savesitestopersonal")));
else if ("LPFF" == P && "error" != E) {
if (p) {
var w = d + 8,
U = [],
w = w + G(c, w, U, "ffid"),
M = parseInt(U.ffid);
M > z.maxid && (z.maxid = M);
w += G(c, w, U, "profiletype");
w += G(c, w, U, "profilename");
w += G(c, w, U, "profilelanguage");
w += G(c, w, U, "firstname");
w += G(c, w, U, "middlename");
w += G(c, w, U, "lastname");
w += G(c, w, U, "email");
w += G(c, w, U, "company");
w += G(c, w, U, "ssn");
w += G(c, w, U, "birthday");
w += G(c, w, U, "address1");
w += G(c, w, U, "address2");
w += G(c, w, U, "city");
w += G(c, w, U, "state");
w += G(c, w, U, "state_name");
w += G(c, w, U, "zip");
w += G(c, w, U, "country");
w += G(c, w, U, "country_cc3l");
w += G(c, w, U, "country_name");
w += G(c, w, U, "mobilephone");
w += G(c, w, U, "mobilephone3lcc");
w += G(c, w, U, "mobileext");
w += G(c, w, U, "evephone");
w += G(c, w, U, "evephone3lcc");
w += G(c, w, U, "eveext");
w += G(c, w, U, "phone");
w += G(c, w, U, "phone3lcc");
w += G(c, w, U, "phoneext");
w += G(c, w, U, "fax");
w += G(c, w, U, "fax3lcc");
w += G(c, w, U, "faxext");
w += G(c, w, U, "ccnum");
w += G(c, w, U, "ccexp");
w += G(c, w, U, "cccsc");
w += G(c, w, U, "username");
w += G(c, w, U, "address3");
w += G(c, w, U, "title");
w += G(c, w, U, "gender");
w += G(c, w, U, "driverlicensenum");
w += G(c, w, U, "taxid");
w += G(c, w, U, "pwprotect");
U.pwprotect = "1" == U.pwprotect;
w += G(c, w, U, "bankname");
w += G(c, w, U, "bankacctnum");
w += G(c, w, U, "bankroutingnum");
w += G(c, w, U, "timezone");
w += G(c, w, U, "county");
w += G(c, w, U, "ccstart");
w += G(c, w, U, "ccname");
w += G(c, w, U, "ccissuenum");
w += G(c, w, U, "notes");
w < d + ba + 8 && (w += G(c, w, U, "lastname2"));
w < d + ba + 8 && (w += G(c, w, U, "mobileemail"), w += G(c, w, U, "firstname2"), w += G(c, w, U, "firstname3"), w += G(c, w, U, "lastname3"));
U.creditmon = 0;
w < d + ba + 8 && (w += G(c, w, U, "creditmon"), U.creditmon = "1" == U.creditmon ? 1 : 0);
U.custom_fields = [];
"undefined" != typeof E && null != E && K != Sb ? (U.sharefolderid =
E.id, 0 == E.give && (U.sharedfromaid = 1), U.group = E.decsharename) : U.group = "";
M = p.length;
p.push(U)
}
} else if ("IDNT" == P) q && (w = d + 8, V = [], w += G(c, w, V, "iid"), w += G(c, w, V, "iname"), w += G(c, w, V, "aids"), w += G(c, w, V, "ffids"), w += G(c, w, V, "pw_prompt"), V.pw_prompt = "1" == V.pw_prompt, w < d + ba + 8 ? w += G(c, w, V, "appaids") : V.appaids = "", q.push(V));
else if ("PNDG" == P) {
if (u) {
w = d + 8;
P = [];
w += G(c, w, P, "id");
w += G(c, w, P, "fiid");
w += G(c, w, P, "sharerusername");
w += G(c, w, P, "sharedfromaid");
w += G(c, w, P, "sharemessage");
w += G(c, w, P, "sharekeyenchex");
w += G(c,
w, P, "sharekeyenchexsig");
w += G(c, w, P, "sharename");
w += G(c, w, P, "sharegroup");
w += G(c, w, P, "username");
w += G(c, w, P, "password");
w += G(c, w, P, "extra");
w += G(c, w, P, "shareautoaccept");
P.shareafids = {};
for (var ga = [], w = w + G(c, w, ga, "numafids"), ha = 0; ha < ga.numafids; ha++) V = [], w += G(c, w, V, "afid"), w += G(c, w, V, "value"), P.shareafids[V.afid] = V.value;
u.push(P)
}
} else if ("SHAP" == P) {
if (s) {
w = d + 8;
P = [];
for (w += G(c, w, P, "aid"); w < d + ba + 8;) V = [], w += G(c, w, V, "name"), w += G(c, w, V, "value"), P[V.name] = V.value;
s.push(P)
}
} else if ("FFCF" == P && "error" !=
E) p && (w = d + 8, V = [], w += G(c, w, V, "cfid"), P = parseInt(U.cfid), P > z.maxid && (z.maxid = P), w += G(c, w, V, "text"), w += G(c, w, V, "value"), w += G(c, w, V, "alttext"), p[M].custom_fields.push(V));
else if ("EQDN" == P) r && (w = d + 8, V = [], w += G(c, w, V, "edid"), w += G(c, w, V, "domain"), V.domain = La.hex2url(V.domain), "undefined" == typeof r[V.edid] && (r[V.edid] = []), r[V.edid][r[V.edid].length] = V.domain, r[V.domain] = V.edid);
else if ("URUL" == P) ia && (w = d + 8, V = [], w += G(c, w, V, "url"), w += G(c, w, V, "exacthost"), w < d + ba + 8 ? w += G(c, w, V, "exactport") : V.exactport = "0", V.url =
La.hex2url(V.url), ia.push(V));
else if ("GRPI" != P)
if ("NEVR" == P) t && (w = d + 8, V = [], w += G(c, w, V, "type"), w += G(c, w, V, "url"), V.url = La.hex2url(V.url), "0" == V.type ? t.neveraccounts.push(V.url) : "1" == V.type ? t.nevergenerates.push(V.url) : "2" == V.type ? t.neverformfills.push(V.url) : "3" == V.type ? t.neverautologins.push(V.url) : "6" == V.type ? t.nevershowicons.push(V.url) : "10000" == V.type ? t.onlyaccounts.push(V.url) : "10001" == V.type ? t.onlygenerates.push(V.url) : "10002" == V.type ? t.onlyformfills.push(V.url) : "10003" == V.type ? t.onlyautologins.push(V.url) :
"10006" == V.type && t.onlyshowicons.push(V.url));
else if (("ACFL" == P || "ACOF" == P) && "error" != E) {
if (A && (w = d + 8, V = [], V.otherfield = "ACOF" == P, w += G(c, w, V, "name"), V.name = La._utf8_decode(V.name), w += G(c, w, V, "type"), w += G(c, w, V, "value"), "select-one" == V.type && (V.value = La._utf8_decode(V.value)), w += G(c, w, V, "checked"), V.checked = "1" == V.checked, w += G(c, w, V, "formname"), V.formname = La._utf8_decode(V.formname), w < d + ba + 8 && (w += G(c, w, V, "urid"), P = parseInt(V.urid), P > z.maxid && (z.maxid = P)), w < d + ba + 8 && (w += G(c, w, V, "otherlogin")), w < d + ba +
8 && (w += G(c, w, V, "url")), 0 <= W && W < h.length)) {
if ("undefined" != typeof xj && xj && ("undefined" == typeof h[W].captcha_id || "" == h[W].captcha_id) && "text" == V.type && xj.exec(V.name)) h[W].captcha_id = V.name;
h[W].save_all = V.otherfield && 0 == h[W].username.length && 0 == h[W].password.length;
h[W].fields.push(V)
}
} else if ("PREM" == P) ai = xe(c, d + 8, d + 8 + ba);
else if ("TATE" == P) se = xe(c, d + 8, d + 8 + ba);
else if ("WOTE" == P) yj = xe(c, d + 8, d + 8 + ba);
else if ("FETE" == P) Oe = xe(c, d + 8, d + 8 + ba);
else if ("ENCU" == P) J = xe(c, d + 8, d + 8 + ba);
else if ("CBCU" == P) uj = "1" ==
xe(c, d + 8, d + 8 + ba);
else if ("MXID" == P) w = parseInt(xe(c, d + 8, d + 8 + ba)), w > z.maxid && (z.maxid = w);
else if ("ATVR" == P) w = parseInt(xe(c, d + 8, d + 8 + ba)), H || (H = []), H.attachversion = w;
else if ("SHAR" == P) {
w = d + 8;
P = "undefined" != typeof B && null != B && "" != B;
if (null != D)
if (V = [], w += G(c, w, V, "id"), w += G(c, w, V, "sharekey"), w += G(c, w, V, "sharename"), w += G(c, w, V, "readonly"), w += G(c, w, V, "give"), w < d + ba + 8 ? w += G(c, w, V, "sharekeyaes") : V.sharekeyaes = "", w < d + ba + 8 ? w += G(c, w, V, "associative") : V.associative = "0", P || "" != V.sharekeyaes) {
w = null;
try {
null == w && "" !=
V.sharekeyaes && (w = Ac(V.sharekeyaes, !0));
if (null == w || "" == w) {
var ja = "undefined" != typeof localStorage && "function" == typeof SHA256 && ("undefined" != typeof Cj || "undefined" != typeof pd);
if (ja) try {
var ka = localStorage.getItem(SHA256(J + V.sharekey));
null != ka && (w = Ya(ka), "" == w && (w = null), null != w && "" != w && "function" == typeof Ha && (V.sharekeyaes = ti(w, !0), qd += "&shareid" + Ye + "=" + encodeURIComponent(V.id), qd += "&sharekey" + Ye + "=" + encodeURIComponent(V.sharekey), qd += "&sharekeyaes" + Ye + "=" + encodeURIComponent(Ha(V.sharekeyaes)), Ye++))
} catch (la) {
w =
null
}
}
if ((null == w || "" == w) && P) {
"function" == typeof Xh && ma() && "function" == typeof Z.xCryptoRSADecrypt && (w = La.hex2bin(Z.xCryptoRSADecrypt(B, V.sharekey)));
null == w && "function" == typeof have_nplastpass && (have_nplastpass() && "function" == typeof g_nplastpass.xCryptoRSADecrypt) && (w = La.hex2bin(g_nplastpass.xCryptoRSADecrypt(B, V.sharekey)));
if (null == w || "" == w) {
var na = new ve,
pa;
a: {
for (var P = na, ga = B, oa = fi.decode(ga), oa = wb.decode(oa).toPrettyString(), oa = -1 != oa.indexOf("<br>") ? oa.split(/<br>/) : oa.split(/\n/), ha = !1, qa =
0, ua = [null, "n", "e", "d", "p", "q", "dp", "dq", "c"], sa = {}, wa = 0; wa < oa.length; wa++) {
var fa = oa[wa];
if (-1 != fa.indexOf("STRING")) ha = !0;
else if (ha && -1 != fa.indexOf("INTEGER")) {
if (0 < qa) {
var xa = fa.indexOf("@");
if (-1 == xa) {
pa = !1;
break a
}
fa = fa.substring(xa + 1);
fa = fa.split(/\+/);
if (3 != fa.length) {
pa = !1;
break a
}
var xa = 2 * fa[0],
aa = 2 * fa[1],
fa = ga.substring(xa + aa, xa + aa + 2 * fa[2]);
sa[ua[qa]] = fa
}
qa++
}
}
pa = ha && qa == ua.length ? (P.setPrivateEx(sa.n, sa.e, sa.d, sa.p, sa.q, sa.dp, sa.dq, sa.c), !0) : !1
}
pa && (w = na.decrypt(V.sharekey))
}
null != w &&
"" != w && "function" == typeof Ha && (V.sharekeyaes = ti(w, !0), qd += "&shareid" + Ye + "=" + encodeURIComponent(V.id), qd += "&sharekey" + Ye + "=" + encodeURIComponent(V.sharekey), qd += "&sharekeyaes" + Ye + "=" + encodeURIComponent(Ha(V.sharekeyaes)), Ye++)
}
ja && null != w && "" != w && localStorage.setItem(SHA256(J + V.sharekey), da(w));
if (null != w && "" != w) {
var ya = La.hex2bin(w),
X = Ac(V.sharename, 0, ya, w);
V.key = ya;
V.decsharename = X;
T = [];
T.aid = V.id;
T.name = "";
T.group = X;
T.url = La.url2hex("http://group");
T.sharefolderid = V.id;
T.fields = [];
T.otherfields = [];
h.push(T);
K = ya;
v = w;
E = V;
D.push(V)
} else E = "error"
} catch (za) {
"undefined" != typeof console && "function" == typeof console.error && console.error(za), E = "error"
}
} else E = "error";
else E = "error";
"error" == E && (W = -1);
if (("undefined" == typeof B || null == B || "" == B) && null != D && 0 == D.length) V = [], V.id = 0, D.push(V)
} else if ("MSFI" == P) {
w = d + 8;
if ("undefined" == typeof va) var va = 0;
thismsfid = [];
w += G(c, w, thismsfid, "shareid");
w += G(c, w, thismsfid, "uid");
w += G(c, w, thismsfid, "key");
foundmsfi = !0;
msfids[va] = thismsfid;
va++
} else if ("ENDM" == P) ca = !0;
else if ("ATTA" == P) L && (w = d + 8, V = [], w += G(c, w, V, "id"), w += G(c, w, V, "parent"), w += G(c, w, V, "mimetype"), V.mimetype = V.mimetype.toLowerCase(), L.push(V));
else if ("AACT" == P && "error" != E) Y && (w = d + 8, V = [], w += G(c, w, V, "appaid"), w += G(c, w, V, "appname"), w += G(c, w, V, "extra"), w += G(c, w, V, "encname"), V.name = Ac(V.encname, 1, K, v), w += G(c, w, V, "encgroup"), V.group = Ac(V.encgroup, 1, K, v), K != Sb && (V.group = "" == V.group ? E.decsharename : E.decsharename + "\\" + V.group), w += G(c, w, V, "last_touch"), w += G(c, w, V, "fiid"), w += G(c, w, V, "pwprotect"), V.pwprotect =
"1" == V.pwprotect, w += G(c, w, V, "fav"), w += G(c, w, V, "script"), w += G(c, w, V, "wintitle"), w += G(c, w, V, "wininfo"), w += G(c, w, V, "exeversion"), w += G(c, w, V, "autologin"), w += G(c, w, V, "warnversion"), V.warnversion = "1" == V.warnversion, w += G(c, w, V, "exehash"), V.fields = [], V.logins = [], "undefined" != typeof E && null != E && K != Sb && (V.sharefolderid = E.id, 0 == E.give && (V.sharedfromaid = 1)), Y.push(V));
else if ("AACF" == P && "error" != E) Y && 0 < Y.length && (w = d + 8, V = [], w += G(c, w, V, "id"), w += G(c, w, V, "value"), w += G(c, w, V, "type"), Y[Y.length - 1].fields.push(V));
else if ("ENTU" == P) dh = xe(c, d + 8, d + 8 + ba);
else if ("PSHD" == P || "PSHE" == P) O && (w = d + 8, V = [], w += G(c, w, V, "ppsid"), w += G(c, w, V, "data"), O.push(V));
else if (ox && !P.match(/^[A-Z]{4}$/)) return;
d += ba + 8;
if (-1 != f && Q >= f) {
Qb(function() {
Wn(c, e, f, d, g, h, l, n, p, q, r, t, A, y, J, u, s, z, ia, C, F, B, D, K, v, E, Y, L, H, O)
}, 0);
return
}
}
0 < Ye && "undefined" != typeof LP && "function" == typeof LP.lpMakeRequest && "string" == typeof LP.lp_base && LP.lpMakeRequest(LP.lp_base + "shared_folder_keys_upload.php", qd);
if (g) return g(h, l, n, p, q, r, t, ca, c, y, J, u, s, z, ia, C, F, D,
Y, L, H, O)
}
function xe(c, e, f) {
return (" " + c.substring(e, f)).substring(1)
}
function G(c, e, f, d, g, h, l) {
var n = mh(c.substring(e, e + 4));
f[d] = xe(c, e + 4, e + 4 + n);
g && (f[d] = Ac(f[d], 1, h, l));
return 4 + n
}
function Ac(c, e, f, d) {
if ("undefined" == typeof c || null == c || 0 == c.length) return "";
if ("undefined" != typeof f && f != Sb) return "undefined" == typeof d && (d = La.bin2hex(f)), pt(c, e, f, d);
"undefined" != typeof Sb && qt != Sb && (Tl = [], qt = Sb);
"undefined" == typeof Tl[c] && (Tl[c] = pt(c, e));
return Tl[c]
}
function pt(c, e, f, d) {
if ("undefined" == typeof c || null ==
c || 0 == c.length) return "";
if ("string" != typeof Sb || 0 == Sb.length) {
if ("undefined" == typeof ischrome || P) Cb("No encryption key found, forcing logout!"), window.location.href = "../logout.php?nk_dec=1&mobile=1";
return ""
}
var g = Sb;
if ("undefined" == typeof Ub || null == Ub || 0 == Ub.length) Ub = La.bin2hex(Sb);
var h = Ub;
"undefined" != typeof f && null != f && ("undefined" != typeof d && null != d) && (g = f, h = d);
try {
var l, n;
if (e ? "!" == c.charAt(0) && 1 == c.length % 16 && 32 < c.length : "!" == c.charAt(0)) {
if ("function" == typeof Xh && ma() && "function" == typeof Z.decryptcbc) return e &&
(c = "!" + btoa(c.substring(1, 17)) + "|" + btoa(c.substring(17))), Z.decryptcbc(h, c);
if ("function" == typeof have_nplastpass && have_nplastpass() && "function" == typeof g_nplastpass.decryptcbc) return e && (c = "!" + btoa(c.substring(1, 17)) + "|" + btoa(c.substring(17))), g_nplastpass.decryptcbc(h, c);
if ("undefined" != typeof document && document.getElementById("lpplugin") && "function" == typeof document.getElementById("lpplugin").decrypt) return e && (c = "!" + btoa(c.substring(1, 17)) + "|" + btoa(c.substring(17))), document.getElementById("lpplugin").decrypt(h,
c);
var p = La.StringToKeyIv(g, 256);
f = [];
for (q = 0; q < p.key.length; ++q) f[q] = p.key[q];
p = [];
if (e) {
for (var q = 1; 17 > q; ++q) p[q - 1] = c.charCodeAt(q);
l = [];
for (q = 17; q < c.length; q++) l[q - 17] = c.charCodeAt(q)
} else {
var r = c.indexOf("|");
if (-1 != r) {
for (var t = atob(c.substring(1, r)), q = 0; 16 > q; ++q) p[q] = t.charCodeAt(q);
l = c.substring(r + 1)
}
}
return La.Decrypt({
key: f,
iv: p,
data: l,
b64: !e,
bits: 256,
mode: "cbc"
})
}
if ("function" == typeof Xh && ma()) return Z.decrypt(h, e ? btoa(c) : c);
if ("function" == typeof have_nplastpass && have_nplastpass() && "function" ==
typeof g_nplastpass.decrypt) return g_nplastpass.decrypt(h, e ? btoa(c) : c);
if ("undefined" != typeof document && document.getElementById("lpplugin") && "function" == typeof document.getElementById("lpplugin").decrypt) return document.getElementById("lpplugin").decrypt(h, e ? btoa(c) : c);
if (e) {
l = [];
for (q = 0; q < c.length; q++) l[q] = c.charCodeAt(q);
n = !1
} else l = c, n = !0;
return La.Decrypt({
pass: g,
data: l,
b64: n,
mode: "ecb",
bits: 256
})
} catch (A) {
return "ERROR: AES mobile bug 2"
}
}
function mh(c) {
for (var e = 0, f = 0, d = 3; 0 <= d; d--) var g = c.charCodeAt(d),
e = e + (g << f), f = f + 8;
return e
}
function dl(c, e) {
e || (e = "LPAV");
var f = -1;
c && 0 == c.indexOf(e) && (f = mh(c.substring(4, 8)), f = xe(c, 8, 8 + f));
return f
}
function ti(c, e, f) {
return "undefined" == typeof c || null == c || 0 == c.length ? "" : px(c, e, f ? f : Sb)
}
function px(c, e, f) {
f = f ? f : Sb;
if ("undefined" == typeof c || null == c || 0 == c.length || "string" != typeof f || 0 == f.length) return "";
try {
if (uj) {
if ("function" == typeof Xh && ma() && "function" == typeof Z.encryptcbc) {
c = Z.encryptcbc(rb(f), c);
if (e) {
var d = c.indexOf("|"); - 1 != d && (c = "!" + atob(c.substring(1, d)) +
atob(c.substring(d + 1)))
}
return c
}
if ("function" == typeof have_nplastpass && have_nplastpass() && "function" == typeof g_nplastpass.encryptcbc) return c = g_nplastpass.encryptcbc(La.bin2hex(f), c), e && (d = c.indexOf("|"), -1 != d && (c = "!" + atob(c.substring(1, d)) + atob(c.substring(d + 1)))), c;
for (var g = La.StringToKeyIv(f, 256), h = [], l = 0; l < g.key.length; ++l) h[l] = g.key[l];
var n = La.CreateIV(16);
c = La.Encrypt({
key: h,
iv: n.arr,
data: c,
b64: !e,
bits: 256,
mode: "cbc"
});
h = "!";
if (e) {
h += n.str;
for (l = 0; l < c.length; l++) {
var p = c[l];
0 > p && (p += 256);
h += String.fromCharCode(p)
}
} else h += btoa(n.str) + "|" + c;
return h
}
g = c;
if ("function" == typeof Xh && ma()) return h = Z.encrypt(rb(f), c), e ? atob(h) : h;
if ("function" == typeof have_nplastpass && have_nplastpass() && "function" == typeof g_nplastpass.encrypt) return h = g_nplastpass.encrypt(La.bin2hex(f), c), e ? atob(h) : h;
c = !e;
h = La.Encrypt({
pass: f,
data: g,
b64: c,
mode: "ecb",
bits: 256
});
if (c) return h;
c = "";
for (l = 0; l < h.length; l++) p = h[l], 0 > p && (p += 256), c += String.fromCharCode(p);
return c
} catch (q) {
return "ERROR: AES mobile bug"
}
}
function D(c) {
null ==
c && (c = "");
"number" == typeof c && (c = "" + c);
for (var e = c.length, f = "", d = 1; 4 >= d; d++) f = String.fromCharCode(e % 256) + f, e >>= 8;
return f + c
}
function Xn(c, e) {
var f;
f = "" + D(c.aid);
var d = "undefined" != typeof c.encname && Ac(c.encname, !0, e) == c.name ? c.encname : ti(c.name, !0, e);
f += D(d);
d = "undefined" != typeof c.encgroup && Ac(c.encgroup, !0, e) == c.group ? c.encgroup : ti(c.group, !0, e);
f += D(d);
f += D("undefined" != typeof lp_no_url_bin2hex && lp_no_url_bin2hex ? c.url : La.url2hex(c.url));
f += D(c.extra);
f += D(c.fav);
f += D(c.sharedfromaid);
f += D(c.username);
f += D(c.password);
f += D(c.pwprotect ? "1" : "0");
f += D(c.genpw ? "1" : "0");
f += D(c.sn ? "1" : "0");
f += D(c.last_touch);
f += D(c.autologin ? "1" : "0");
f += D(c.never_autofill ? "1" : "0");
f += D(c.realm_data);
f += D(c.fiid);
f += D(c.custom_js);
"undefined" == typeof c.submit_id && (c.submit_id = "");
f += D(c.submit_id);
"undefined" == typeof c.captcha_id && (c.captcha_id = "");
f += D(c.captcha_id);
"undefined" == typeof c.urid && (c.urid = "0");
d = parseInt(c.urid);
d > Lc && (Lc = d);
f += D(c.urid);
"undefined" == typeof c.basic_auth && (c.basic_auth = "0");
f += D(c.basic_auth);
"undefined" == typeof c.method && (c.method = "");
f += D(c.method);
"undefined" == typeof c.action && (c.action = "");
f += D(c.action);
"undefined" == typeof c.groupid && (c.groupid = "");
f += D(c.groupid);
"undefined" == typeof c.deleted && (c.deleted = "");
f += D(c.deleted);
"undefined" == typeof c.attachkey && (c.attachkey = "");
f += D(c.attachkey);
"undefined" == typeof c.attachpresent && (c.attachpresent = "");
f += D(c.attachpresent);
"undefined" == typeof c.individualshare && (c.individualshare = !1);
f += D(c.individualshare ? "1" : "0");
"undefined" == typeof c.notetype &&
(c.notetype = "");
f += D(c.notetype);
"undefined" == typeof c.noalert && (c.noalert = "");
f += D(c.noalert);
f = "ACCT" + D(f);
if ("undefined" != typeof c.fields)
for (var g = 0; g < c.fields.length; g++) {
var h = c.fields[g],
l = D(La._utf8_encode(h.name)),
l = l + D(h.type),
d = h.value;
"select-one" == h.type && (d = La._utf8_encode(d));
l += D(d);
l += D(h.checked ? "1" : "0");
l += D(La._utf8_encode(h.formname));
"undefined" == typeof h.urid && (h.urid = "0");
d = parseInt(h.urid);
d > Lc && (Lc = d);
l += D(h.urid);
"undefined" == typeof h.otherlogin && (h.otherlogin = "0");
l += D(h.otherlogin);
"undefined" == typeof h.url && (h.url = "");
l += D(h.url);
f += (h.otherfield ? "ACOF" : "ACFL") + D(l)
}
return f
}
function as(c, e) {
var f = "",
d;
d = "" + D(c.appaid);
d += D(La.url2hex(c.appname));
d += D(c.extra);
var g = "undefined" != typeof c.encname && Ac(c.encname, !0, e) == c.name ? c.encname : ti(c.name, !0, e);
d += D(g);
g = "undefined" != typeof c.encgroup && Ac(c.encgroup, !0, e) == c.group ? c.encgroup : ti(c.group, !0, e);
d += D(g);
d += D(c.last_touch);
d += D(c.fiid);
d += D(c.pwprotect ? "1" : "0");
d += D(c.fav);
d += D(c.script);
d += D(c.wintitle);
d += D(c.wininfo);
d +=
D(c.exeversion);
d += D(c.autologin);
d += D(c.warnversion ? "1" : "0");
d += D(c.exehash);
f += "AACT" + D(d);
for (g = 0; g < c.fields.length; g++) d = "", d += D(c.fields[g].id), d += D(c.fields[g].value), d += D(c.fields[g].type), f += "AACF" + D(d);
return f
}
function $r(c) {
var e = "",
f;
f = "" + D(c.ffid);
f += D(c.profiletype);
f += D(c.profilename);
f += D(c.profilelanguage);
f += D(c.firstname);
f += D(c.middlename);
f += D(c.lastname);
f += D(c.email);
f += D(c.company);
f += D(c.ssn);
f += D(c.birthday);
f += D(c.address1);
f += D(c.address2);
f += D(c.city);
f += D(c.state);
f +=
D(c.state_name);
f += D(c.zip);
f += D(c.country);
f += D(c.country_cc3l);
f += D(c.country_name);
f += D(c.mobilephone);
f += D(c.mobilephone3lcc);
f += D(c.mobileext);
f += D(c.evephone);
f += D(c.evephone3lcc);
f += D(c.eveext);
f += D(c.phone);
f += D(c.phone3lcc);
f += D(c.phoneext);
f += D(c.fax);
f += D(c.fax3lcc);
f += D(c.faxext);
f += D(c.ccnum);
f += D(c.ccexp);
f += D(c.cccsc);
f += D(c.username);
f += D(c.address3);
f += D(c.title);
f += D(c.gender);
f += D(c.driverlicensenum);
f += D(c.taxid);
f += D(c.pwprotect ? "1" : "0");
f += D(c.bankname);
f += D(c.bankacctnum);
f +=
D(c.bankroutingnum);
f += D(c.timezone);
f += D(c.county);
f += D(c.ccstart);
f += D(c.ccname);
f += D(c.ccissuenum);
f += D(c.notes);
f += D(c.lastname2);
f += D(c.mobileemail);
f += D(c.firstname2);
f += D(c.firstname3);
f += D(c.lastname3);
f += D(c.creditmon ? "1" : "0");
for (var e = e + ("LPFF" + D(f)), d = c.custom_fields.length, g = 0; g < d; g++) {
var h = c.custom_fields[g];
f = "";
var l = parseInt(c.cfid);
l > Lc && (Lc = l);
f += D(h.cfid);
f += D(h.text);
f += D(h.value);
f += D(h.alttext);
e += "FFCF" + D(f)
}
return e
}
function rt(c, e, f) {
var d = 0,
g, h = c;
if ("password" == e) return 0;
var l = e.toLowerCase(),
n = c.toLowerCase();
if (e == c) return 0;
if (l == n) return 5 < e.length ? 5 : e.length;
if ("" != n && "" != l) {
if (-1 != c.indexOf(e)) return 5 < e.length ? 5 : e.length;
if (-1 != n.indexOf(l)) return 10 < e.length ? 10 : e.length;
if (-1 != l.indexOf(n)) {
c = c.replace("*", "\\*", "g");
c = c.replace("+", "\\+", "g");
l = 0;
try {
"undefined" != typeof g_challengeregexcache[c] ? g = g_challengeregexcache[c] : (g = RegExp(c, "gi"), g_challengeregexcache[c] = g)
} catch (p) {
l = 1
}
if (l) try {
c = c.replace("?", "\\?", "g"), c = c.replace(")", "\\)", "g"), c = c.replace("(",
"\\(", "g"), g = RegExp(c, "gi")
} catch (q) {
f && Cb("An error occurred.\nPlease send a screenshot of this error to support@lastpass.com\n\nError=3 uorig=" + h + " u=" + c), g = RegExp("", "gi")
}
l = e.replace(g, "");
l != e && (e = l)
}
}
h = c = null;
e.match(/[0135\$\@]/) && (c = e.replace(/5/g, "s"), c = c.replace(/\$/g, "s"), c = c.replace(/3/g, "e"), c = c.replace(/0/g, "o"), c = c.replace(/\@/g, "a"), 0 < c.indexOf("1") && (h = c.replace(/1/g, "i")), c = c.replace(/1/g, "l"));
if ("undefined" != typeof g_aDictionary) {
var r, n = e.length,
t;
for (r in g_aDictionary)
if (g_aDictionary.hasOwnProperty(r) &&
(t = r.length, 3 <= t && n >= t)) {
try {
"undefined" != typeof g_challengeregexcache[r] ? g = g_challengeregexcache[r] : (g = RegExp(r, "gi"), g_challengeregexcache[r] = g)
} catch (A) {
f && Cb("An error occurred.\nPlease send a screenshot of this error to support@lastpass.com\n\nError=2 i=" + r), g = RegExp("", "gi")
}
l = e.replace(g, r.charAt(0));
if (l != e) {
++Bj;
e = l;
break
}
if (4 <= t) {
if (c && (l = c.replace(g, r.charAt(0)), l != c)) {
++Bj;
e = l;
break
}
if (h && (l = h.replace(g, r.charAt(0)), l != h)) {
++Bj;
e = l;
break
}
}
}
}
f = e.length;
n = l = h = c = g = 0;
t = [];
var y;
for (r = 0; r <
f; ++r) y = e.charAt(r), "undefined" == typeof t[y] && (t[y] = 1, ++g), "undefined" != typeof qx[y] && ++c, "undefined" != typeof rx[y] && ++h, "undefined" != typeof sx[y] && ++l, "undefined" != typeof tx[y] && ++n;
0 < c && 0 < h && 0 < l && 0 < n ? d = 6 <= g && 8 <= f ? 95 + g : 4 < g && 6 <= f ? 70 + g : 2 < g && 4 <= f ? 50 + g : g : 0 < c && 0 < h && 0 < l ? d = 6 <= g && 8 <= f ? 85 + g : 4 < g && 6 <= f ? 60 + g : 2 < g && 4 <= f ? 40 + g : g : 0 < c && 0 < h && 0 < n || 0 < c && 0 < l && 0 < n || 0 < h && 0 < l && 0 < n ? d = 6 <= g && 8 <= f ? 90 + g : 4 < g && 6 <= f ? 65 + g : 2 < g && 4 <= f ? 45 + g : g : 0 < c && 0 < h ? d = 6 <= g && 8 <= f ? 85 + g : 4 < g && 6 <= f ? 60 + g : 2 < g && 4 <= f ? 40 + g : g : 0 < c && 0 < l || 0 < h && 0 < l ? d = 6 <= g && 8 <= f ?
75 + g : 4 < g && 6 <= f ? 50 + g : 2 < g && 4 <= f ? 30 + g : g : 0 < c && 0 < n || 0 < h && 0 < n || 0 < l && 0 < n ? d = 6 <= g && 8 <= f ? 75 + g : 4 < g && 6 <= f ? 50 + g : 2 < g && 4 <= f ? 30 + g : g : 0 < c || 0 < h || 0 < l ? d = 6 <= g && 8 <= f ? 65 + g : 4 < g && 6 <= f ? 40 + g : 2 < g && 4 <= f ? 20 + g : g : 0 < n && (d = 6 <= g && 8 <= f ? 85 + g : 4 < g && 6 <= f ? 70 + g : 2 < g && 4 <= f ? 50 + g : g);
d -= 0;
0 > d ? d = 0 : 100 < d && (d = 100);
"" != e && 10 > d && (d = 5 < f ? 5 : f);
return d
}
function jh(c) {
var e = "undefined" == typeof c ? 0 : c,
f = 0;
"undefined" != typeof g_aSites[e] && "undefined" != typeof g_aSites[e].sfname && (d = g_aSites[e].sfname);
"undefined" == typeof d && (d = "nonshared");
"undefined" == typeof ih &&
(ih = []);
"undefined" == typeof ue && (ue = []);
"undefined" == typeof Ed && (Ed = []);
"undefined" == typeof sharedweak && (sharedweak = []);
"undefined" == typeof sharedavgpasswordlength && (sharedavgpasswordlength = []);
"undefined" == typeof SharedPasswords && (SharedPasswords = []);
"undefined" == typeof shareddictionary && (shareddictionary = []);
"undefined" == typeof sharedcountscore && (sharedcountscore = []);
"undefined" == typeof NonSharedAccounts && (NonSharedAccounts = []);
"undefined" == typeof g_SFNames && (g_SFNames = []);
"undefined" == typeof AllSFNames &&
(AllSFNames = []);
"undefined" == typeof ih[d] && (ih[d] = 0);
ih[d]++;
for ("undefined" == typeof c && (g_challengeregexcache = []); e < g_numsites; ++e) {
"function" == typeof reportprogress && reportprogress(e, g_numsites);
var d = "nonshared";
"undefined" != typeof g_aSites[e].sfname && (d = g_aSites[e].sfname);
c = g_aSites[e].usernamedec;
var g = g_aSites[e].passworddec,
h = g_aSites[e].passworddecfix,
l = g_aSites[e].domain2lvl,
n = "undefined" != typeof g_aSites[e].realdomain2lvl ? g_aSites[e].realdomain2lvl : l;
"undefined" == typeof g_numblanksites &&
(g_numblanksites = 0);
"undefined" == typeof Ed[d] && (Ed[d] = 0);
"undefined" == typeof ue[d] && (ue[d] = 0);
n = "function" == typeof yo ? yo(n) : 1;
g_aSites[e].challenge_score = 0 < g.length && g.length < n ? 0 : rt(c, g, !1);
if ("" == h) "nonshared" == d && g_numblanksites++, Ed[d]++;
else {
"nonshared" == d && (g_avgpasswordlength += g.length);
"undefined" == typeof sharedavgpasswordlength[d] && (sharedavgpasswordlength[d] = 0);
sharedavgpasswordlength[d] += g.length;
"undefined" != typeof g_aDictionary && "undefined" != typeof g_aDictionary[h] && ("nonshared" == d && g_numdictionary++,
"undefined" == typeof shareddictionary[d] && (shareddictionary[d] = 0), shareddictionary[d]++);
"undefined" == typeof SharedPasswords[d] && (SharedPasswords[d] = []);
if ("nonshared" == d) {
"undefined" == typeof g_aPasswords[h] && (g_aPasswords[h] = []);
if ("undefined" == typeof g_aPasswords[h][l] || "function" == typeof g_aPasswords[h][l] && "undefined" == typeof g_aPasswords[h][l].push) g_aPasswords[h][l] = [];
try {
g_aPasswords[h][l].push(e)
} catch (p) {
h = g = c = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
return
}
}
"undefined" == typeof g_allPasswords && (g_allPasswords = []);
"undefined" == typeof g_allPasswords[h] && (g_allPasswords[h] = []);
if ("undefined" == typeof g_allPasswords[h][l] || "function" == typeof g_allPasswords[h][l] && "undefined" == typeof g_allPasswords[h][l].push) g_allPasswords[h][l] = [];
try {
g_allPasswords[h][l].push(e)
} catch (q) {
h = g = c = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
return
}
if ("nonshared" != d) {
"undefined" == typeof SharedPasswords[d][h] && (SharedPasswords[d][h] = []);
if ("undefined" == typeof SharedPasswords[d][h][l] || "function" == typeof SharedPasswords[d][h][l] && "undefined" == typeof SharedPasswords[d][h][l].push) SharedPasswords[d][h][l] = [];
try {
SharedPasswords[d][h][l].push(e)
} catch (r) {
h = g = c = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
return
}
}
if (++f > ux) {
d = null;
try {
"function" == typeof Qb ? d = Qb : "undefined" != typeof LP && "undefined" != typeof LP.mostRecent && "undefined" != typeof LP.mostRecent().setTimeout && (d = LP.mostRecent().setTimeout)
} catch (t) {}
null != d ? d(function() {
jh(e + 1)
}, 0) : jh(e + 1);
h = g = c = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
return
}
}
h = g = c = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
}
g_challengeregexcache = [];
g_avgpasswordlength = g_numsites == g_numblanksites ? 0 : Math.round(10 * g_avgpasswordlength / (g_numsites - g_numblanksites)) / 10;
var A, y;
for (y in g_aPasswords)
if (g_aPasswords.hasOwnProperty(y)) {
var f =
g_aPasswords[y],
h = 0,
J;
for (J in f) f.hasOwnProperty(J) && ++h;
if (1 == h || "" == y) delete g_aPasswords[y];
else {
++g_numduppasswords;
g = 0;
for (J in f) f.hasOwnProperty(J) && (g += g_aPasswords[y][J].length);
g_numdupsites += g;
for (J in f)
if (f.hasOwnProperty(J))
for (A in c = g_aPasswords[y][J], c) e = g_aPasswords[y][J][A], g_aSites[e].challenge_numduplicates = g, g_aSites[e].challenge_duplicatescore = g_aSites[e].challenge_score / h
}
}
y = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
"undefined" == typeof g_allPasswords && (g_allPasswords = {}, eg = g_numsites);
for (y in g_allPasswords)
if (g_allPasswords.hasOwnProperty(y)) {
f = g_allPasswords[y];
h = 0;
for (J in f) f.hasOwnProperty(J) && ++h;
if (1 == h || "" == y) delete g_allPasswords[y];
else {
"undefined" == typeof ei && (ei = 0);
++ei;
g = 0;
"undefined" == typeof eg && (eg = 0);
for (J in f) f.hasOwnProperty(J) && (g += g_allPasswords[y][J].length);
eg += g;
for (J in f)
if (f.hasOwnProperty(J))
for (A in c = g_allPasswords[y][J], c) e = g_allPasswords[y][J][A]
}
}
y = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
for (e = 0; e < g_aSites.length; ++e) "undefined" != typeof g_aSites[e].sfname && (d = g_aSites[e].sfname), "undefined" == typeof g_aSites[e].sfname && (d = "nonshared"), "undefined" == typeof sharedweak[d] && (sharedweak[d] = 0), g_aSites[e].challenge_scorefinal = g_aSites[e].challenge_score, "undefined" != typeof g_aSites[e].challenge_dictionary && "undefined" != typeof g_aSites[e].challenge_duplicatescore ? (g_aSites[e].challenge_scorefinal = 0.5 * g_aSites[e].challenge_duplicatescore, "nonshared" == d && ++g_numweak, "nonshared" != d && ++sharedweak[d]) :
"undefined" != typeof g_aSites[e].challenge_dictionary ? (g_aSites[e].challenge_scorefinal *= 0.5, "nonshared" == d && ++g_numweak, "nonshared" != d && ++sharedweak[d]) : "undefined" != typeof g_aSites[e].challenge_duplicatescore ? (g_aSites[e].challenge_scorefinal = g_aSites[e].challenge_duplicatescore, "undefined" == typeof g_aSites[e].sfname && (g_strengthscore += g_aSites[e].challenge_duplicatescore), "undefined" != typeof g_aSites[e].sfname && (ue[d] += g_aSites[e].challenge_duplicatescore)) : (g_aSites[e].challenge_score < Qo && "" !=
g_aSites[e].passworddecfix && ("nonshared" == d && ++g_numweak, "nonshared" != d && ++sharedweak[d]), "nonshared" == d && (g_strengthscore += g_aSites[e].challenge_score, g_avgstrength = g_numsites == g_numblanksites ? 0 : Math.round(10 * g_strengthscore / (g_numsites - g_numblanksites)) / 10, 0 != NonSharedAccounts.length && (g_avgstrength = NonSharedAccounts.length == g_numblanksites ? 0 : Math.round(10 * g_strengthscore / (NonSharedAccounts.length - g_numblanksites)) / 10)), "nonshared" != d && (ue[d] += g_aSites[e].challenge_score, sharedavgstrength[d] = ih[d] ==
Ed[d] ? 0 : Math.round(10 * ue[d] / (SharedAccounts[d].length - Ed[d])) / 10), "undefined" == typeof sharedcountscore[d] && (sharedcountscore[d] = 0), 70 <= g_aSites[e].challenge_score && "undefined" == typeof g_aSites[e].sfname && (g_countscore += 2), 70 <= g_aSites[e].challenge_score && "undefined" != typeof g_aSites[e].sfname && (sharedcountscore[d] += 2));
100 < g_countscore && (g_countscore = 100);
100 < sharedcountscore[d] && (sharedcountscore[d] = 100);
"undefined" != typeof NonSharedAccounts && 0 != NonSharedAccounts.length && (g_numsites = NonSharedAccounts.length);
0 < g_numsites - g_numblanksites && (g_totalscore = Math.round(10 * (0.8 * (g_strengthscore / (g_numsites - g_numblanksites)) + g_countscore / 10)) / 10);
for (e = 0; e < AllSFNames.length; e++) d = AllSFNames[e], "undefined" == typeof SharedAccounts[d] && (SharedAccounts[d] = []), "undefined" == typeof Ed[d] && (Ed[d] = 0), 0 < SharedAccounts[d].length - Ed[d] && (sharedtotalscore[d] = Math.round(10 * (0.8 * (ue[d] / (SharedAccounts[d].length - Ed[d])) + sharedcountscore[d] / 10)) / 10);
100 < g_totalscore && (g_totalscore = 100);
g_runtimems = (new Date).getTime() - g_runtimems;
d = Math.round(g_runtimems / 1E3);
"function" == typeof st && st(d)
}
function qs(c, e, f) {
var d = function(c) {
if (c && (c = c.split("\n"), e == c[0])) {
c = "NaN" != c[1] ? c[1] : null;
if (f) {
f(c);
return
}
return c
}
if (f) f(null);
else return null
};
if (f) Je(c + ".sch", null, d);
else return d(Je(c + ".sch"))
}
function rs(c, e, f) {
var d = function(d) {
if (null == d || "" == d || !1 == d) {
"undefined" == typeof LP || "undefined" == typeof LP.lpMakeRequest || (d = (new Date).getTime(), 2E3 > d - tt || (tt = d, LP.lpMakeRequest(LP.lp_base + "misc_challenge.php?getdic=1&lang=" + LP.en(c),
"", function(c) {
4 == c.readyState && 200 == c.status && (Rb("words.dic", c.responseText), e && e())
})));
if (f) {
f(null);
return
}
return null
}
d = d.split("\n");
for (var h = {}, l = 0; l < d.length - 1; l++) h[d[l]] = 1;
if (f) f(h);
else return h
};
if (f) Je("words.dic", null, d);
else return d(Je("words.dic"))
}
function ct(c, e) {
rs(Ka, function() {
ct(c, e)
}, function(f) {
f && (Wk = rt(c, e))
})
}
function ss(c) {
var e = [];
for (oa = 0; oa < g_numsites; ++oa) "undefined" == typeof c[g_aSites[oa].id] && (e[e.length] = g_aSites[oa]);
g_aSites = e;
g_numsites = g_aSites.length;
jh()
}
function st() {
var c = "string" == typeof Ec ? Ec : typeof Q ? Q : null,
e = "string" == typeof g_username_hash ? g_username_hash : typeof ha ? ha : null,
f = "undefined" != typeof g_local_accts_version ? g_local_accts_version : typeof vb ? vb : -1;
g_totalscore += Ol;
var d = {
totalscore: g_totalscore,
version: f,
numblanksites: g_numblanksites,
numduppasswords: g_numduppasswords,
numallduppasswords: ei,
numdupsites: g_numdupsites,
numalldupsites: eg,
numweak: g_numweak,
avgstrength: g_avgstrength,
multifactorscore: Ol,
countscore: g_countscore
}, g = 0,
h = "",
l;
for (l in g_aPasswords)
if (g_aPasswords.hasOwnProperty(l)) {
var n =
"",
p;
for (p in g_aPasswords[l])
if (g_aPasswords[l].hasOwnProperty(p)) {
var q = g_aPasswords[l][p],
r;
for (r in q) q.hasOwnProperty(r) && (n += g_aSites[q[r]].id + ",", h += g_aSites[q[r]].id + ",")
}
d["dupsites" + g] = n;
g++
}
l = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
g = 0;
h = "";
for (l in g_allPasswords)
if (g_allPasswords.hasOwnProperty(l)) {
n = "";
for (p in g_allPasswords[l])
if (g_allPasswords[l].hasOwnProperty(p))
for (r in q = g_allPasswords[l][p], q)
if (q.hasOwnProperty(r)) {
var t = SFNameToID[go[g_aSites[q[r]].id]];
"undefined" == t && (t = "");
n += t + ":" + g_aSites[q[r]].id + ",";
h += g_aSites[q[r]].id + ","
}
d["dupsites_global_" + g] = n;
g++
}
g = "";
l = [];
for (n = 0; n < g_aSites.length; n++) {
if ("undefined" != typeof g_aSites[n].challenge_scorefinal && ("undefined" == typeof g_aSites[n].sfname || "nonshared" == typeof g_aSites[n].sfname) &&
parseInt(g_aSites[n].challenge_scorefinal) < Qo) g += g_aSites[n].id + ":" + g_aSites[n].challenge_scorefinal.toFixed(2) + ",";
"undefined" != typeof g_aSites[n].challenge_scorefinal && "undefined" != typeof g_aSites[n].sfname && parseInt(g_aSites[n].challenge_scorefinal) < Qo && (r = g_aSites[n].sfname, "undefined" == typeof l[r] && (l[r] = ""), l[g_aSites[n].sfname] += g_aSites[n].id + ":" + g_aSites[n].challenge_scorefinal.toFixed(2) + ",")
}
d.weak = g;
q = [];
for (n = 0; n < AllSFNames.length; n++) r = AllSFNames[n], t = SFNameToID[r], q[n] = t, d[t + "_sfname"] =
r, d[t + "_totalscore"] = sharedtotalscore[r], d[t + "_numaccts"] = SharedAccounts[r].length, d[t + "_numblanksites"] = Ed[r], d[t + "_numweak"] = sharedweak[r], d[t + "_avgstrength"] = sharedavgstrength[r], d[t + "_countscore"] = sharedcountscore[r], d[t + "_weak"] = l[r];
d.SFIDs = q;
d.AllSFIDs = AllSFIDs;
d.SFScores = [];
d.SharedFolderList = AllSFNames;
d.weak_shared = l;
c = da(c);
h = da("," + h + "\n," + g);
"undefined" == typeof c && (c = "");
"undefined" == typeof h && (h = "");
Rb(e + ".sch", f + "\n" + g_totalscore + "\n" + c + "\n" + h);
if ("undefined" != typeof lpsendchallengescore &&
lpsendchallengescore) {
var A = mc.stringify(d),
y = "string" == typeof base_url ? base_url : LP.lp_base;
LP.lpMakeRequest(y + "poll_server.php", "challengescore=" + LP.en(A), null, null)
}
"undefined" != typeof pwndlistscan && pwndlistscan && LP.lpMakeRequest(y + "misc_challenge.php", "cmd=pwnedlist&auto=1" + LP.en(A), null, null);
for (n = 0; n < g_aSites.length; ++n) g_aSites[n].usernamedec = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
g_aSites[n].passworddec = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx", g_aSites[n].passworddecfix = "xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx";
g_aSites = {};
e = 0;
for (p in g_aPasswords)++e, delete g_aPasswords[p];
g_aPasswords = {};
e = 0;
for (p in g_allPasswords)++e, delete g_allPasswords[p];
g_allPasswords = {};
g_avgpasswordlength = g_numdictionary = g_numblanksites = g_numduppasswords = ei = g_numdupsites = eg = g_numweak = g_strengthscore = g_avgstrength = g_countscore = g_totalscore = g_runtimems = Bj = 0;
g_aDictionary = [];
fo = !1
}
function Hd(c) {
if (null == c) return "";
c = c.toString();
var e = c.length,
f = "",
d = 0,
g;
for (g = 0; g < e; ++g) d = c.charCodeAt(g), 48 > d || 57 < d && 65 > d || 90 < d && 97 > d || 122 < d && 256 >
d ? (d = d.toString(16), 2 != d.length && (d = "0" + d), f += "&#x" + d + ";") : f += c.charAt(g);
return f
}
function be(c) {
c = c.replace(/<([^\/])/g, "<html:$1");
c = c.replace(/<\//g, "</html:");
return c.replace(/ src='(.*).png$'/g, " src='chrome://lastpass/skin/$1.png'")
}
function Id(c, e) {
var f = e.createElementNS("http://www.w3.org/1999/xhtml", "html:div"),
d = e.createTextNode(c);
f.appendChild(d);
return f.innerHTML
}
function qh(c, e, f) {
c = c.getElementsByTagName("iframe");
for (oa = 0; oa < c.length; oa++) {
var d = c[oa];
d && "undefined" != typeof d.id &&
(null != d.id && 0 == d.id.indexOf(ui)) && (0 < e && (e += 2 * Math.abs(Ul), e < ut && (e = ut), d.style.width = e + "px"), 0 < f && (d.style.height = f + "px"))
}
}
function Rj(c, e) {
return e.metaKey || e.altKey || e.ctrlKey ? !0 : !1
}
function Vl(c, e, f) {
var d = "undefined" != typeof LP.lpGetCurrentWindow().getBrowser ? LP.lpGetCurrentWindow().getBrowser().contentDocument : LP.getBrowser().contentDocument,
g = d.defaultView;
if (Mb) {
var h = 0,
l = 0;
if (null != e) {
c = Xb(c, e);
null != c && (h = parseInt(c.left) - Ul + "px", l = parseInt(c.top) + parseInt(c.height) + "px");
if (null == f ||
0 == f) e = Ba(d, e), e = d.getElementById(ui + e), null != e && (f = Xb(d, e).width);
d = Ro(g);
if (!d) return {
posx: 0,
posy: 0
};
parseInt(f) + parseInt(h) > d && (h = d - parseInt(f) + "px")
}
h = parseInt(h) + "px";
l = parseInt(l) + "px";
return {
posx: h,
posy: l
}
}
}
function So(c, e, f, d, g, h, l, n, p) {
if (e = vi)
if (vx++, null == c && (c = ""), "savesite" == Ra && !l) n && ("text" == n || "email" == n || "tel" == n) ? e.getElementById("u") && (e.getElementById("u").value = c) : n && "password" == n && e.getElementById("p") && (e.getElementById("p").value = c);
else {
var q = e.getElementsByTagName("td");
0 == q.length && (q = e.getElementsByTagName("html:td"));
var r = [],
t = [];
Sj && (Xc = -1, c = "");
if (0 > Xc && 0 != f)
if (wi ? 0 != f && (c = "", vt = !0) : Wl != c ? lg = "" : wt ? (lg = c, c = "") : 0 != f && (lg = c, c = ""), "none" == e.getElementById("lptabpopupformfills").style.display) f = Xc = 0;
else {
if ("none" == e.getElementById("lptabpopup").style.display) {
f = Xc = 0;
c = "";
for (n = 0; n < q.length; n++) 0 == q[n].id.indexOf("tdpopuprow") && Xc++;
xi = Xc
}
} else 0 > Xc && 0 == f ? Wl != c ? lg = "" : (lg = c, wt = !0, c = "") : vt ? c = "" : "" !== lg && (c !== lg ? lg = "" : c = "");
for (var A = n = 0; A < q.length; A++)
if (q[A].id &&
(0 == q[A].id.indexOf("tdpopuprow") || 0 == q[A].id.indexOf("tdpopupffrow"))) {
var y = "tr" + q[A].id.substr(2),
y = e.getElementById(y),
J = y.getAttribute("sitename"),
u = y.getAttribute("username");
y.getAttribute("profilename");
null == J && (J = "");
null == u && (u = "");
if (0 >= c.length) "none" == e.getElementById("lptabpopupformfills").style.display && 0 == q[A].id.indexOf("tdpopuprow") || "none" == e.getElementById("lptabpopup").style.display && 0 == q[A].id.indexOf("tdpopupffrow") ? (t.push(y), xt(y, e), n++) : r.push(y);
else if (!h && 0 == q[A].innerText.trim().toLowerCase().indexOf(c.toLowerCase()) ||
h && 0 <= J.trim().toLowerCase().indexOf(c.toLowerCase()) && "none" == e.getElementById("lptabpopupformfills").style.display || h && 0 <= u.trim().toLowerCase().indexOf(c.toLowerCase()) && "none" == e.getElementById("lptabpopupformfills").style.display || h && 0 <= q[A].innerText.trim().toLowerCase().indexOf(c.toLowerCase()) && "none" == e.getElementById("lptabpopup").style.display)
if ("none" == e.getElementById("lptabpopupformfills").style.display && 0 == q[A].id.indexOf("tdpopuprow") || "none" == e.getElementById("lptabpopup").style.display &&
0 == q[A].id.indexOf("tdpopupffrow")) {
var s = y,
u = c,
z = e;
if (!(null == s || null == u || 0 >= u.length))
if (z = C ? vi : document) {
J = u = Hd(u);
s.getAttribute("sitename");
s.getAttribute("username");
s.getAttribute("profilename");
var s = "td" + s.id.substr(2),
z = z.getElementById(s),
s = null,
ia = void 0,
B = null,
F = null;
for (ia in z.childNodes)
if ("SPAN" == z.childNodes[ia].tagName) {
B = z.childNodes[ia];
s = B.innerText;
break
}
u = RegExp("(" + u + ")", "gi");
if (null != s && 0 < s.length) try {
s = Hd(s), s = s.replace(u, '<SPAN CLASS="popcell highlight">' + J + "</SPAN>"),
"undefined" != typeof C && C && (s = be(s)), B.innerHTML = s
} catch (D) {}
s = "";
for (ia in z.childNodes)
if ("P" == z.childNodes[ia].tagName) {
F = z.childNodes[ia];
s = F.innerText;
break
}
null != s && 0 < s.length && (s = Hd(s), s = s.replace(u, '<SPAN CLASS="highlight">' + J + "</SPAN>"), F.innerHTML = s)
}
t.push(y);
n++
} else r.push(y);
else r.push(y)
}
for (var v in r) r[v].style.display = "none", Xl ? (c = r[v].children[0], c.className = c.className.replace(/ ?\bshowfocus\b/, "")) : r[v].className = r[v].className.replace(/ ?\bshowfocus\b/, ""), xt(r[v], e), Ze && (0 ==
r[v].id.indexOf("trpopuprow") ? (c = "expand", c = r[v].id.replace("trpopuprow", c), c = e.getElementById(c), null != c && (c.style.display = "none")) : 0 == r[v].id.indexOf("trpopupffrow") && (c = "expandff", c = r[v].id.replace("trpopupffrow", c), c = e.getElementById(c), null != c && (c.style.display = "none")));
for (v in t) t[v].style.display = "", Xl ? (c = t[v].children[0], c.className = c.className.replace(/ ?\bshowfocus\b/, "")) : t[v].className = t[v].className.replace(/ ?\bshowfocus\b/, "");
if (0 <= Xc) {
Xc += f;
Xc >= xi + n ? Xc = xi + n - 1 : Xc < xi && (Xc = xi);
f = xi;
for (A = 0; A < t.length; A++)
if (t[A].id && "none" != t[A].style.display) {
if (Xc == f) {
if (d) {
v = t[A];
if (0 == v.id.indexOf("trpopuprow") && null != v.getAttribute("aid")) {
C ? LP.lpAutoLogin(v.getAttribute("aid")) : autologin(v.getAttribute("aid"));
return
}
v.click()
} else {
if (g) {
v = t[A];
Ra = "more";
Jd(e, $e.more.str);
yi(e, v);
return
}
p || (Xl ? (c = t[A].children[0], c.className += " showfocus") : t[A].className += " showfocus", t[A].scrollIntoView(!1), Ze && (0 == t[A].id.indexOf("trpopuprow") ? (c = "expand", c = t[A].id.replace("trpopuprow", c), c = e.getElementById(c),
null != c && (c.style.display = "")) : 0 == t[A].id.indexOf("trpopupffrow") && (c = "expandff", c = t[A].id.replace("trpopupffrow", c), c = e.getElementById(c), null != c && (c.style.display = ""))))
} if ("undefined" == typeof Ze || !Ze) break
} else Ze && (0 == t[A].id.indexOf("trpopuprow") ? (c = "expand", c = t[A].id.replace("trpopuprow", c), c = e.getElementById(c), null != c && (c.style.display = "none")) : 0 == t[A].id.indexOf("trpopupffrow") && (c = "expandff", c = t[A].id.replace("trpopupffrow", c), c = e.getElementById(c), null != c && (c.style.display = "none")));
f++
}
}
"undefined" !=
typeof g_icon_number_hint && g_icon_number_hint && ("sites" == Ra ? (d = e.getElementById("lptabpopupformfills"), (g = e.getElementById("lptabpopup")) && d && ("none" == d.style.display && "none" == g.style.display) && (n = 0), H ? ie_do_popupfilliconnumber(n, -1) : C || sendRequest({
cmd: "popupfilliconnumber",
sitenumber: n,
formfillsnumber: -1
})) : "formfill" == Ra ? H ? ie_do_popupfilliconnumber(-1, n) : C || sendRequest({
cmd: "popupfilliconnumber",
formfillsnumber: n,
sitenumber: -1
}) : H ? ie_do_popupfilliconnumber(-1, -1) : C || sendRequest({
cmd: "popupfilliconnumber",
sitenumber: -1,
formfillsnumbers: -1
}));
"undefined" != typeof g_nomatches_triggers_save && g_nomatches_triggers_save && "sites" == Ra && "sites" == To && 0 == n && 0 < cd(e).sites && !l && !Uo && mg(e, null, null)
}
}
function Yl() {
yt++;
var c, e, f;
c = ng;
ng = 0;
e = wx;
f = Zl;
Zl = 0;
null == Wl && (Wl = e);
(Sj || e != zt || $l != c || 0 != At || 0 != Bt || "" != Ct || f != Vo) && So(e, "", c, f, 0, Dt, !1, "", 0);
zt = e;
Ct = "";
$l = c;
Vo = f;
Bt = At = 0;
Sj = !1
}
function Wo(c) {
ng += c;
Xo && (Yl(), $l = ng = 0)
}
function Yo(c) {
ng -= c;
Xo && (Yl(), $l = ng = 0)
}
function Tj(c, e) {
if (LP && LP.securityPrompt()) {
if (og = !0, c) return c()
} else if (og = !1, e) return e();
return null
}
function Zo(c) {
c && Yc(c.defaultView.parent.document)
}
function Et(c, e) {
LP.lpGetCurrentWindow().openDialog(zb + "content/changepw.xul", "_blank", "chrome,titlebar,toolbar,centerscreen,modal", qn(c), e, "0", c)
}
function $o(c, e, f) {
var d = 0;
if ((c = kd(e.ownerDocument, Ba(c, e))) && !("undefined" == typeof c.fillhintnumber || "sites" != c.fillhint)) d = c.fillhintnumber, isNaN(parseFloat(d)) || !isFinite(d) ? d = 0 : 10 <= d && (d = 9);
c = [ap, "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiEFu6xIcAAAAXhJREFUOMvNk8FLVFEUxn/ffRdmIAla1CbBFDGCpoiQWYlBLty7UHAvEq2HYLhveDMws2/TIly6E9SdIEj+AVYgRaTgXhe2C968x2nhTOjow8pNZ/ede/ide893Lvx3UavVhkMIk30dQqiGECpF9e68CCG8LpfL3yStAAIk6Z2kT3Ect68C+AGdSroFVEII82aWSXoGYGYHVwE0qOM43pU0BXw3s1zSI2AnSZKXhYB6vT7inLvd7XZ/eu8fOOe2JEW9zjkwZ2bHkoayLDtpt9ufLzzBe/8GWC6VSpc7nIE2pLPLeu/fA0uDQ3T/6pp6039uZnfN7Ieke1EUrQOu3/VawPloNBrbwIyZ7TvnLvg/+mKOJ3xk88NR4R4sADM92fp9MDRMdXaRxenHVMbuFy8SMAFkZval2Wyu9ZN3Hk4zWx0nAtKsWwxotVrNNE2f5nn+CrB+/nRvlSR5y2EK0TWbSKfT+fo3Lribfr4bA/yfl56y2kkuZX8BjXVyqMs8oFcAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiMeA//jHgAAAdRJREFUOMvNkz9oU1EUxn/nvkeSokgV2oIoNbVUi5Qgj+ogomAWB3GQEtFZUdE1COG+/IMEHLp2kI7FRdCCgxCQdhJFsSKCtIUMDoU42EEMvORxHPIiNSb+mzzbxz33+873nXvhv6tsNnvAWjvbxdbak9bamUH9Ziew1t5OJBIfRGQREEBEZEFE3vi+X+lH4PbgQER2ATPW2oyqtkXkOICqbvQjkF7s+/6qiJwG1lU1FJFp4FmxWDw3kCCXy40bY/a0Wq2m67qHjDFPRcSJlEPgkqo2RGR3u93+VKlU1n6w4LruXeBGPB7/WaFD9FikM6zruveB670hmn/dmkTpe6o6oqrbIjLqOM4jwHRVf0uws/L5fA1Iq+o7Y0y0/xip9AVOTO7j69YGteUVGlG/0/MOLotINoJ3RGQOIJm+RubUBHGFkfEpZqeHeP5qk7CP9ymgrarvS6XSw676kWNj0FyjOj/Pk3oAY/sZ7hdeuVwuBUGQCsPwFqDR2+LFgwWq95YZ9S5yPhkjqK9/t/DLlAqFgnanOHv1Jmcmh9neXGVxaYUvf7M+L9O53Pz4mtrLBodTSWID/kKf2svRiY7joYMec1c8COtsva3T+DOCzyxViwNPvwEMIZXdCan/PwAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiIBl+zfqgAAAdJJREFUOMvNkj9oU2EUxX/3e4+X2AYtgoIotAUVlZSiVQKCOFgwQ50cKhUcg4qbEITwvfyTjEKnCqUgbqJooQgFRXAROoiiKFWHOsdiSw0UXvK4DkloGl+wOHm2c7ice++5F/47ZLPZQ9baM21urU1Za0d61ZtOYq29FY/Hl0VkDhBARGRGRN75vl+JMnC7eCAi/cCItXZSVRsichJAVb9FGUg3933/tYicA76qaigix4FXxWLxQk+DXC43aIzZXa/XN13XHTLGLIqI0+ocApdVtSoiiUaj8aNSqbzftoLruneA67FY7M8OTaN5keawruvOApnuEM2/Xk1a6Y+p6j5VXReR/Y7jPANMu+tfDTqRz+dfAOOq+tEY07q/x1j6EqeG9rLx/QPPF5eo9fiDK8B4i5bb+pGJDBOpJH3EOJZKk5kcjX4k4CjQUNVPpVLpSVNKMHjAY315nun7D1gJoS8WjzYol8ulIAhGwzC8CWhTrfFy9h7Tj1yy+dsMO7BarfbOoBOFQkHB40TqLLt+fubL6h4uXp0iObDCzN2HVCNeOQL9nE6fZzg4yMbcG3Caan3n91/j6eMlfnmHmbpxjeTAJm8XFljb+Qpb8BIeQS3YVvMbj7WWjTVB6I8AAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiIqO1Am6gAAAb1JREFUOMvNkk1rU0EUhp8zd0gCrdKFNgiCFatiIYgUKdW6aikuhIJF6kJcdFFEXAclzM0XJH9A6EL8BSoqZlEQCl0GEQU/qApdiYouKmgUbu7luGgC+boUuvLdvcPMc86c88J/p2w2e9g5d7btnXNTzrlM3H3TaZxzt1Kp1KaI3AcEEBFZFZFXvu9XBgFsjw9EZAjIOOeWVDUUkTMAqvppEEB6ve/7GyJyAfioqpGInALWi8XibCwgl8sdMcbsbzabf621Y8aYNRHxWpUjYFFVv4vIcBiGPyqVyuuuL1hrbwM3kslkf4Ud0BORnWattfeAld4hmr1uTVrTn1TVg6r6U0RGPc97DJh21V0Bncrn88+BOVV9Y4zp2v/w0RkWzo2w8aDG52BwDq4Ccy1b7iInJrh2fZbx8QxjQzFBAk4Aoaq+K5VKDztec3H5MmkAIppxSSyXy6UgCE5HUXQT0Pb58UvLTB34Qm1tE4CwEZ9EqtXq++6TUaYn0xD9YuZ8Gkgwv7LA1t2nbA8C9OsPH16+peGFpA6dZGQfbH/9RiOug379pl57RB1ITCxy58oxXjyrE8StsVOFQkF3w/8DCTuL1wm1OYIAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiQbPNSBVgAAAdVJREFUOMvNks9r0nEYx1/Pxy9qzAIJXTWp7BCOMSJkC6KdtqMdIkZR4DEqOktDPooKCv0DBdEturSo2IIoKIQ6dBi5RmOsTrHTIjbIGqlfng4qbO4rRaee2/v9+fB6fsJ/F5lMJmatHetqa+0pa+1ov/9mu7DW3ggGgysicg8QQETktoi8z+VyZS+A06MbIjIAjFprL6hqS0ROAqjqJy+A9OpcLlcVkQlgVVVdERkGXhUKhcm+gGw2e8QYs6/ZbG45jnPUGPNcRHydzC5wXlXXRSTUarW+lsvl2o4WHMe5CVwNBAK7M7RBT0TaxTqOcxe40jtE869bk870k6oaUdVNEYn6fL7HgOlm/SNge+Tz+ZfAlKouGWPa+/fHSZ0bZ6DdAz8+V5l/t+Z5BxeBqY4sdf3Q8DjJRIKhSITI4BCx2KD3IQHHgZaqfiwWi7NdM3IwDHzjQ61GrfqQO48WvAGlUqnYaDROuK57HdCuHz0UBvYzdnqCyVSamfSZvpdIpVJZ7vVWXz/le/MLy2t1kukZUoePEeUN616A3RHm7OVp4j9XeHB/iZEDfnB/0fz7/W8wN7fA1t4El65NE9+zydvZZ2z0a8ETsTjPrcUXhEJ+6vX6jrffHVGXQ3t5OMYAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiUQsh1pnwAAAdhJREFUOMvNks1rU1EQxX9z37OJGAUF4yfYQBTUlCpBixhRaBcuAoIiiovsFBXXQQk3IYkkf4IF8S/QUjdCURELdlWjglSKunHhIukiQktLX/IYF0mkTRP8WDm7M/dyZuacA/9dpdPp/dbaEx1srR2x1g71+2/WAmvtnWAwOC8ijwABREQeiMj7bDZb6kXgdmFPRLYAQ9baK6raFJHjAKr6pReBdONsNjstImeAz6rqi8hh4FU+nx/tS5DJZA4YY7Y1Go0V13UHjTFTIuK0J/vAJVWtiUio2WwulEqlD+tOcF33LnAzEAhsnNAieirSWtZ13YfAjW4Rzb+6Jm3146q6U1V/iEjYcZxJwHSm/pZgbeVyuRfAmKp+NMb88v9g4gLnYntYXZhnauI1tT45uAqMtWGx0w8nUlwbPYazvMy+2FluXU/0DhJwCGiq6lyhUHjSaoU4dTICi1+ZfTvHbKXC9LvvDPQiKBaLBc/zhn3fvw1oq7uJkAtsjZK8mOR0PM7w4A68PkmkXC5/2qCUA1RnyI+/ZCR1j/Oxo4QnKtT+zL4636oe7IoQjxwhunsAVlZp/I3/byafU/X3kkxdJrp5kZnHz6j3O6H3EhXG71cIbQ+xVF9a9/QTGr2YJMqy6kMAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiYB84AargAAAa9JREFUOMvNk0FrU0EUhb87bzABiyhiC7XQKCq6CCJF3FhQ7E7BhYL+AhFxHYQwL7xEknUX0kUR3LhRQQsuxAahgkvRIpaiXYmrCiaCILzMcF0khTZ9z0JXnt2ZGb4799wZ+O9UqVQmnHNnN7xz7pxzrpx33mw2zrm7xWJxVUQeAgKIiMyJyIc4jptZADvkUxHZC5SdczdU1YvIGQBV/ZoFkGEfx/GSiEwDX1Q1iMgp4E2SJJdyAdVqddIYs6/X6/2x1paMMa9EJBpUDsA1VV0XkRHv/Y9ms/lxSwvW2nvA7UKhsL1CH/RCpH9Za+08cGs4RLPbqckg/SlVPaSqXREZjaLoOWA2qu4I2KxarbYIzKjqJ2NMGUY4f/Uyh4se7/td+1+rLLSXt4/ROXcTmBnYBvAE4GDpOCf3RwQgAgiWt+1lOhm9nwC8qn6u1+vP+ku/WZi9T5IkPHi5BqS8e/SUTlZ4jUajnqbp6RDCHUC3so9w/cox0rXXtL+nuS+RVqu1khXWxIWLjBNYWnyf/xf+pdLRMQjfWFlnN4ADTI7tge5Pujt8phx1eNxKMnf+AqjSjZJP5cFjAAAAAElFTkSuQmCC",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiYvL1YXYQAAActJREFUOMvNk71rU2EUxn/nvdckkCgWsYv1Y1EQWlMJUkWqQzsUdOtQ/4Jgi3NQwntvPiDZXQSDi7P4sRUqhYKTIhaMIjoIhSKNFDsExZt7OQ5NMI03VJx8tufh8Jz3nOe88N+hUCiMWWsv9Li1dspaOzGs3vQTa+2tVCr1QUQeAAKIiNwTkTee59XiDNwBHohIGpiw1i6oaigi5wFU9VOcgQxyz/PWRGQa+KiqkYicBVbL5fLMUINisXjSGHOo0+n8cF33lDFmWUScbucImFfVlohkwjD8WqvV1veM4LrubeBmMpn8s8Ou0VOR3ce6rtsA8oNLNP+amnS3n1PVo6q6IyKjjuM8AUyv674G/fB9fwWYVdW3xphu/hmmrl/j3NgIP780efzsBe0hd3ADmO3Sak/PzueZy52G7xHHJmdYWsjGHxJwBghV9V2lUnnUE1PpJOys03jY4NU2JNIH4w2q1WolCIJsFEVLgPb0zY0tOJzD930uH4Gtjc2hl0i9Xn+/Vxnh6qXjsP2au/dfciW/yOTFaUaff6b11/E5gJPkAB2iff5CDL6xttLkxNw4i3fGgYDm8iqtYTH2o1Qq6W+WIJNJELTbBH01vwC+YJMlVG88LQAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDigO/bwqsQAAAfNJREFUOMvNkz1ok2EQx3/39umHmpZWMUVaUEEUpWlQ0QyiCDooFhwcFN2lgqhTEMKTDwsZCw4SQQNOLh20KBgQRZ0kIK2LlBaqtNKhfkRqbHnfvOEc0kCbD0Enb/vD8bu7/93BfxfRaLTfWnuoqq21EWttqFm+s1ZYa692dHRMiUgWEEBEJCMiE/F4PN0IYGq0JyKbgJC19ryq+iKyH0BVZxoBpFbH4/HXInIUmFbVsojsBV6mUqkTTQGxWGy74zhdpVJpxRizw3GcnIi0rFYuA+dUdVFEAr7vf0mn05PrRjDG3ASG29vb6ytUQI9FKs0aY+4Bl2tNdP51a7Lq/kFV3aqqP0QkaIwZ/yvA2kgkEs9F5CQEiAydYbC/i6VPeR7l3uM1ALTU3MEFEYmKCJFLNzg1sA186NsVZl/nAvnp738+JGA34EOQPTs3UP6YY/T2KC8WymwJHaYHgABDw9c5G+6pB4yMjNzyPC8My/zyoKVvkEj4OAO9lUZbAdjI5t5ugp2tzY1JJpOavv9M55ZcVd9VV1XVndE3s8u6Plxtsr42jp0+QvfPCTJ3xvkKeHNT5J88IJsdY74M3yafksncrfuF6kvw9tUHDlyMcOVaBFbmeTj2jqIHxUIJF3A/z7K4WKhfY3WEaieBnjaKhWLTcX8DATq/EhizV6kAAAAASUVORK5CYII="
];
e = [pg, "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiA7Y9ZkmgAAAOlJREFUOMvNkr8OAUEQxn+4UkFN4k8kGv865SmVEqXGI3iEvUrvBWg8gDfwAsQDSO48wfVHQmEkg3NWrjHJZHe/nZ2Z79uBf7QqMFDnnriVzYAQ8BV2AK6AiXvgxGAF8amcu7IGtl1spaIvfhUs1jKKd0X2pxcKSDeBun/rxkglG3/SIpv2yzSFqtovAYwxXxM4SuFAifjgWtHBtcGYDns2W/8jhRHgKl3uli/TH06YuC3a9RJJGvRU9dUDLDZdhv0GOSC6nBMTGKCmhgiAcLfG8xYcI8hZTGLwy9Sl/sbUCRz70JD13HtDbwm1Old+g8VwAAAAAElFTkSuQmCC", "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiMmK/1bgAAAAUhJREFUOMvNkr9Lw1AQxz9KCCgIUcSCICYaUFBIIODikA4ddBC7iKCLONlJ/4Q4devqJLoUZ8GtIC24KAh1VSERh0KWdrIQkDr4Wp81oREXD453d4/78f3ewX8UHchKvi00lRwBTcCXYnWgA3hxCUpMTBO6J3xLvEHaKaqioy+0I2KxMiThnhX2Sx8ExDSB9P9jGk90SqPfuBj+68pkCLpknwF4njewgCIxHEgkdrEKXlSs3AYr5gRvjScql1XCBAh5wJV4AcDI7ZNfXWZydAzTdikcrKEmFLCl7ufd7gtLGWjXKZZKXPkRZKbREg7JE4n6Vyji9uKE6zBkytlk3VCJ/McehLhLDPr33AxbZHcPcU2N1nON0/LN79bobBdwTY326z2Vu5B5y+hxoAxOH2dx7hPxyIzD1o4D7z6NB58wXYEm5eJx4u8Hfzxclyg/Z/wAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiII7jBnDgAAAVBJREFUOMvNkjFLw1AUhT+1pFo7FAdFHBrBgkihxRQ6STtmqOAmOIhTwU0QXH2/QNBBBBE7uQgilIJDByehgyDi4JaIkwWJ1IJQkTr0iS8xqQEXD1xy70le7j3nXfiP0IGiUmdlhMIG4ACWwt0AXUD4HYj4cAkZa7LOyKcddopL2dGS0ZWcLwYU3UmZP3gkIKexlfc/phGyU5hweTH41ytTJehKfgwghPj1BxHFYVsx8Uur9EXDMBeZ18do2bfULhq0AyQsAQXFFwBSpTKlfJoYUWbzJuXlTKAHWaV7pZfGSU5qvNyfs3tQwfqAWHQ4cJGEPKh/U23qhzvUMdja3mQEeGo2+96C7V4cjbl8ESP1yP7eCXfPMJFbYLzPKnswSs4sMN2ZonV0BUM99j38HjicnTZ41WZYWV8lnXjjulrF8eyBL4QQXbXW4hqddsf1zSd981rsA+U7cAAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiIxsTXvBgAAASpJREFUOMvNkrFLw1AQxn+2EhQVIohFKJhqRSiIBQcRCxYEcSgoilNFSgdnV7f3n+g/4GQHx65BBAcHnRoXdetiHGolLgdeYpoGXPzg4727x7u77+7gP8IBqsouC1PhDOgCHeW7BwLAxH0YjfHZwobYq3J6aatoS8aOMBBfLEaU7nm5P0ckINV46v1XNUYypWGoF5m/jkxLcNT9AsAYMzRARnW4LWworSFMFirU6zXy1mAJ+8CW6ssPrBLHJ9sUiys4E4MDlFX2S/Wb3eYBOQC++ExoogEKSgYAS7Um6zMvtG4eAej7yVPwwoszy8ZaDrCpbC4A4+yc7jGdsMoRfPB094Cf7TM2t4w9Bd3XN/z0Ad5xW1e4gFU65Pxokdtrl15kD2JhjAmGhf8GfYtLPXngvXwAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiQSRQg58gAAAVdJREFUOMvNkz1LA0EQhh/lOAhG8IpL1ARNrE5SGAimEIL+gAhapFEQWztbu+sE/4QiYmUjiY0gKsTCIpAoiIiQU2IjSARPowSJhRvYXO70wMaBYXdnmI/3nVn4jxIDZqR3UqgvWQXqQFWylYEWYLoFKC62AaHL4j0hTstvFyeiYlVoS9hcpUfCPSrudw4IiG4syd/VjSkq+dEOLnr/OjIZQky6bwKYpvlrAkVi2JJIbGP95kWNk51P0wegKLzenlI4r7lCmAOmJV4ACI6nSRkGEV1HD0eIRsOee5CUqm+1oehDGvDERbnMe+OBYqnqmcAUgTHZGBrWAJXJqQxqQCWTOGJ9u+i5iZZzzjfH+7w077mq2aSW1siOjBGiyKNHAodozC7miL9ds7tzSWJQhc8Pmv73oE4+X6LRb7CwkiMeeOZs74D6D5+pO0WlwEblkGBQxbbtDt8XLQlh5BtbXRIAAAAASUVORK5CYII=",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiUJ1nbBXwAAAVBJREFUOMvNkz1LA0EQhh9NDASuSJr4VZjA2WjAgCAIBwnYBhTBxiLYWNj5EzaQH2GnvYiVEKxSmEoPUlikEO5SSDiFnJAQyanEwg1uzEVPbBwYdnaG2Zn3nVn4j5IEcso9IzWQHAIuYCm+GtAHhF9C2McXk7on7yvytIN2UZEVLal96fOVCQX3grQbXyAgu7GV+Eg3QlYKokNcTP51ZCqEpGIfAwghfnwgrDBsKyQOsA54YdHYJJeepfdYp3xW4WEMhC0gq/ACQMIosLuRIdTtMp/OcrBvjN2DjFL95AOKxvpaCtp3XN/UibdavDbviQCezwNCJiY/XVNoYSCqk9/WIQRPt00qpjV2CvbI4oQAp0qxVKRsecTSyySCj9Gl4XgwnWI1tYQ+E4HnHi+/2YOr80uctznyhR30aJvq6QXuN5/JpwmTo5KJFtfouJ2h0Du9o2L2gjumAgAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiYHGuO/mwAAASZJREFUOMvNk79KA0EQxn+aQywsEiwCMXgXUbAzYCsYawNa2KXJEwQfYQXB2idIGiura/UKFSwF04iFkItYWeQiWIU7YpERxrjqkTR+MOzuDPPvm1n4j/CAinqXRVLhEIiAjtLdA0PA2Bwciy4rUpf3hpxh2iquJGNHZCg6K2ZU367cu2MtINWEyv6tGiOZ0sgXLmanHZluwVP3JoAx5s8AjmI4VCR+9urCAlt7uyzNx8TxyCV+e8QP2tYx7gPbipcmwKK3xno2QwJkABKHm6BNZAlQVtlbowDv+KfH+EBus0ajusxt65zoBxINUFJLpFDioLrK4OmC4GXw6yaGtjkXKzsUSLi+vGOiMXoreUieeXhlkgA53Pwc9Hv0U3wmCyLOTo6slg+fZlNd2Y2MegAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDiY3PDqPNwAAAURJREFUOMvNk79Lw0AUxz/amgqNYBcHf8bBrdhABnWQCi4FHQQHVydBJ1en3ubu4tBB8Q8Q3ARBLLiJkCGDW6NQRSHUIQhGShy84jUmGnHxC4+7971c3nvf9w7+IwxgQfFNaamwDbSAhsLZQAiIuAvZGG5Q2rr0S3J102ZxISM2pIWSi0WPUveE3N9GSkBm4yrnX7IRMlIa69Ki968tU0swlP0BgBDixx9kFYVdRcROrVIXnZnlJaZHC7w+OByfXOInlLAClBVdPvq4ukHFmoKXNiPmIltrpUQNTCX6YYfsz+fg2aZ2VOPKAy0/kDhIQl40VLJ59wiTFtWqBcD9TfPbLrjdg1OgPDcG3jV7u/vYHgzPzjP0qzZmgEyOPt5op3gLEbSonzmMV4ps7hSBAOf0nKfIHMRCCBF+ehq6rhH4PoHyzTsT9lgsYELcCQAAAABJRU5ErkJggg==",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAASCAYAAABSO15qAAAABmJLR0QA/wD/AP+gvaeTAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAB3RJTUUH3QsPDigXmdeCcQAAAXtJREFUOMvNk88rRFEUxz8MIzKaoWYWFBZiwYwob6GYJZlizcZKWOBPuCvLKQuNhYmVzSwkio2SlaaEjZQyz48sRFPjGb3HdG3u6M3Mm5qycep0zzm3e873e8658B+lAwjb/H6lFckKkAZSttglIAHh9KDGIeZVOqv8kDr1SlGcqIoppVLFHKXKxrtd2fdFFFBodNt9CRqhKlWiBb2o/uvI7BQ68rYQYqvSBDW2Duu2JgKNaJEJgm1NZPQku0dXWA4JiilMAaMA2swiY4M9eOo89GhTzEW6HBEUJ1Ab56e7s55c6ojoWpTj5xwtfUP4FLLI/DKTIZ9jAgF0QpYPC1ytQbRQmN6AC4BaABpoDnjxe2rLN0YIIVc3D+VDxpTy25SmlFKat/L0LisLxZRlxuhmZHwY7/sFsfU9XgHr4Ybk/jbxeILHHLxdHhCLbTj+BcDi7OSagWmNhSUNPh/ZSZxjWGCkvzAB8+mOl5f07x6UUMgjafS5MdJGWbo/W6+PV71qU8EAAAAASUVORK5CYII="
];
return f ? e[d] : c[d]
}
function Ft(c, e, f) {
var d = [];
if (Mb && !(null == e || "undefined" == typeof e.type || "hidden" == e.type) && ("text" == e.type || "password" == e.type || "email" == e.type || !f && "tel" == e.type || !f && "url" == e.type || !f && "textarea" == e.type)) {
var g = Ba(c, e);
if (kb(g, d) || am(c, e, !f)) return !1;
var g = /(?:date)|(?:calendar)/i,
h = /(?:validate)/i,
d = e.name,
l = e.id;
return (d = g.exec(d) || g.exec(l) ? h.exec(d) || h.exec(l) ? !1 : !0 : !1) || Gt(c, e) || mn(c, e) || Vq(e) ? !1 : f && !Cf(c, e.form) && !rh(c) ? (Ht && Qd(c, e.form), !1) : !0
}
return !1
}
function qg(c) {
if ("string" ==
typeof c && -1 != c.indexOf("e")) {
c = "" + parseFloat(c);
for (var e = "", f = c.length - 1; 0 <= f && "0" == c.charAt(f); f--) e += "9";
c = c.substring(0, f + 1) + e
}
return parseInt(c)
}
function Uj(c, e, f, d) {
xx++;
if (null == c || e == c.body || null == e || 50 < f) return null;
var g = 0,
g = "undefined" != typeof window && window ? window : c.defaultView,
h;
h = "undefined" != typeof g.getComputedStyle ? g.getComputedStyle(e) : e.currentStyle;
if ("absolute" == h.position || "relative" == h.position || "fixed" == h.position) {
if ("auto" == h.zIndex || "" === h.zIndex) return g = Uj(c, e.parentNode,
f + 1, d + 1), null == g ? 0 : qg(g);
g = Uj(c, e.parentNode, f + 1, qg(h.zIndex));
return null == g ? qg(h.zIndex) + 1 : qg(g) + 1
}
if ("auto" == h.zIndex || "" == h.zIndex) return g = Uj(c, e.parentNode, f + 1, d + 1), null == g ? d + 1 : qg(g) + 1;
g = Uj(c, e.parentNode, f + 1, qg(h.zIndex));
return null == g ? qg(h.zIndex) : qg(g) + 1
}
function bp(c, e) {
if (null == c || null == e) return null;
var f = !1,
d = e.form,
g = !0,
h = !0,
l = It(c, Vj, c.location.href);
null != l && (g = l.show_for_generate, h = l.show_for_clickable_icon);
g && kg(c, d) && (ye(c, e) && h) && (f = Jt(c, d) && e == ah(d) ? !1 : !0, "undefined" != typeof g_docnum &&
(Qd(c, d), Ba(c, e)));
return f
}
function It(c, e, f) {
if (c) {
e = {
show_for_formfill: !0,
show_for_save: !0,
show_for_autofill: !0,
show_for_generate: !0,
show_for_clickable_icon: !0
};
if (null == Vj) return null;
if (null == f || 0 >= f.length) f = c.location.href;
c = nb(f);
f = nb(Ta(f));
for (var d = 0; d < cp(Vj); d++) {
var g = Vj[d];
0 == g.domain && nb(g.url) != c || 1 == g.domain && f != nb(Ta(g.url)) || ("neverformfills" == g.type ? e.show_for_formfill = !1 : "neveraccounts" == g.type ? e.show_for_save = !1 : "neverautofills" != g.type && "neverautologins" != g.type && ("nevergenerates" ==
g.type ? e.show_for_generate = !1 : "nevershowicons" == g.type && (e.show_for_clickable_icon = !1)))
}
return e
}
}
function cp(c) {
var e, f = 0;
if (null == c || "undefined" == typeof c) return 0;
if ("function" != typeof c.hasOwnProperty && "undefined" != typeof c.length) return c.length;
for (e in c) c.hasOwnProperty(e) && f++;
return f
}
function kg(c, e, f) {
if (null == c || null == e || e.elements.length > dp) return !1;
var d, g = Qd(c, e);
if (!f && (d = ep(c, g, "ask_generate"), null != d)) return fp++, d;
gp++;
try {
var h = Df(c.location.href)
} catch (l) {
return !1
}
var n = d = 0,
p = 3;
f && (p = 2);
ce && dd() && (p = 7);
if ("tumblr.com" == h && (tumblr_action_btn = c.getElementById("signup_forms_submit"), null != tumblr_action_btn)) {
f = tumblr_action_btn.getElementsByTagName("SPAN");
var q;
for (q = 0; q < f.length; q++)
if (0 <= f[q].className.indexOf("login_btn") && Nb(c, f[q], 0, h)) return !1
}
if (!Nb(c, e, 0, h)) return !1;
f = Kh(e, zi);
if (null != f && (0 <= f.toLowerCase().indexOf("signup") || 0 <= f.toLowerCase().indexOf("register")) && -1 == f.toLowerCase().indexOf("login")) return Kd(c, g, "ask_generate", !0), !0;
var r = !1;
if ("undefined" !=
typeof Math) {
f = Math.floor(1E4 * Math.random());
var t = q = 0,
r = 0,
A = null,
y = e.elements.length;
y > Ai && (y = Ai);
for (var J = 0; J < y; J++) {
var u = e.elements[J];
"INPUT" == u.tagName && ("password" == u.type ? q++ : ("text" == u.type || "email" == u.type) && t++);
if ("INPUT" == u.tagName && "submit" == u.type || "BUTTON" == u.tagName)
if (r++, A = u, 10 < r && e.elements.length > Ai) return !1
}
if (1 == r && 2 >= t && 0 < q && Kt(A)) return !1;
t = e.elements;
for (J = 0; J < Ai && J < t.length; J++)
if (u = t[J], r = !1, "FIELDSET" != u.tagName && Wj(c, u) && !bm(u) && ("expedia.com" == h || Nb(c, u, 0, h, f))) {
if ("BUTTON" ==
u.tagName && "submit" == u.type && null != u.innerText && 0 <= u.innerText.indexOf("Create") || "BUTTON" == u.tagName && "submit" == u.type && null != u.innerText && 0 <= u.innerText.indexOf("Register") || "INPUT" == u.tagName && "submit" == u.type && null != u.value && 0 <= u.value.indexOf("Create") || "INPUT" == u.tagName && "submit" == u.type && null != u.value && 0 <= u.value.indexOf("Register") || "INPUT" == u.tagName && "submit" == u.type && null != u.value && 0 <= u.value.indexOf("Sign me up") || "INPUT" == u.tagName && "image" == u.type && null != u.value && "create" == u.value) p =
2;
if (1 < q && Lt(c, u)) n++;
else if (A = hp(c, u), !e || !("form1" == e.id && e.action && e.action.indexOf(".aspx") && "text" == u.type && (A === cm || A === Mt)))
if (!Ld || !("text" == u.type && (A === Xj || A === Yj))) {
if ("password" == u.type || r || "text" == u.type && A === Xj || "text" == u.type && A === Yj) {
r = u.getAttribute("placeholder");
null != r && 0 <= r.indexOf("Create your") && (p = 2);
if ("facebook.com" == h && "string" == typeof u.id && u.id.match(/^[a-z0-9]{6}_\d{1,2}_ci_password$/)) continue;
else if ("tdbank.com" == h && "string" == typeof u.name && "user" == u.name) {
n++;
continue
}
if (0 ==
d && 1 < q && Nt(u)) {
n++;
continue
}
d++
} else if ("email" == u.type || "text" == u.type || "textarea" == u.type || "tel" == u.type || "url" == u.type)
if (Ot(u)) d++;
else {
u ? (r = u.name, A = /(?:Forg[oe]t)/i, r = A.exec(u.id) || A.exec(r) ? !0 : !1) : r = !1;
if (r) continue;
oc(u, !0) && (Ba(c, u), Gt(c, u) || n++)
}
if (4 <= d || 100 <= n) return Kd(c, g, "ask_generate", !1), !1;
if (2 <= d || 1 <= d && n >= p) return Kd(c, g, "ask_generate", !0), !0
}
}
Kd(c, g, "ask_generate", !1);
return !1
}
}
function Nt(c) {
var e = /(?:Account)|(?:Member)|(?:IUO_NAME)/i,
f = c.name;
return e.exec(c.id) || e.exec(f) ? !0 : !1
}
function Kt(c) {
if (!c) return !1;
var e = "INPUT" == c.tagName ? c.value : c.innerHTML,
f = /(?:Login)|(?:Log.In)|(?:Logon)|(?:Log.on)/i;
return f.exec(c.id) || f.exec(e) ? !0 : !1
}
function Vq(c) {
if (!c) return !1;
var e = c.id;
c = c.name;
var f = RegExp(Za("ff_captcha_regexp"), "i");
return f.exec(e) || f.exec(c) ? !0 : !1
}
function Zj(c, e) {
if (null == c || null == e) return !1;
if (e.elements.length > dp) return !0;
try {
var f = Df(c.location.href)
} catch (d) {
return !1
}
var g = Qd(c, e),
h = ep(c, g, "is_nonlogin");
if (null != h) return fp++, h;
gp++;
null == c || null ==
e || "FORM" != e.tagName ? h = !1 : (Qd(c, e), h = null != e.id && 0 < e.id.length && "undefined" != typeof e.id.toLowerCase && (0 <= e.id.toLowerCase().indexOf("search") || 0 <= e.id.toLowerCase().indexOf("srch")) || null != e.name && 0 < e.name.length && "undefined" != typeof e.name.toLowerCase && (0 <= e.name.toLowerCase().indexOf("search") || 0 <= e.name.toLowerCase().indexOf("srch")) ? !0 : !1);
if (h) return Kd(c, g, "is_nonlogin", !1), !1;
if (!Nb(c, e, 0, f)) return !1;
var h = f = 0,
l = e.elements,
n = l.length;
n > $j && (n = $j);
for (var p = 0; p < n; p++) {
var q = l[p];
if ("FIELDSET" !=
q.tagName && ("email" == q.type || "text" == q.type || "password" == q.type) && !bm(q)) {
if (100 < ++h) return Kd(c, g, "is_nonlogin", !1), !1;
if (!0 != q.disabled && Wj(c, q) && oc(q)) {
if (am(c, q, !0) && 8 > l.length) return Kd(c, g, "is_nonlogin", !1), !1;
f++;
if (3 <= f) return Kd(c, g, "is_nonlogin", !0), !0
}
}
}
Kd(c, g, "is_nonlogin", !1);
return !1
}
function Kd(c, e, f, d) {
if (null == c || null == e || null == f || 0 === e.length || 0 === f.length || null == d || "FF" == e || "none" == e) return null;
"undefined" == typeof c.g_form_attr_cache && (c.g_form_attr_cache = []);
null == c.g_form_attr_cache[e] &&
(c.g_form_attr_cache[e] = {});
c.g_form_attr_cache[e][f] = d;
return !0
}
function ep(c, e, f) {
return null == c || null == e || null == f || 0 === e.length || 0 === f.length || "FF" == e || "none" == e || "undefined" == typeof c.g_form_attr_cache ? null : null != c.g_form_attr_cache[e] && null != c.g_form_attr_cache[e][f] ? c.g_form_attr_cache[e][f] : null
}
function yx(c) {
c = "undefined" != typeof document ? document : c.target.document;
var e = c.getElementsByTagName("body")[0];
c.g_posbodyrect_cache = e.getBoundingClientRect();
var f = "undefined" != typeof window && window ?
window : c.defaultView;
c.g_posbodystyle_cache = "undefined" != typeof f.getComputedStyle ? f.getComputedStyle(e, null) : e.currentStyle;
Bi(c);
return !1
}
function Nb(c, e, f, d, g, h) {
if (Ld && !h || e == c.body || null == e || 50 < f) return !0;
if (null == d) try {
d = Df(c.location.href)
} catch (l) {
return !1
}
f = "undefined" != typeof window && window ? window : c.defaultView;
for (g = e; g && g != c.body;) try {
var n;
n = "undefined" != typeof f.getComputedStyle ? f.getComputedStyle(g) : g.currentStyle;
if (null != n && "none" != n.display && "hidden" != n.visibility && (null == g.offsetHeight ||
"" === g.offsetHeight || 1 < g.offsetHeight || "hidden" != n.overflow) && !("expedia.com" == d && "-1px" == n.marginTop && 1 == g.offsetHeight) && !("dropbox.com" == d && "register-partial-container" == e.id && 50 > g.offsetHeight)) g = g.parentNode;
else return !1
} catch (p) {
break
}
return !0
}
function dm(c, e, f) {
var d = 0,
g = 0,
h = c.getElementsByTagName("INPUT");
if ("undefined" != typeof Math) {
for (var l = Math.floor(1E4 * Math.random()), n = 0; n < h.length; n++) {
if (100 < n) {
e || (d += h.length - n);
break
}
var p = "password" == h[n].type;
if (!e || p)
if (!("checkbox" == h[n].type ||
"hidden" == h[n].type) && Nb(c, h[n], 0, null, l)) p && g++, d++
}
f && (c.g_password_cnt = g);
return d
}
}
function Xb(c, e) {
zx++;
if (null != e) {
if ("undefined" == typeof e.getBoundingClientRect) return null;
var f = e.getBoundingClientRect(),
d, g;
d = "undefined" == typeof f.width ? f.right - f.left : f.width;
g = "undefined" == typeof f.height ? f.bottom - f.top : f.height;
var h = null;
"undefined" != typeof c.body ? h = c.body : c.getElementById("main") && (h = c.getElementById("main"));
var l;
"undefined" == typeof c.g_posbodyrect_cache ? (l = h.getBoundingClientRect(),
c.g_posbodyrect_cache = l) : l = c.g_posbodyrect_cache;
var n = 0;
if ("undefined" == typeof c.g_posbodystyle_cache) {
var p = "undefined" != typeof window && window ? window : c.defaultView,
h = "undefined" != typeof p.getComputedStyle ? p.getComputedStyle(h, null) : h.currentStyle;
c.g_posbodystyle_cache = h
} else h = c.g_posbodystyle_cache;
"relative" == h.position && !Ld && (n = l.left);
h = "undefined" != typeof window && window ? window : c.defaultView;
"pageXOffset" in h ? (l = h.pageXOffset, h = h.pageYOffset) : (h = 1, "undefined" != typeof H && H && "undefined" != typeof c.querySelector &&
"undefined" == typeof c.addEventListener ? h = 1 : l && (h = Math.round(100 * ((l.right - l.left) / c.body.offsetWidth)) / 100), l = Math.round(c.documentElement.scrollLeft / h), h = Math.round(c.documentElement.scrollTop / h));
return {
left: f.left + l - n,
top: f.top + h - 0,
width: d,
height: g
}
}
return null
}
function ip(c, e, f, d, g) {
Ax++;
var h;
h = null == c || null == e || null == d || 0 === e.length || 0 === d.length ? null : "undefined" == typeof c.g_LP_measureText_cache ? null : null != c.g_LP_measureText_cache[d] && null != c.g_LP_measureText_cache[d][e] ? c.g_LP_measureText_cache[d][e] :
null;
if (null != h) return Bx++, h;
Cx++;
h = c.createElement("span");
var l = null;
if (null == d && null == f) return l;
null == g && (g = c.body);
null == g && (g = c.getElementById("hiddenel"));
g && (g.appendChild(h), null != d && (h.style.cssText = d), null != f && (h.style.fontSize = "" + f + "px"), h.style.position = "absolute", h.style.left = "-1000px", h.style.top = "-1000px", h.innerHTML = e, l = {
width: h.clientWidth,
height: h.clientHeight
}, f = l, null == c || null == e || (null == d || 0 === e.length || 0 === d.length || null == f) || ("undefined" == typeof c.g_LP_measureText_cache &&
(c.g_LP_measureText_cache = []), null == c.g_LP_measureText_cache[d] && (c.g_LP_measureText_cache[d] = {}), c.g_LP_measureText_cache[d][e] = f), g.removeChild(h));
return l
}
function rd(c) {
if (null == c) return !1;
if (null == c.location) return c = "undefined" != typeof LP.lpGetCurrentWindow().getBrowser ? LP.lpGetCurrentWindow().getBrowser().contentDocument : LP.getBrowser().contentDocument, Yc(c), !1;
if (0 < c.location.href.indexOf("popupfilltab.xul")) return !0;
c = c.getElementsByTagName("iframe");
for (var e = 0; e < c.length; e++)
if (("function" !=
typeof c.hasOwnProperty || c.hasOwnProperty(e)) && 0 == c[e].id.indexOf(ui)) return !0;
return !1
}
function jp(c, e) {
c || (c = C && LP ? LP.getBrowser().contentDocument : document);
if (c) {
if (Mb) {
if ("undefined" != typeof H && H)
if (init_LPfn() && LPfn) LPfn.ie_reset_popupfillhint(), LPfn.ie_setup_event_handlers(c);
else return;
if ("undefined" != typeof C && C) c.g_input_cnt = dm(c, !1, !0), c.g_form_cnt = kp(c), c.g_did_setupInputObserver = !1;
else {
dm(c);
kp(c);
var f = c;
if (f || !(f = document, !f)) f.g_need_to_recompute_input_index = !1
}
var f = "undefined" !=
typeof g_isloggedin ? g_isloggedin : P,
d = !1;
if (ak || !ak && f) d = !0;
try {
var g;
g = "undefined" != typeof Wa ? Wa.URLToASCII(c.location.href) : c.location.href;
var h;
f = g;
if (null == f) h = !1;
else {
var l = "https://lastpass.com/";
"undefined" != typeof base_url && (l = base_url);
h = 0 == f.indexOf(l) || 0 == f.indexOf("https://lastpass.com/") || 0 == f.indexOf("https://lastpass.eu/") ? !0 : "undefined" != typeof g_loosebasematching ? (f = Ta(f), RegExp(f + "/$").test(base_url)) : !1
} if (h || 0 == c.location.href.indexOf("chrome://") || 0 == c.location.href.indexOf("chrome-extension://") ||
0 == c.location.href.indexOf("safari-extension://") || 0 == c.location.href.indexOf("about://") || 0 == c.location.href.indexOf("javascript://") || 0 == c.location.href.indexOf("resource://")) return !1
} catch (n) {
return !1
}
if (f = d)
if (!(f = e))
if (!(f = Dx(c)))
if (!(f = rh(c)))
if (!(f = Ex(c))) a: {
if (f = c) {
d = bk;
ck(f) || (d = Ci);
h = f.getElementsByTagName("form");
for (var l = !1, p = 0; p < h.length && p < d; p++)
if (l = kg(f, h[p])) {
f = l;
break a
}
}
f = !1
}
f && (f = Df(c.location.href), C || "undefined" != typeof H && H || sendBG({
cmd: "getpopupfillsites",
tld: f,
url: g
}), Fc &&
(rg = {
sites: -1,
formfills: -1
}), ("undefined" != typeof window && window ? window : c.defaultView).setTimeout(function() {
a: {
var d = c,
f = Pt;
if (Mb && (d || !(d = C && LP ? LP.getBrowser().contentDocument : document, !d))) {
if (C) {
LP.lpGetCurrentWindow();
var g = "undefined" != typeof LP.lpGetCurrentWindow().getBrowser ? LP.lpGetCurrentWindow().getBrowser().contentDocument : LP.getBrowser().contentDocument
}
var h = d.body;
h || (h = d.getElementsByTagName("body")[0]);
if (h) {
h = !1;
if (C) {
if (ln(nb(d.location.href), Ta(d.location.href)) || ln(nb(g.location.href),
Ta(g.location.href))) break a;
h = !0
} else {
var g = It(d, Vj, d.location.href),
l = !0,
n = !0,
p = !0,
s = !0;
null != g && (l = g.show_for_formfill, n = g.show_for_save, p = g.show_for_autofill, s = g.show_for_clickable_icon);
if ((0 < Di && p || 0 == Di && n || l) && s) h = !0
} if (h) {
var g = d.getElementsByTagName("input"),
z, h = {}, ia = rh(d);
if (ce && !dd()) {
var B;
for (B = 0; B < g.length && 5 > B && !dd(); B++) Qt(d, g[B])
}
B = null;
if ("undefined" != typeof Math) {
var F = Math.floor(1E4 * Math.random()),
D = g.length;
if (ce && dd()) {
var v = d;
if (Mb && (v || !(v = C && LP ? LP.getBrowser().contentDocument :
document, !v))) {
f = [];
Fc && (C ? (l = LP.getMatchingSites(v.location.href, Tk).length, f[z] = 1 != l ? l : 0) : f = Ef);
var l = v.getElementsByTagName("FORM"),
s = Pt,
K = bk;
ck(v) || (K = Ci);
for (var E = 0, p = 0; p < l.length && p < K; p++) {
var G = l[p].elements;
Cf(v, l[p]);
Zj(v, l[p]);
kg(v, l[p]);
var Y = lp(v, l[p]),
L = Uk(v, l[p]),
O = dk;
Rt(v) || (O = $j);
for (n = 0; n < G.length && n < O; n++) {
var Q = !1,
P = G[n];
z = "sites";
if ("INPUT" == P.tagName && (g = !1, Ft(v, P, s))) {
h = mp(P);
ia = !0;
if (e) {
if (sg(P) || ye(v, P)) z = "sites", Q = !0
} else Y == P ? (z = "sites", Q = !0) : ye(v, P) ? P == ah(l[p]) ? (z = "sites",
g = Q = !0) : L == P ? (z = "sites", g = Q = !0) : St(v, P.form, P) ? (z = "generate", Q = !0) : (z = "sites", g = Q = !0) : em(v, P) && (z = "formfills", Q = !0, ia = !1); if (Q && ek(P, h, ia) && (E++, lj(v, P, z, f, g), np && (!("password" == P.type && op(P)) || Ei) && (!v || !P ? 0 : 1 == (tg(v, P) & 1)) && z && "sites" == z)) Tt(v, P), P.addEventListener("click", function() {
var c = event.target,
d = af + pp(v, c, zi);
null != document.getElementById(d) && (Ei ? rd(v) || fm(v, c, Fi) : (qp(v, P.form), Ld ? bf(v, null, pp(v, P, zi), ug, vg) : popupfilltoggle(v, d, c, ug, vg)));
return !1
}, !1)
}
}
}
}
} else {
var T = dk;
Rt(d) || (T = $j);
for (z =
0; z < D && z < T; z++)
if (e || Ft(d, g[z], f)) try {
var M = g[z],
K = Qd(d, M.form),
E = ia || Cf(d, M.form),
G = Zj(d, M.form);
if (e)
if (sg(g[z])) E = !0, G = !1, Ba(d, M);
else if (ye(d, M)) E = !0, G = !1, Ba(d, M);
else {
Ba(d, M);
continue
}
var Y = kg(d, M.form),
U = !1;
null != B && null != K && K != B && (U = !0, Y = kg(d, M.form, U));
L = mp(M);
if (!(null != h[K] && 1 <= h[K] && !ye(d, M) && (!E || Y) && !Fx && (!dd() || !em(d, M))))
if (C || (E && (0 < Di && p || 0 == Di && n) || (G && !E || Y) && l) && s)
if ((E || Y) && !ek(M, L, !0)) Ba(d, M);
else if (G && !ek(M, L, !1)) Ba(d, M);
else if (!E && !Y && !G && !ek(M, L, !1)) Ba(d, M);
else if (G && am(d,
M, !0)) Ba(d, M);
else if (G && (!M ? 0 : "undefined" != typeof M.readOnly && M.readOnly || "true" === M.getAttribute("aria-readonly"))) Ba(d, M);
else if (E && !Y ? (B = K, H ? init_LPfn() && LPfn && LPfn.ie_setpopupfillhint({
formid: K,
rowtype: "sites"
}) : C || sendBG({
cmd: "setpopupfillhint",
formid: K,
rowtype: "sites"
}), Fc && (O = "sites")) : E && Y ? ce && dd() ? (H ? init_LPfn() && LPfn && LPfn.ie_setpopupfillhint({
formid: K,
rowtype: "sites"
}) : C || sendBG({
cmd: "setpopupfillhint",
formid: K,
rowtype: "sites"
}), Fc && (O = "sites")) : (H ? init_LPfn() && LPfn && LPfn.ie_setpopupfillhint({
formid: K,
rowtype: "formfills"
}) : C || sendBG({
cmd: "setpopupfillhint",
formid: K,
rowtype: "formfills"
}), Fc && (O = ye(d, M) ? M.form && ah(M.form) ? "sites" : "generate" : "formfills")) : !E && Y && Jt(d, M.form) ? (H ? init_LPfn() && LPfn && LPfn.ie_setpopupfillhint({
formid: K,
rowtype: "sites"
}) : C || sendBG({
cmd: "setpopupfillhint",
formid: K,
rowtype: "sites"
}), Fc && (O = "sites")) : (H ? init_LPfn() && LPfn && LPfn.ie_setpopupfillhint({
formid: K,
rowtype: "formfills"
}) : C || sendBG({
cmd: "setpopupfillhint",
formid: K,
rowtype: "formfills"
}), Fc && (O = "formfills")), Nb(d, M, 0,
null, F)) {
Ba(d, M);
Fc ? (U = [], C ? (Q = LP.getMatchingSites(d.location.href, Tk).length, U[O] = 1 != Q ? Q : 0) : U = Ef, dd() && em(d, M) ? lj(d, M, "formfills", U) : lj(d, M, O, U)) : lj(d, M);
C || Ut && O && (null != typeof Ef && null != typeof Ef.sites && 1 > Ef.sites) && na(M, "click", function(c) {
sh(c);
Qb(function() {}, 0);
Cc(c);
return !1
}, !1);
if (np && (!("password" == M.type && op(M)) || Ei) && !(!d || !M ? 0 : 1 == (tg(d, M) & 1)) && "sites" == O) Tt(d, M), na(M, "click", function(c) {
var e = sh(c),
f = af + Ba(d, e);
if (null != d.getElementById(f)) Ei ? rd(d) || fm(d, e, Fi) : (qp(d, M.form), bf(d, null,
Ba(d, e), ug, vg));
else if (Gx) try {
Vt(c)
} catch (g) {}
return !1
}, !1);
null == h[K] ? h[K] = 1 : h[K]++
} else Ba(d, M)
} catch (W) {
Ht && Cb("error: " + W.message + " stack: " + W.stack)
}
}
C || (!1 == fk && Qb(function() {}, 500), fk = !0)
}
}
}
}
}
}, 50))
}
"function" == typeof Wt && Wt(c)
}
}
function Dx(c) {
if (!c) return !1;
try {
Df(c.location.href)
} catch (e) {
return !1
}
var f = bk;
ck(c) || (f = Ci);
for (var d = c.getElementsByTagName("form"), g = !1, h = 0; h < d.length && h < f; h++) {
g = Cf(c, d[h], !0);
if (null == g) break;
if (g) return g
}
return !1
}
function Ex(c) {
if (!c) return !1;
try {
Df(c.location.href)
} catch (e) {
return !1
}
var f =
bk;
ck(c) || (f = Ci);
for (var d = c.getElementsByTagName("form"), g = !1, h = 0; h < d.length && h < f; h++)
if (g = Zj(c, d[h])) return g;
return !1
}
function Cf(c, e, f) {
if (null == c || null == e || e.elements.length > dp) return !1;
var d = Qd(c, e),
g = ep(c, d, "is_login");
if (null != g) return fp++, g;
gp++;
try {
var h = Df(c.location.href)
} catch (l) {
return !1
}
for (var n = !1, p = g = 0, q = 0, r = null, t = 0; t < Ai && t < e.elements.length; t++) {
var A = e.elements[t];
"INPUT" == A.tagName && ("password" == A.type ? g++ : ("text" == A.type || "email" == A.type) && p++);
if ("INPUT" == A.tagName && "submit" ==
A.type || "BUTTON" == A.tagName) q++, r = A
}
if (1 == q && 2 >= p && 0 < g && Kt(r)) return !0;
var q = p = 0,
r = !oc(e),
y = !1;
e = e.elements;
for (t = 0; t < Ai && t < e.length; t++)
if (A = e[t], n = !1, "FIELDSET" != A.tagName && (Qt(c, A), Wj(c, A) && !bm(A)))
if (Ot(A) && (n = !0), 1 < g && Lt(c, A)) q++;
else {
var J = hp(c, A);
if (!("text" == A.type && (J === cm || J === Mt)))
if ("password" == A.type || n || "text" == A.type && J === Xj || "text" == A.type && J === Yj) {
if (!("facebook.com" == h && "string" == typeof A.id && A.id.match(/^[a-z0-9]{6}_\d{1,2}_ci_password$/)))
if ("tdbank.com" == h && "string" == typeof A.name &&
"user" == A.name) q++;
else {
if (rp && f) return !0;
if ((!ce || !dd() || !Ld) && !oc(A))
if (y = !0, r) Qd(c, A);
else continue;
if (0 == p && 1 < g && Nt(A)) q++;
else if (A = 2, ce && dd() && Ld && (A = 4), ++p >= A) return Kd(c, d, "is_login", !1), null
}
} else if ("email" == A.type || "text" == A.type || "textarea" == A.type || "tel" == A.type || "url" == A.type) {
if (!oc(A))
if (r) Qd(c, A);
else continue;
q++;
if (ce && 5 < q || !ce && 2 < q) return Kd(c, d, "is_login", !1), null
}
}
if (1 == p || ce && dd() && Ld && 1 < p) return Kd(c, d, "is_login", !0), !0;
y || Kd(c, d, "is_login", !1);
return !1
}
function hc(c, e) {
"document" ==
c && (c = document);
if (null == c || null == e || 0 == e.length || "undefined" == typeof c.getElementsByTagName) return null;
var f, d = c;
if (null == d || null == e || 0 == e.length || "undefined" == typeof d.getElementsByTagName) f = null;
else {
f = f = !0;
for (var g = d.getElementsByName(e), h = [], l = 0; l < g.length; l++) h[h.length] = g[l];
if (f) {
d = d.getElementsByTagName("input");
g = d.length;
g > dk && (g = dk);
for (f = 0; f < g; f++) d[f].id == e && h.push(d[f])
} else(d = hc(d, e)) && h.push(d);
f = h
}
h = [];
for (d = 0; d < f.length; d++) h[h.length] = f[d];
d = f.length;
g = c.getElementById(e);
if (null !=
g) {
if (0 == d || 1 == d && (f[0] == g || null == f[0])) return g;
h[h.length] = g
}
if ((f = e && 0 == e.indexOf(gk) && e.length > gk.length ? !0 : !1) && (f = 0 == e.indexOf(gk) ? e.substr(gk.length) : null, null !== f && (g = null, g = c.getElementsByTagName("INPUT")[f], null != g))) return g;
if (1 == d) return h[0];
if (0 == d) return null;
d = [];
f = 0;
g = -1;
if ("undefined" != typeof Math) {
for (var l = Math.floor(1E4 * Math.random()), n = 0; n < h.length; n++) {
d[n] = 0;
if ("INPUT" == h[n].tagName || "input" == h[n].tagName) d[n] += 20, "hidden" != h[n].type && (d[n] += 10);
null != h[n].style && "none" !=
h[n].style.display && Nb(c, h[n], 0, null, l, !0) && (d[n] += 5);
Ld && sp(h[n]) && (d[n] += 7);
null != h[n].style && "hidden" != h[n].style.visibility && (d[n] += 3);
h[n] == Xd && null != Xd ? d[n] += 5 : h[n] == c.g_popupfill_parent && null != c.g_popupfill_parent && (d[n] += 5);
d[n] > f && (f = d[n], g = n)
}
return 0 <= g ? h[g] : null
}
}
function ye(c, e) {
if (null == c || null == e || "INPUT" != e.tagName) return !1;
try {
var f = Df(c.location.href)
} catch (d) {
return !1
}
if (!Wj(c, e)) return !1;
var g = !1;
if ("text" == e.type && (0 == e.name.indexOf("pass") || 0 == e.name.toLowerCase().indexOf(Za("Password").toLowerCase()))) return !0;
ce && dd() && Ld && "text" == e.type && 0 <= e.value.toLowerCase().indexOf(Za("Password").toLowerCase()) && (g = !0);
return "password" == e.type || g ? "facebook.com" == f && "string" == typeof e.id && e.id.match(/^[a-z0-9]{6}_\d{1,2}_ci_password$/) || "tdbank.com" == f && "string" == typeof e.name && "user" == e.name ? !1 : !0 : !1
}
function si(c) {
if ("undefined" == typeof Object.keys) {
var e = Object,
f = Object.prototype.hasOwnProperty,
d = !{
toString: null
}.propertyIsEnumerable("toString"),
g = "toString toLocaleString valueOf hasOwnProperty isPrototypeOf propertyIsEnumerable constructor".split(" "),
h = g.length;
e.keys = function(c) {
if ("object" !== typeof c && ("function" !== typeof c || null === c)) throw new TypeError("Object.keys called on non-object");
var e = [],
p;
for (p in c) f.call(c, p) && e.push(p);
if (d)
for (p = 0; p < h; p++) f.call(c, g[p]) && e.push(g[p]);
return e
}
}
return 0 === Object.keys(c).length
}
function Kh(c, e) {
if ("undefined" != typeof c && null != c) {
if (e && "string" == typeof c.id && "" != c.id) return c.id;
if ("string" == typeof c.name && "" != c.name) return c.name;
if ("string" == typeof c.id) return c.id
}
return ""
}
function Ro(c) {
Hx++;
if (!c) return 0;
var e = c.innerWidth,
f = c.document;
if (!f) return 0;
c = null;
"undefined" != typeof f.body ? c = f.body : f.getElementById("main") && (c = f.getElementById("main"));
var d = f.getElementById("_lpinvis");
null == d && (d = f.createElement("div"), d.id.left = "_lpinvis", d.style.left = "0px", d.style.right = "0px", d.style.top = "0px", d.style.height = "0px", d.style.visibility = "hidden", c.appendChild(d));
var f = "undefined" != typeof window && window ? window : f.defaultView,
g;
g = "undefined" != typeof f.getComputedStyle ? f.getComputedStyle(c) :
c.currentStyle;
if (!g) return 0;
f = parseInt(g.marginLeft);
g = parseInt(g.marginRight);
0 < d.offsetWidth && (e = 0 < f || 0 < g ? d.offsetWidth + g + f : d.offsetWidth);
c.removeChild(d);
return e
}
function rh(c) {
if (!c) return !1;
var e = [],
f = [],
d = [],
g = 0,
h, l = 0;
if ("undefined" != typeof Math) {
for (var n = Math.floor(1E4 * Math.random()), p = ["input"], q = 0; q < p.length; q++)
for (var r = c.getElementsByTagName(p[q]), t = 0; t < r.length && !(100 < t); t++)
if (Nb(c, r[t], 0, null, n)) {
h = r[t];
if (null != h.id && "" != h.id) {
var A = d[h.id];
if (null == A) d[h.id] = !0;
else continue
}
if (null !=
h.name && "" != h.name)
if (A = f[h.name], null == A) f[h.name] = !0;
else continue;
if (!kb(Ba(c, h), e)) {
A = hp(c, h);
if (null == h.form && ("password" == h.type || "text" == h.type && A === Xj || "text" == h.type && A === Yj))
if (g++, (h = Ba(c, h)) && h.toLowerCase().indexOf(Za("Password")) && 0 < t) h = Ba(c, r[t - 1]), RegExp(Za("ff_username_regexp"), "i").exec(h) && l++;
if (2 <= g && 2 <= l) break
}
}
return 1 == g || 1 == l ? !0 : !1
}
}
function Xt(c, e, f) {
if (null == c || null == e) return !1;
var d = c.getElementById(e + "_icon");
if (th && rd(c)) return null != d && (d.style.opacity = "1", d.style.filter =
"alpha(opacity=100)"), !1;
if (null != d) {
var g = !0;
if (null != c.getElementById(e)) {
var h = !1;
f = Ba(c, f);
if (f = kd(c, f)) h = f.fillhint;
"formfills" == h ? (d.src = wg, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + uh + "';"), g = !1) : "offersave" == h ? g = !1 : "generate" == h && th && (d.src = xg, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + de + "';"), g = !1)
}
g && (d.src = vh, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + pg + "';"));
d.style.opacity = "1";
d.style.filter =
"alpha(opacity=100)"
}
Fc && (c = c.getElementById(e + "_numspan"), null != c && Yt && (c.style.backgroundColor = "#CCFF99"))
}
function Zt(c, e, f) {
if (null == c || null == e) return !1;
var d = c.getElementById(e + "_icon");
if (th && rd(c)) return null != d && (d.style.opacity = "0.6"), !1;
if (null != d) {
if (null == c.getElementById(e)) return !1;
var g = !1;
f = Ba(c, f);
if (f = kd(c, f)) g = f.fillhint;
if (null == g || "" === g || "sites" !== g && "formfills" !== g && "generate" !== g && "offersave" !== g) g = "default";
"default" == g || "sites" == g ? (d.src = vh, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" +
pg + "';"), d.style.opacity = "0.6", d.style.filter = "alpha(opacity=60)") : "formfills" == g ? (d.src = wg, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + uh + "';"), d.style.opacity = "0.6", d.style.filter = "alpha(opacity=60)") : "generate" == g && (d.src = xg, d.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + de + "';"), d.style.opacity = "0.6", d.style.filter = "alpha(opacity=60)")
}
Fc && (c = c.getElementById(e + "_numspan"), null != c && (Yt ? c.style.backgroundColor = "#FFFFFF" : c.style.display = ""))
}
function Yc(c) {
if (Mb && (c || (c = document), null != c)) {
"undefined" != typeof vi && (vi = null);
var e, f = c.getElementsByTagName("iframe"),
d = [];
for (e = 0; e < f.length; e++) d[e] = f[e];
for (e = 0; e < f.length; e++) {
var g = d[e];
if ("undefined" != typeof g.id && null != g.id) {
var h = ui;
if (0 == g.id.indexOf(h)) {
if (th) {
var l = g.id.substr(h.length);
if (null != hc(c, l) && (h = c, null != h && th)) {
var n = l,
l = hc(h, n),
p = kd(h, n),
q = !1,
n = "sites";
p && "undefined" != typeof p.dofloater && (q = p.dofloater);
p && "undefined" != typeof p.fillhint && (n = p.fillhint);
l && (q ? (p = l, l = n,
h || (h = C && LP ? LP.getBrowser().contentDocument : document), h && (n = Ba(h, p), p = kd(h, n), !l && p && (l = p.fillhint), p = hc(h, af + n), h = hc(h, af + n + "_icon"), p && h && ("formfills" == l ? (h.src = wg, h.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + uh + "';")) : "generate" == l ? (h.src = xg, h.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + de + "';")) : (h.src = vh, h.setAttribute("onerror", "this.removeAttribute('onerror'); this.src = '" + pg + "';")), h.style.opacity = "0.6", h.style.filter = "alpha(opacity=60)"))) :
Gi(h, l, n))
}
}
g.parentNode && g.parentNode.removeChild(g)
}
}
}
if ("undefined" != typeof rg && (rg.sites = -1, rg.formfills = -1, Ld && (c || (c = document, !c && LP && (c = LP.getBrowser().contentDocument)), c))) a: if (null == c && (c = document), null != c) {
try {
if (0 < c.location.href.indexOf(".xul")) break a
} catch (r) {
break a
}
e = Sl();
for (f = 0; f < e.length; f++) h = e[f].idorname, d = e[f].fillhint, l = e[f].dofloater, (g = e[f].IHTMLElement) || (g = hc(c, h)), g && !l && (h = c, null == h && (h = document), null != h && g && Gi(h, g, d, !1))
}
if (Hi || gm)
if (gm = Hi = !1, C) {
for (c = LP.getBrowser().contentWindow; null !=
c.top && c.top != c;) c = c.top;
c = cb(c.document);
LP.checkShouldRecheck(c)
} else checkShouldRecheck();
Kn = Xd;
Xd = null;
hm = Ff = hk = ik = 0;
"undefined" != typeof H && H && "undefined" != typeof init_LPfn && init_LPfn() && LPfn && LPfn.ie_set_kbdnav(!1)
}
}
function Bi(c) {
if (Mb)
if (c || (c = document ? document : LP.getBrowser().contentDocument), null == c && "undefined" != typeof C && C) jk();
else if (!(0 < c.location.href.indexOf(".xul"))) {
var e = c;
e || (e = C && LP ? LP.getBrowser().contentDocument : document);
if (e && "function" == typeof e.getElementsByName) {
var f =
$t(e);
if (!si(f)) {
try {
var d, g = 0;
for (d in f)
if (f.hasOwnProperty(d)) {
var h = f[d].substr(af.length);
if (null != h && 0 < h.length) {
var l = h,
n = hc(e, l);
if (null == n && !Hi && !gm) au(e, f[d]) && g++, Fc && tp(e, f[d]) && g++, delete f[d];
else if (Fc) {
if (null != e.getElementById(f[d])) {
var p = "",
q = kd(e, l);
q && (p = q.fillhint);
null != p && "sites" != p && (p = null);
l = {};
C ? l[p] = q.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment