var Mailcheck={domainThreshold:2,secondLevelThreshold:2,topLevelThreshold:2,defaultDomains:["gmail.com"],defaultSecondLevelDomains:["gmail"],defaultTopLevelDomains:["com"],run:function(e){e.domains=e.domains||Mailcheck.defaultDomains,e.secondLevelDomains=e.secondLevelDomains||Mailcheck.defaultSecondLevelDomains,e.topLevelDomains=e.topLevelDomains||Mailcheck.defaultTopLevelDomains,e.distanceFunction=e.distanceFunction||Mailcheck.sift4Distance;var n=function(e){return e},a=e.suggested||n,i=e.empty||n,t=Mailcheck.suggest(Mailcheck.encodeEmail(e.email),e.domains,e.secondLevelDomains,e.topLevelDomains,e.distanceFunction);return t?a(t):i()},suggest:function(e,n,a,i,t){e=e.toLowerCase();var o=this.splitEmail(e);if(a&&i&&-1!==a.indexOf(o.secondLevelDomain)&&-1!==i.indexOf(o.topLevelDomain))return!1;var l=this.findClosestDomain(o.domain,n,t,this.domainThreshold);if(l)return l!=o.domain&&{address:o.address,domain:l,full:o.address+"@"+l};var r=this.findClosestDomain(o.secondLevelDomain,a,t,this.secondLevelThreshold),s=this.findClosestDomain(o.topLevelDomain,i,t,this.topLevelThreshold);if(o.domain){l=o.domain;var c=!1;if(r&&r!=o.secondLevelDomain&&(l=l.replace(o.secondLevelDomain,r),c=!0),s&&s!=o.topLevelDomain&&""!==o.secondLevelDomain&&(l=l.replace(new RegExp(o.topLevelDomain+"$"),s),c=!0),c)return{address:o.address,domain:l,full:o.address+"@"+l}}return!1},findClosestDomain:function(e,n,a,i){var t;i=i||this.topLevelThreshold;var o=1/0,l=null;if(!e||!n)return!1;a||(a=this.sift4Distance);for(var r=0;r=Math.abs(f.c2-f.c1))?c++:f.trans||(f.trans=!0,c++);break}o>f.c2&&l>f.c1?d.splice(u,1):u++}d.push({c1:o,c2:l,trans:h})}else{r+=s,s=0,o!=l&&(o=l=Math.min(o,l));for(var m=0;m=i||l>=t)&&(r+=s,s=0,o=l=Math.min(o,l))}return r+=s,Math.round(Math.max(i,t)-r+c)},splitEmail:function(e){var n=(e=null!==e?e.replace(/^\s*/,"").replace(/\s*$/,""):null).split("@");if(n.length<2)return!1;for(var a=0;a