1!function(){function t(t,e){if(t===e)return 0;var n=t.length,r=e.length;if(!n)return r;if(!r)return n;for(var i=new Array(n+1),a=0;a<=n;a++)i[a]=new Array(r+1),i[a][0]=a;for(var o=0;o<=r;o++)i[0][o]=o;for(a=1;a<=n;a++)for(o=1;o<=r;o++){var u=t.charAt(a-1)===e.charAt(o-1)?0:1,s=i[a-1][o]+1,l=i[a][o-1]+1,c=i[a-1][o-1]+u;i[a][o]=Math.min(s,l,c)}return i[n][r]}function e(e){for(var n=null,r=1/0,i=0;i<m.length;i++){var a=t(e,m[i]);a<r&&(r=a,n=m[i])}return{cand:n,dist:r}}function n(t){if(!t||-1===t.indexOf("@"))return null;var n=t.split("@");if(2!==n.length)return null;var r=(n[0]||"").trim(),i=(n[1]||"").trim().toLowerCase();if(!r||!i)return null;var a=e(i);return a.cand&&a.dist<=2&&a.cand!==i?r+"@"+a.cand:null}function r(t){var e=t.nextElementSibling;if(e&&e.classList&&e.classList.contains("email-suggestion"))return e;var n=document.createElement("div");return n.className="email-suggestion",n.style.display="none",n.style.marginTop="6px",n.style.fontSize="0.95rem",t.parentNode.insertBefore(n,t.nextSibling),n}function i(t){t.style.display="none",t.innerHTML=""}function a(t,e,n){function r(){n.value=e,i(t),a.removeEventListener("click",r)}t.innerHTML='<button type="button" class="email-suggestion">Oops! Did you mean <strong class="red">'+e+"</strong>?</button>";var a=t.querySelector("button");a.addEventListener("click",r),t.style.display="block"}function o(t){if(!t)return!1;if(-1===(t=String(t).trim()).indexOf("@"))return!1;var e=t.split("@");if(2!==e.length)return!1;var n=e[0],r=e[1];return!(!n||!r)&&-1!==r.indexOf(".")}function u(t){return!!t&&String(t).trim().replace(/[^\d]/g,"").length>=8}function s(t){for(;t&&t!==document&&"FORM"!==t.nodeName;)t=t.parentNode;return t&&"FORM"===t.nodeName?t:null}function l(t,e,n,r){function a(){n.value=e,i(t),!!r.querySelector('input[type="password"]')||r.submit(),u.removeEventListener("click",a),s.removeEventListener("click",o)}function o(){i(t),r.submit(),u.removeEventListener("click",a),s.removeEventListener("click",o)}t.innerHTML='<div class="email-suggestion"><div style="margin-bottom:6px">Oops! Did you mean <strong class="red">'+e+'</strong>?</div><div><button type="button" class="btn btn-sd btn-sd-red" data-act="apply">Use this</button> <button type="button" class="btn btn-default" data-act="ignore">Submit anyway</button></div></div>';var u=t.querySelector('[data-act="apply"]'),s=t.querySelector('[data-act="ignore"]');u.addEventListener("click",a),s.addEventListener("click",o),t.style.display="block",n.focus()}function c(t){function e(){var e=n((t.value||"").trim());e?a(d,e,t):i(d)}function c(){i(d)}if(t&&"1"!==t.dataset.emailSuggestBound){t.dataset.emailSuggestBound="1";var d=r(t);t.addEventListener("blur",e),t.addEventListener("focus",c),t.addEventListener("keyup",e),t.addEventListener("input",c);var m=s(t);
1m&&!m.dataset.emailSuggestSubmitBound&&(m.dataset.emailSuggestSubmitBound="1",m.addEventListener("submit",function(){i(d);var e=(t.value||"").trim();if(e&&(!u(e)||o(e))&&o(e)){var r=n(e);if(r)return void l(d,r,t,m)}}))}}function d(){for(var t=document.querySelectorAll(v),e=0;e<t.length;e++)c(t[e])}const m=["gmail.com","yahoo.com","hotmail.com","outlook.com","aol.com","icloud.com","msn.com","live.com","me.com"],v=".js-email-typo-suggest";document.addEventListener("DOMContentLoaded",d)}();
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.