2016-12-13 06:23:42 -05:00
/ * ! z x c v b n - v 4 . 4 . 1
2013-12-04 14:53:10 -05:00
* realistic password strength estimation
* https : //github.com/dropbox/zxcvbn
* Copyright ( c ) 2012 Dropbox , Inc . ; Licensed MIT * /
2016-12-13 06:23:42 -05:00
( function ( f ) { if ( typeof exports === "object" && typeof module !== "undefined" ) { module . exports = f ( ) } else if ( typeof define === "function" && define . amd ) { define ( [ ] , f ) } else { var g ; if ( typeof window !== "undefined" ) { g = window } else if ( typeof global !== "undefined" ) { g = global } else if ( typeof self !== "undefined" ) { g = self } else { g = this } g . zxcvbn = f ( ) } } ) ( function ( ) { var define , module , exports ; return ( function e ( t , n , r ) { function s ( o , u ) { if ( ! n [ o ] ) { if ( ! t [ o ] ) { var a = typeof require == "function" && require ; if ( ! u && a ) return a ( o , ! 0 ) ; if ( i ) return i ( o , ! 0 ) ; var f = new Error ( "Cannot find module '" + o + "'" ) ; throw f . code = "MODULE_NOT_FOUND" , f } var l = n [ o ] = { exports : { } } ; t [ o ] [ 0 ] . call ( l . exports , function ( e ) { var n = t [ o ] [ 1 ] [ e ] ; return s ( n ? n : e ) } , l , l . exports , e , t , n , r ) } return n [ o ] . exports } var i = typeof require == "function" && require ; for ( var o = 0 ; o < r . length ; o ++ ) s ( r [ o ] ) ; return s } ) ( { 1 : [ function ( require , module , exports ) {
var adjacency _graphs ; adjacency _graphs = { qwerty : { "!" : [ "`~" , null , null , "2@" , "qQ" , null ] , '"' : [ ";:" , "[{" , "]}" , null , null , "/?" ] , "#" : [ "2@" , null , null , "4$" , "eE" , "wW" ] , $ : [ "3#" , null , null , "5%" , "rR" , "eE" ] , "%" : [ "4$" , null , null , "6^" , "tT" , "rR" ] , "&" : [ "6^" , null , null , "8*" , "uU" , "yY" ] , "'" : [ ";:" , "[{" , "]}" , null , null , "/?" ] , "(" : [ "8*" , null , null , "0)" , "oO" , "iI" ] , ")" : [ "9(" , null , null , "-_" , "pP" , "oO" ] , "*" : [ "7&" , null , null , "9(" , "iI" , "uU" ] , "+" : [ "-_" , null , null , null , "]}" , "[{" ] , "," : [ "mM" , "kK" , "lL" , ".>" , null , null ] , "-" : [ "0)" , null , null , "=+" , "[{" , "pP" ] , "." : [ ",<" , "lL" , ";:" , "/?" , null , null ] , "/" : [ ".>" , ";:" , "'\"" , null , null , null ] , 0 : [ "9(" , null , null , "-_" , "pP" , "oO" ] , 1 : [ "`~" , null , null , "2@" , "qQ" , null ] , 2 : [ "1!" , null , null , "3#" , "wW" , "qQ" ] , 3 : [ "2@" , null , null , "4$" , "eE" , "wW" ] , 4 : [ "3#" , null , null , "5%" , "rR" , "eE" ] , 5 : [ "4$" , null , null , "6^" , "tT" , "rR" ] , 6 : [ "5%" , null , null , "7&" , "yY" , "tT" ] , 7 : [ "6^" , null , null , "8*" , "uU" , "yY" ] , 8 : [ "7&" , null , null , "9(" , "iI" , "uU" ] , 9 : [ "8*" , null , null , "0)" , "oO" , "iI" ] , ":" : [ "lL" , "pP" , "[{" , "'\"" , "/?" , ".>" ] , ";" : [ "lL" , "pP" , "[{" , "'\"" , "/?" , ".>" ] , "<" : [ "mM" , "kK" , "lL" , ".>" , null , null ] , "=" : [ "-_" , null , null , null , "]}" , "[{" ] , ">" : [ ",<" , "lL" , ";:" , "/?" , null , null ] , "?" : [ ".>" , ";:" , "'\"" , null , null , null ] , "@" : [ "1!" , null , null , "3#" , "wW" , "qQ" ] , A : [ null , "qQ" , "wW" , "sS" , "zZ" , null ] , B : [ "vV" , "gG" , "hH" , "nN" , null , null ] , C : [ "xX" , "dD" , "fF" , "vV" , null , null ] , D : [ "sS" , "eE" , "rR" , "fF" , "cC" , "xX" ] , E : [ "wW" , "3#" , "4$" , "rR" , "dD" , "sS" ] , F : [ "dD" , "rR" , "tT" , "gG" , "vV" , "cC" ] , G : [ "fF" , "tT" , "yY" , "hH" , "bB" , "vV" ] , H : [ "gG" , "yY" , "uU" , "jJ" , "nN" , "bB" ] , I : [ "uU" , "8*" , "9(" , "oO" , "kK" , "jJ" ] , J : [ "hH" , "uU" , "iI" , "kK" , "mM" , "nN" ] , K : [ "jJ" , "iI" , "oO" , "lL" , ",<" , "mM" ] , L : [ "kK" , "oO" , "pP" , ";:" , ".>" , ",<" ] , M : [ "nN" , "jJ" , "kK" , ",<" , null , null ] , N : [ "bB" , "hH" , "jJ" , "mM" , null , null ] , O : [ "iI" , "9(" , "0)" , "pP" , "lL" , "kK" ] , P : [ "oO" , "0)" , "-_" , "[{" , ";:" , "lL" ] , Q : [ null , "1!" , "2@" , "wW" , "aA" , null ] , R : [ "eE" , "4$" , "5%" , "tT" , "fF" , "dD" ] , S : [ "aA" , "wW" , "eE" , "dD" , "xX" , "zZ" ] , T : [ "rR" , "5%" , "6^" , "yY" , "gG" , "fF" ] , U : [ "yY" , "7&" , "8*" , "iI" , "jJ" , "hH" ] , V : [ "cC" , "fF" , "gG" , "bB" , null , null ] , W : [ "qQ" , "2@" , "3#" , "eE" , "sS" , "aA" ] , X : [ "zZ" , "sS" , "dD" , "cC" , null , null ] , Y : [ "tT" , "6^" , "7&" , "uU" , "hH" , "gG" ] , Z : [ null , "aA" , "sS" , "xX" , null , null ] , "[" : [ "pP" , "-_" , "=+" , "]}" , "'\"" , ";:" ] , "\\" : [ "]}" , null , null , null , null , null ] , "]" : [ "[{" , "=+" , null , "\\|" , null , "'\"" ] , "^" : [ "5%" , null , null , "7&" , "yY" , "tT" ] , _ : [ "0)" , null , null , "=+" , "[{" , "pP" ] , "`" : [ null , null , null , "1!" , null , null ] , a : [ null , "qQ" , "wW" , "sS" , "zZ" , null ] , b : [ "vV" , "gG" , "hH" , "nN" , null , null ] , c : [ "xX" , "dD" , "fF" , "vV" , null , null ] , d : [ "sS" , "eE" , "rR" , "fF" , "cC" , "xX" ] , e : [ "wW" , "3#" , "4$" , "rR" , "dD" , "sS" ] , f : [ "dD" , "rR" , "tT" , "gG" , "vV" , "cC" ] , g : [ "fF" , "tT" , "yY" , "hH" , "bB" , "vV" ] , h : [ "gG" , "yY" , "uU" , "jJ" , "nN" , "bB" ] , i : [ "uU" , "8*" , "9(" , "oO" , "kK" , "jJ" ] , j : [ "hH" , "uU" , "iI" , "kK" , "mM" , "nN" ] , k : [ "jJ" , "iI" , "oO" , "lL" , ",<" , "mM" ] , l : [ "kK" , "oO" , "pP" , ";:" , ".>" , ",<" ] , m : [ "nN" , "jJ" , "kK" , ",<" , null , null ] , n : [ "bB" , "hH" , "jJ" , "mM" , null , null ] , o : [ "iI" , "9(" , "0)" , "pP" , "lL" , "kK" ] , p : [ "oO" , "0)" , "-_" , "[{" , ";:" , "lL" ] , q : [ null , "1!" , "2@" , "wW" , "aA" , null ] , r : [ "eE" , "4$" , "5%" , "tT" , "fF" , "dD" ] , s : [ "aA" , "wW" , "eE" , "dD" , "xX" , "zZ" ] , t : [ "rR" , "5%" , "6^" , "yY" , "gG" , "fF" ] , u : [ "yY" , "7&" , "8*" , "iI" , "jJ" , "hH" ] , v : [ "cC" , "fF" , "gG" , "bB" , null , null ] , w : [ "qQ" , "2@" , "3#" , "eE" , "sS" , "aA" ] , x : [ "zZ" , "sS" , "dD" , "cC" , null , null ] , y : [ "tT" , "6^" , "7&" , "uU" , "hH" , "gG" ] , z : [ null , "aA" , "sS" , "xX" , null , null ] , "{" : [ "pP" , "-_" , "=+" , "]}" , "'\"" , ";:" ] , "|" : [ "]}" , null , null , null , null , null ] , "}" : [ "[{" , "=+" , null , "\\|" , null , "'\"" ] , "~" : [ null , null , null , "1!" , null , null ] } , dvorak : { "!" : [ "`~" , null , null , "2@" , "'\"" , null ] , '"' : [ null , "1!" , "2@" , ",<" , "aA" , null ] , "#" : [ "2@" , null , null , "4$" , ".>" , ",<" ] , $ : [ "3#" , null , null , "5%" , "pP" , ".>" ] , "%" : [ "4$" , null , null , "6^" , "yY" , "pP" ] , "&" : [ "6^" , null , null , "8*" , "gG" , "fF" ] , "'" : [ null , "1!" , "2@" , ",<" , "aA" , null ] , "(" : [ "8*" , null , null , "0)" , "rR" , "cC" ] , ")" : [ "9(" , null , null , "[{" , "lL" , "rR" ] , "*" : [ "7&" , null , null , "9(" , "cC" , "gG" ] , "+" : [ "/?" , "]}" , null , "\\|" , null , "-_" ] , "," : [ "'\"" , "2@" , "3#" , ".>" , "oO" , "aA" ] , "-" : [ "sS" , "/?" , "=+" , null , null , "zZ" ] , "." : [ ",<" , "3#" , "4$" , "pP" , "eE" , "oO" ] , "/" : [ "lL" , "[{" , "]}" , "=+" , "-_" , "sS" ] , 0 : [ "9(" , null , null , "[{" , "lL" , "rR" ] , 1 : [ "`~" , null , null , "2@" , "'\"" , null ] , 2 : [ "1!" , null , null , "3#" , ",<" , "'\"" ] , 3 : [ "2@" , null , null , "4$" , ".>" , ",<" ] , 4 : [ "3#" , null , null , "5%" , "pP" , ".>" ] , 5 : [ "4$" , null , null , "6^" , "yY" , "pP" ] , 6 : [ "5%" , null , null , "7&" , " f
} , { } ] , 2 : [ function ( require , module , exports ) {
var feedback , scoring ; scoring = require ( "./scoring" ) , feedback = { default _feedback : { warning : "" , suggestions : [ "Use a few words, avoid common phrases" , "No need for symbols, digits, or uppercase letters" ] } , get _feedback : function ( e , s ) { var a , t , r , n , o , i ; if ( 0 === s . length ) return this . default _feedback ; if ( e > 2 ) return { warning : "" , suggestions : [ ] } ; for ( n = s [ 0 ] , i = s . slice ( 1 ) , t = 0 , r = i . length ; t < r ; t ++ ) o = i [ t ] , o . token . length > n . token . length && ( n = o ) ; return feedback = this . get _match _feedback ( n , 1 === s . length ) , a = "Add another word or two. Uncommon words are better." , null != feedback ? ( feedback . suggestions . unshift ( a ) , null == feedback . warning && ( feedback . warning = "" ) ) : feedback = { warning : "" , suggestions : [ a ] } , feedback } , get _match _feedback : function ( e , s ) { var a , t ; switch ( e . pattern ) { case "dictionary" : return this . get _dictionary _match _feedback ( e , s ) ; case "spatial" : return a = e . graph . toUpperCase ( ) , t = 1 === e . turns ? "Straight rows of keys are easy to guess" : "Short keyboard patterns are easy to guess" , { warning : t , suggestions : [ "Use a longer keyboard pattern with more turns" ] } ; case "repeat" : return t = 1 === e . base _token . length ? 'Repeats like "aaa" are easy to guess' : 'Repeats like "abcabcabc" are only slightly harder to guess than "abc"' , { warning : t , suggestions : [ "Avoid repeated words and characters" ] } ; case "sequence" : return { warning : "Sequences like abc or 6543 are easy to guess" , suggestions : [ "Avoid sequences" ] } ; case "regex" : if ( "recent_year" === e . regex _name ) return { warning : "Recent years are easy to guess" , suggestions : [ "Avoid recent years" , "Avoid years that are associated with you" ] } ; break ; case "date" : return { warning : "Dates are often easy to guess" , suggestions : [ "Avoid dates and years that are associated with you" ] } } } , get _dictionary _match _feedback : function ( e , s ) { var a , t , r , n , o ; return n = "passwords" === e . dictionary _name ? ! s || e . l33t || e . reversed ? e . guesses _log10 <= 4 ? "This is similar to a commonly used password" : void 0 : e . rank <= 10 ? "This is a top-10 common password" : e . rank <= 100 ? "This is a top-100 common password" : "This is a very common password" : "english" === e . dictionary _name ? s ? "A word by itself is easy to guess" : void 0 : "surnames" === ( a = e . dictionary _name ) || "male_names" === a || "female_names" === a ? s ? "Names and surnames by themselves are easy to guess" : "Common names and surnames are easy to guess" : "" , r = [ ] , o = e . token , o . match ( scoring . START _UPPER ) ? r . push ( "Capitalization doesn't help very much" ) : o . match ( scoring . ALL _UPPER ) && o . toLowerCase ( ) !== o && r . push ( "All-uppercase is almost as easy to guess as all-lowercase" ) , e . reversed && e . token . length >= 4 && r . push ( "Reversed words aren't much harder to guess" ) , e . l33t && r . push ( "Predictable substitutions like '@' instead of 'a' don't help very much" ) , t = { warning : n , suggestions : r } } } , module . exports = feedback ;
} , { "./scoring" : 6 } ] , 3 : [ function ( require , module , exports ) {
var frequency _lists ; frequency _lists = { passwords : " 123456 , cnffjbeq , 12345678 , djregl , 123456789 , 12345 , 1234 , 111111 , 1234567 , qentba , 123123 , onfronyy , nop123 , sbbgonyy , zbaxrl , yrgzrva , funqbj , znfgre , 696969 , zhfgnat , 666666 , djreglhvbc , 123321 , 1234567890 , chffl , fhcrezna , 654321 , 1 dnm2jfk , 7777777 , shpxlbh , dnmjfk , wbeqna , 123 djr , 000000 , xvyyre , gehfgab1 , uhagre , uneyrl , mkpioaz , nfqstu , ohfgre , ongzna , fbppre , gvttre , puneyvr , fhafuvar , vybirlbh , shpxzr , enatre , ubpxrl , pbzchgre , fgnejnef , nffubyr , crccre , xynfgre , 112233 , mkpioa , serrqbz , cevaprff , znttvr , cnff , tvatre , 11111111 , 131313 , shpx , ybir , purrfr , 159753 , fhzzre , puryfrn , qnyynf , ovgrzr , zngevk , lnaxrrf , 6969 , pbeirggr , nhfgva , npprff , guhaqre , zreyva , frperg , qvnzbaq , uryyb , unzzre , shpxre , 1234 djre , fvyire , tsuwxz , vagrearg , fnznagun , tbysre , fpbbgre , grfg , benatr , pbbxvr , d1j2r3e4g5 , znirevpx , fcnexl , cubravk , zvpxrl , ovtqbt , fabbcl , thvgne , jungrire , puvpxra , pnzneb , zreprqrf , crnahg , sreenev , snypba , pbjobl , jrypbzr , frkl , fnzfhat , fgrryref , fzbxrl , qnxbgn , nefrany , obbzre , rntyrf , gvtref , znevan , anfpne , obbobb , tngrjnl , lryybj , cbefpur , zbafgre , fcvqre , qvnoyb , unaanu , ohyyqbt , whavbe , ybaqba , checyr , pbzcnd , ynxref , vprzna , djre1234 , uneqpber , pbjoblf , zbarl , onanan , app1701 , obfgba , graavf , d1j2r3e4 , pbssrr , fpbbol , 123654 , avxvgn , lnznun , zbgure , onearl , oenaql , purfgre , shpxbss , byvire , cynlre , sberire , enatref , zvqavtug , puvpntb , ovtqnqql , erqfbk , natry , onqobl , sraqre , wnfcre , fynlre , enoovg , angnfun , znevar , ovtqvpx , jvmneq , zneyobeb , envqref , cevapr , pnfcre , svfuvat , sybjre , wnfzvar , vjnagh , cnagvrf , nqvqnf , jvagre , jvaare , tnaqnys , cnffjbeq1 , ragre , tuoqga , 1 d2j3r4e , tbyqra , pbpnpbyn , wbeqna23 , jvafgba , znqvfba , natryf , cnagure , oybjzr , frkfrk , ovtgvgf , fcnaxl , ovgpu , fbcuvr , nfqsnfqs , ubeal , guk1138 , gblbgn , gvtre , qvpx , pnanqn , 12344321 , oybjwbo , 8675309 , zhssva , yvirecbb , nccyrf , djregl123 , cnffj0eq , nopq1234 , cbxrzba , 123 nop , fyvcxabg , dnmkfj , 123456 n , fpbecvba , djnfmk , ohggre , fgnegerx , envaobj , nfqstuwxy , enmm , arjlbex , erqfxvaf , trzvav , pnzreba , dnmjfkrqp , sybevqn , yvirecbby , ghegyr , fvreen , ivxvat , obbtre , ohggurnq , qbpgbe , ebpxrg , 159357 , qbycuvaf , pncgnva , onaqvg , wnthne , cnpxref , cbbxvr , crnpurf , 789456 , nfqs , qbycuva , uryczr , oyhr , gurzna , znkjryy , djreglhv , fuvgurnq , ybiref , znqqbt , tvnagf , aveinan , zrgnyyvp , ubgqbt , ebfrohq , zbhagnva , jneevbe , fghcvq , ryrcunag , fhpxvg , fhpprff , obaq007 , wnpxnff , nyrkvf , cbea , yhpxl , fpbecvb , fnzfba , d1j2r3 , nmregl , ehfu2112 , qevire , serqql , 1 d2j3r4e5g , flqarl , tngbef , qrkgre , erq123 , 123456 d , 12345 n , ohoon , perngvir , ibbqbb , tbys , gebhoyr , nzrevpn , avffna , thaare , tnesvryq , ohyyfuvg , nfqstuwx , 5150 , shpxvat , ncbyyb , 1 dnmkfj2 , 2112 , rzvarz , yrtraq , nveobear , orne , ornivf , nccyr , oebbxyla , tbqmvyyn , fxvccl , 4815162342 , ohqql , djreg , xvggra , zntvp , furyol , ornire , cunagbz , nfqnfq , knivre , oenirf , qnexarff , oyvax182 , pbccre , cyngvahz , djrdjr , gbzpng , 01012011 , tveyf , ovtobl , 102030 , navzny , cbyvpr , bayvar , 11223344 , iblntre , yvsrunpx , 12 djnfmk , svfu , favcre , 315475 , gevavgl , oynmre , urnira , ybire , fabjonyy , cynlobl , ybirzr , ohooyrf , ubbgref , pevpxrg , jvyybj , qbaxrl , gbctha , avagraqb , fnghea , qrfgval , cnxvfgna , chzcxva , qvtvgny , fretrl , erqjvatf , rkcybere , gvgf , cevingr , ehaare , gurebpx , thvaarff , ynfirtnf , orngyrf , 789456123 , sver , pnffvr , puevfgva , djregl1 , prygvp , nfqs1234 , naqerl , oebapbf , 007007 , onoltvey , rpyvcfr , syhssl , pnegzna , zvpuvtna , pnebyvan , grfgvat , nyrknaqr , oveqvr , cnagren , pureel , inzcver , zrkvpb , qvpxurnq , ohssnyb , travhf , zbagnan , orre , zvarpensg , znkvzhf , sylref , ybiryl , fgnyxre , zrgnyyvpn , qbttvr , favpxref , fcrrql , oebapb , yby123 , cnenqvfr , lnaxrr , ubefrf , zntahz , qernzf , 147258369 , ynpebffr , bh812 , tbbore , ravtzn , djreglh , fpbggl , cvzcva , obyybpxf , fhesre , pbpx , cbbuorne , trarfvf , fgne , nfq123 , djrnfqmkp , enpvat , uryyb1 , unjnvv , rntyr1 , ivcre , cbbcbb , rvafgrva , obbovrf , 12345 d , ovgpurf , qebjffnc , fvzcyr , onqtre , nynfxn , npgvba , wrfgre , qehzzre , 111222 , fcvgsver , sberfg , znelwnar , punzcvba , qvrfry , firgynan , sevqnl , ubgebq , 147258 , puril , yhpxl1 , jrfgfvqr , frphevgl , tbbtyr , onqnff , grfgre , fubegl , guhzcre , uvgzna , zbmneg , mnd12jfk , obbof , erqqbt , 010203 , yvmneq , n123456 , 123456789 n , ehfyna , rntyr , 1232323 d , fpnesnpr , djregl12 , 147852 , n12345 , ohqqun , cbeab , 420420 , fcvevg , zbarl1 , fgnetngr , djr123 , anehgb , zrephel , yvoregl , 12345 djreg , frzcresv , fhmhxv , cbcpbea , fcbbxl , zneyrl , fpbgynaq , xvggl , purebxrr , ivxvatf , fvzcfbaf , enfpny , djrnfq , uhzzre , ybirlbh , zvpunry1 , cngpurf , ehffvn , whcvgre , crathva , cnffvba , phzfubg , isuols , ubaqn , iynqvzve , fnaqzna , cnffcbeg , envqre , onfgneq , 123789 , vasvavgl , nf
english _wikipedia : " gur , bs , naq , va , jnf , vf , sbe , nf , ba , jvgu , ol , ur , ng , sebz , uvf , na , jrer , ner , juvpu , qbp , uggcf , nyfb , be , unf , unq , svefg , bar , gurve , vgf , nsgre , arj , jub , gurl , gjb , ure , fur , orra , bgure , jura , gvzr , qhevat , gurer , vagb , fpubby , zber , znl , lrnef , bire , bayl , lrne , zbfg , jbhyq , jbeyq , pvgl , fbzr , jurer , orgjrra , yngre , guerr , fgngr , fhpu , gura , angvbany , hfrq , znqr , xabja , haqre , znal , havirefvgl , havgrq , juvyr , cneg , frnfba , grnz , gurfr , nzrevpna , guna , svyz , frpbaq , obea , fbhgu , orpnzr , fgngrf , jne , guebhtu , orvat , vapyhqvat , obgu , orsber , abegu , uvtu , ubjrire , crbcyr , snzvyl , rneyl , uvfgbel , nyohz , nern , gurz , frevrf , ntnvafg , hagvy , fvapr , qvfgevpg , pbhagl , anzr , jbex , yvsr , tebhc , zhfvp , sbyybjvat , ahzore , pbzcnal , frireny , sbhe , pnyyrq , cynlrq , eryrnfrq , pnerre , yrnthr , tnzr , tbireazrag , ubhfr , rnpu , onfrq , qnl , fnzr , jba , hfr , fgngvba , pyho , vagreangvbany , gbja , ybpngrq , cbchyngvba , trareny , pbyyrtr , rnfg , sbhaq , ntr , znepu , raq , frcgrzore , ortna , ubzr , choyvp , puhepu , yvar , whar , evire , zrzore , flfgrz , cynpr , praghel , onaq , whyl , lbex , wnahnel , bpgbore , fbat , nhthfg , orfg , sbezre , oevgvfu , cnegl , anzrq , uryq , ivyyntr , fubj , ybpny , abirzore , gbbx , freivpr , qrprzore , ohvyg , nabgure , znwbe , jvguva , nybat , zrzoref , svir , fvatyr , qhr , nygubhtu , fznyy , byq , yrsg , svany , ynetr , vapyhqr , ohvyqvat , freirq , cerfvqrag , erprvirq , tnzrf , qrngu , sroehnel , znva , guveq , frg , puvyqera , bja , beqre , fcrpvrf , cnex , ynj , nve , choyvfurq , ebnq , qvrq , obbx , zra , jbzra , nezl , bsgra , nppbeqvat , rqhpngvba , prageny , pbhagel , qvivfvba , ratyvfu , gbc , vapyhqrq , qrirybczrag , serapu , pbzzhavgl , nzbat , jngre , cynl , fvqr , yvfg , gvzrf , arne , yngr , sbez , bevtvany , qvssrerag , pragre , cbjre , yrq , fghqragf , trezna , zbirq , pbheg , fvk , ynaq , pbhapvy , vfynaq , h . f . , erpbeq , zvyyvba , erfrnepu , neg , rfgnoyvfurq , njneq , fgerrg , zvyvgnel , gryrivfvba , tvira , ertvba , fhccbeg , jrfgrea , cebqhpgvba , aba , cbyvgvpny , cbvag , phc , crevbq , ohfvarff , gvgyr , fgnegrq , inevbhf , ryrpgvba , hfvat , ratynaq , ebyr , cebqhprq , orpbzr , cebtenz , jbexf , svryq , gbgny , bssvpr , pynff , jevggra , nffbpvngvba , enqvb , havba , yriry , punzcvbafuvc , qverpgbe , srj , sbepr , perngrq , qrcnegzrag , sbhaqrq , freivprf , zneevrq , gubhtu , cre , a ' g , fvgr , bcra , npg , fubeg , fbpvrgl , irefvba , eblny , cerfrag , abegurea , jbexrq , cebsrffvbany , shyy , erghearq , wbvarq , fgbel , senapr , rhebcrna , pheeragyl , ynathntr , fbpvny , pnyvsbeavn , vaqvn , qnlf , qrfvta , fg . , shegure , ebhaq , nhfgenyvn , jebgr , fna , cebwrpg , pbageby , fbhgurea , envyjnl , obneq , cbchyne , pbagvahrq , serr , onggyr , pbafvqrerq , ivqrb , pbzzba , cbfvgvba , yvivat , unys , cynlvat , erpbeqrq , erq , cbfg , qrfpevorq , nirentr , erpbeqf , fcrpvny , zbqrea , nccrnerq , naabhaprq , nernf , ebpx , eryrnfr , ryrpgrq , bguref , rknzcyr , grez , bcrarq , fvzvyne , sbezrq , ebhgr , prafhf , pheerag , fpubbyf , bevtvanyyl , ynxr , qrirybcrq , enpr , uvzfrys , sbeprf , nqqvgvba , vasbezngvba , hcba , cebivapr , zngpu , rirag , fbatf , erfhyg , riragf , jva , rnfgrea , genpx , yrnq , grnzf , fpvrapr , uhzna , pbafgehpgvba , zvavfgre , treznal , njneqf , ninvynoyr , guebhtubhg , genvavat , fglyr , obql , zhfrhz , nhfgenyvna , urnygu , frira , fvtarq , puvrs , riraghnyyl , nccbvagrq , frn , prager , qrohg , gbhe , cbvagf , zrqvn , yvtug , enatr , punenpgre , npebff , srngherf , snzvyvrf , ynetrfg , vaqvna , argjbex , yrff , cresbeznapr , cynlref , ersre , rhebcr , fbyq , srfgviny , hfhnyyl , gnxra , qrfcvgr , qrfvtarq , pbzzvggrr , cebprff , erghea , bssvpvny , rcvfbqr , vafgvghgr , fgntr , sbyybjrq , cresbezrq , wncnarfr , crefbany , guhf , negf , fcnpr , ybj , zbaguf , vapyhqrf , puvan , fghql , zvqqyr , zntnmvar , yrnqvat , wncna , tebhcf , nvepensg , srngherq , srqreny , pvivy , evtugf , zbqry , pbnpu , pnanqvna , obbxf , erznvarq , rvtug , glcr , vaqrcraqrag , pbzcyrgrq , pncvgny , npnqrzl , vafgrnq , xvatqbz , betnavmngvba , pbhagevrf , fghqvrf , pbzcrgvgvba , fcbegf , fvmr , nobir , frpgvba , svavfurq , tbyq , vaibyirq , ercbegrq , znantrzrag , flfgrzf , vaqhfgel , qverpgrq , znexrg , sbhegu , zbirzrag , grpuabybtl , onax , tebhaq , pnzcnvta , onfr , ybjre , frag , engure , nqqrq , cebivqrq , pbnfg , tenaq , uvfgbevp , inyyrl , pbasrerapr , oevqtr , jvaavat , nccebkvzngryl , svyzf , puvarfr , njneqrq , qrterr , ehffvna , fubjf , angvir , srznyr , ercynprq , zhavpvcnyvgl , fdhner , fghqvb , zrqvpny , qngn , nsevpna , fhpprffshy , zvq , onl , nggnpx , cerivbhf , bcrengvbaf , fcnavfu , gurnger , fghqrag , erchoyvp , ortvaavat , cebivqr , fuvc , cevznel , bjarq , jevgvat , gbheanzrag , phygher , vagebqhprq , grknf , eryngrq , angheny , cnegf , tbireabe , ernpurq , verynaq , havgf , fravbe , qrpvqrq , vgnyvna , jubfr , uvture , nsevpn , fgnaqneq , vapbzr , cebsrffbe , cynprq , ertvbany , ybf , ohvyqvatf , punzcvbafuvcf , npgvir , abiry , raretl , trarenyyl , vagrerfg , ivn , rpbabzvp , cerivbhfyl , fgngrq , vgfrys , punaary , orybj , bcrengvba , yrnqre , g
female _names : " znel , cngevpvn , yvaqn , oneonen , ryvmnorgu , wraavsre , znevn , fhfna , znetnerg , qbebgul , yvfn , anapl , xnera , orggl , uryra , fnaqen , qbaan , pneby , ehgu , funeba , zvpuryyr , ynhen , fnenu , xvzoreyl , qrobenu , wrffvpn , fuveyrl , plaguvn , natryn , zryvffn , oeraqn , nzl , naan , erorppn , ivetvavn , xnguyrra , cnzryn , znegun , qroen , nznaqn , fgrcunavr , pnebyla , puevfgvar , znevr , wnarg , pngurevar , senaprf , naa , wblpr , qvnar , nyvpr , whyvr , urngure , grerfn , qbevf , tybevn , riryla , wrna , purely , zvyqerq , xngurevar , wbna , nfuyrl , whqvgu , ebfr , wnavpr , xryyl , avpbyr , whql , puevfgvan , xngul , gurerfn , orireyl , qravfr , gnzzl , verar , wnar , ybev , enpury , znevyla , naqern , xnguela , ybhvfr , fnen , naar , wnpdhryvar , jnaqn , obaavr , whyvn , ehol , ybvf , gvan , culyyvf , abezn , cnhyn , qvnan , naavr , yvyyvna , rzvyl , ebova , crttl , pelfgny , tynqlf , evgn , qnja , pbaavr , syberapr , genpl , rqan , gvssnal , pnezra , ebfn , pvaql , tenpr , jraql , ivpgbevn , rqvgu , xvz , fureel , flyivn , wbfrcuvar , guryzn , funaaba , furvyn , rgury , ryyra , rynvar , znewbevr , pneevr , puneybggr , zbavpn , rfgure , cnhyvar , rzzn , whnavgn , navgn , eubaqn , unmry , nzore , rin , qroovr , ncevy , yrfyvr , pynen , yhpvyyr , wnzvr , wbnaar , ryrnabe , inyrevr , qnavryyr , zrtna , nyvpvn , fhmnaar , zvpuryr , tnvy , oregun , qneyrar , irebavpn , wvyy , reva , trenyqvar , ynhera , pngul , wbnaa , ybeenvar , ylaa , fnyyl , ertvan , revpn , orngevpr , qbyberf , oreavpr , nhqerl , libaar , naarggr , znevba , qnan , fgnpl , nan , erarr , vqn , ivivna , eboregn , ubyyl , oevggnal , zrynavr , yberggn , lbynaqn , wrnarggr , ynhevr , xngvr , xevfgra , inarffn , nyzn , fhr , ryfvr , orgu , wrnaar , ivpxv , pneyn , gnen , ebfrznel , rvyrra , greev , tregehqr , yhpl , gbaln , ryyn , fgnprl , jvyzn , tvan , xevfgva , wrffvr , angnyvr , ntarf , iren , puneyrar , orffvr , qryberf , zryvaqn , crney , neyrar , znherra , pbyyrra , nyyvfba , gnznen , wbl , trbetvn , pbafgnapr , yvyyvr , pynhqvn , wnpxvr , znepvn , gnaln , aryyvr , zvaavr , zneyrar , urvqv , tyraqn , ylqvn , ivbyn , pbhegarl , znevna , fgryyn , pnebyvar , qben , ivpxvr , znggvr , znkvar , vezn , znory , znefun , zlegyr , yran , puevfgl , qrnaan , cngfl , uvyqn , tjraqbyla , wraavr , aben , znetvr , avan , pnffnaqen , yrnu , craal , xnl , cevfpvyyn , anbzv , pnebyr , bytn , ovyyvr , qvnaar , genprl , yrban , wraal , sryvpvn , fbavn , zvevnz , iryzn , orpxl , oboovr , ivbyrg , xevfgvan , gbav , zvfgl , znr , furyyl , qnvfl , enzban , fureev , revxn , xngevan , pynver , yvaqfrl , yvaqfnl , trarin , thnqnyhcr , oryvaqn , znetnevgn , furely , pben , snlr , nqn , fnoevan , vfnory , znethrevgr , unggvr , uneevrg , zbyyl , prpvyvn , xevfgv , oenaqv , oynapur , fnaql , ebfvr , wbnaan , vevf , rhavpr , natvr , varm , ylaqn , znqryvar , nzryvn , nyoregn , trarivrir , zbavdhr , wbqv , wnavr , xnlyn , fbaln , wna , xevfgvar , pnaqnpr , snaavr , znelnaa , bcny , nyvfba , lirggr , zrybql , yhm , fhfvr , byvivn , syben , furyyrl , xevfgl , znzvr , yhyn , ybyn , irean , orhynu , nagbvarggr , pnaqvpr , whnan , wrnaarggr , cnz , xryyv , juvgarl , oevqtrg , xneyn , pryvn , yngbln , cnggl , furyvn , tnlyr , qryyn , ivpxl , ylaar , furev , znevnaar , xnen , wnpdhryla , rezn , oynapn , zlen , yrgvpvn , cng , xevfgn , ebknaar , natryvpn , ebola , nqevraar , ebfnyvr , nyrknaqen , oebbxr , orgunal , fnqvr , oreanqrggr , genpv , wbql , xraqen , avpubyr , enpunry , znoyr , rearfgvar , zhevry , znepryyn , ryran , xelfgny , natryvan , anqvar , xnev , rfgryyr , qvnaan , cnhyrggr , yben , zban , qberra , ebfrznevr , qrfverr , nagbavn , wnavf , orgfl , puevfgvr , serqn , zrerqvgu , ylarggr , grev , pevfgvan , rhyn , yrvtu , zrtuna , fbcuvn , rybvfr , ebpuryyr , tergpura , prpryvn , endhry , uraevrggn , nylffn , wnan , tjra , wraan , gevpvn , ynirear , byvir , gnfun , fvyivn , ryiven , qryvn , xngr , cnggv , yberan , xryyvr , fbawn , yvyn , ynan , qneyn , zvaql , rffvr , znaql , yberar , ryfn , wbfrsvan , wrnaavr , zvenaqn , qvkvr , yhpvn , znegn , snvgu , yryn , wbunaan , funev , pnzvyyr , gnzv , funjan , ryvfn , robal , zryon , ben , arggvr , gnovgun , byyvr , jvavserq , xevfgvr , nyvfun , nvzrr , eran , zlean , zneyn , gnzzvr , yngnfun , obavgn , cngevpr , ebaqn , fureevr , nqqvr , senapvar , qrybevf , fgnpvr , nqevnan , purev , novtnvy , pryrfgr , wrjry , pnen , nqryr , erorxnu , yhpvaqn , qbegul , rssvr , gevan , eron , fnyyvr , nheben , yraben , rggn , ybggvr , xreev , gevfun , avxxv , rfgryyn , senapvfpn , wbfvr , genpvr , znevffn , xneva , oevggarl , wnaryyr , ybheqrf , ynhery , uryrar , srea , ryin , pbevaar , xryfrl , van , orggvr , ryvfnorgu , nvqn , pnvgyva , vatevq , vin , rhtravn , puevfgn , tbyqvr , znhqr , wravsre , gurerfr , qran , ybean , wnarggr , yngbaln , pnaql , pbafhryb , gnzvxn , ebfrggn , qroben , purevr , cbyyl , qvan , wrjryy , snl , wvyyvna , qbebgurn , aryy , gehql , rfcrenamn , cngevpn , xvzoreyrl , funaan , uryran , pyrb , fgrsnavr , ebfnevb , byn , wnavar , zbyyvr , yhcr , nyvfn , ybh , znevory , fhfnaar , orggr , fhfnan , ryvfr , prpvyr , vfnoryyr , yrfyrl , wbpryla , cnvtr , wbav , enpuryyr , yrbyn , qncuar , nygn , rfgre , crgen , tenpvryn , vzbtrar , wbyrar , xrvfun , ynprl , tyraan , tn
us _tv _and _film : " lbh , v , gb , gung , vg , zr , jung , guvf , xabj , v 'z,ab,unir,zl,qba' g , whfg , abg , qb , or , lbhe , jr , vg 'f,fb,ohg,nyy,jryy,bu,nobhg,evtug,lbh' er , trg , urer , bhg , tbvat , yvxr , lrnu , vs , pna , hc , jnag , guvax , gung 'f,abj,tb,uvz,ubj,tbg,qvq,jul,frr,pbzr,tbbq,ernyyl,ybbx,jvyy,bxnl,onpx,pna' g , zrna , gryy , v 'yy,url,ur' f , pbhyq , qvqa 'g,lrf,fbzrguvat,orpnhfr,fnl,gnxr,jnl,yvggyr,znxr,arrq,tbaan,arire,jr' er , gbb , fur 'f,v' ir , fher , bhe , fbeel , jung 'f,yrg,guvat,znlor,qbja,zna,irel,gurer' f , fubhyq , nalguvat , fnvq , zhpu , nal , rira , bss , cyrnfr , qbvat , gunax , tvir , gubhtug , uryc , gnyx , tbq , fgvyy , jnvg , svaq , abguvat , ntnva , guvatf , yrg 'f,qbrfa' g , pnyy , gbyq , terng , orggre , rire , avtug , njnl , oryvrir , srry , rirelguvat , lbh 'ir,svar,ynfg,xrrc,qbrf,chg,nebhaq,fgbc,gurl' er , v 'q,thl,vfa' g , nyjnlf , yvfgra , jnagrq , thlf , uhu , gubfr , ovt , ybg , unccrarq , gunaxf , jba 'g,gelvat,xvaq,jebat,gnyxvat,thrff,pner,onq,zbz,erzrzore,trggvat,jr' yy , gbtrgure , qnq , yrnir , haqrefgnaq , jbhyqa 'g,npghnyyl,urne,onol,avpr,sngure,ryfr,fgnl,qbar,jnfa' g , pbhefr , zvtug , zvaq , rirel , rabhtu , gel , uryy , pnzr , fbzrbar , lbh 'yy,jubyr,lbhefrys,vqrn,nfx,zhfg,pbzvat,ybbxvat,jbzna,ebbz,xarj,gbavtug,erny,fba,ubcr,jrag,uzz,unccl,cerggl,fnj,tvey,fve,sevraq,nyernql,fnlvat,arkg,wbo,ceboyrz,zvahgr,guvaxvat,unira' g , urneq , ubarl , znggre , zlfrys , pbhyqa 'g,rknpgyl,univat,cebonoyl,unccra,jr' ir , uheg , obl , qrnq , tbggn , nybar , rkphfr , fgneg , xvyy , uneq , lbh 'q,gbqnl,pne,ernql,jvgubhg,jnagf,ubyq,jnaan,lrg,frra,qrny,bapr,tbar,zbeavat,fhccbfrq,sevraqf,urnq,fghss,jbeel,yvir,gehgu,snpr,sbetrg,gehr,pnhfr,fbba,xabjf,gryyvat,jvsr,jub' f , punapr , eha , zbir , nalbar , crefba , olr , fbzrobql , urneg , zvff , znxvat , zrrg , naljnl , cubar , ernfba , qnza , ybfg , ybbxf , oevat , pnfr , ghea , jvfu , gbzbeebj , xvqf , gehfg , purpx , punatr , nalzber , yrnfg , nera 'g,jbexvat,znxrf,gnxvat,zrnaf,oebgure,ungr,ntb,fnlf,ornhgvshy,tnir,snpg,penml,fvg,nsenvq,vzcbegnag,erfg,sha,xvq,jbeq,jngpu,tynq,rirelbar,fvfgre,zvahgrf,rirelobql,ovg,pbhcyr,jubn,rvgure,zef,srryvat,qnhtugre,jbj,trgf,nfxrq,oernx,cebzvfr,qbbe,pybfr,unaq,rnfl,dhrfgvba,gevrq,sne,jnyx,arrqf,zvar,xvyyrq,ubfcvgny,nalobql,nyevtug,jrqqvat,fuhg,noyr,qvr,cresrpg,fgnaq,pbzrf,uvg,jnvgvat,qvaare,shaal,uhfonaq,nyzbfg,cnl,nafjre,pbby,rlrf,arjf,puvyq,fubhyqa' g , lbhef , zbzrag , fyrrc , ernq , jurer 'f,fbhaqf,fbaal,cvpx,fbzrgvzrf,orq,qngr,cyna,ubhef,ybfr,unaqf,frevbhf,fuvg,oruvaq,vafvqr,nurnq,jrrx,jbaqreshy,svtug,cnfg,phg,dhvgr,ur' yy , fvpx , vg 'yy,rng,abobql,tbrf,fnir,frrzf,svanyyl,yvirf,jbeevrq,hcfrg,pneyl,zrg,oebhtug,frrz,fbeg,fnsr,jrera' g , yrnivat , sebag , fubg , ybirq , nfxvat , ehaavat , pyrne , svther , ubg , sryg , cneragf , qevax , nofbyhgryl , ubj 'f,qnqql,fjrrg,nyvir,frafr,zrnag,unccraf,org,oybbq,nva' g , xvqqvat , yvr , zrrgvat , qrne , frrvat , fbhaq , snhyg , gra , ohl , ubhe , fcrnx , ynql , wra , guvaxf , puevfgznf , bhgfvqr , unat , cbffvoyr , jbefr , zvfgnxr , bbu , unaqyr , fcraq , gbgnyyl , tvivat , urer 'f,zneevntr,ernyvmr,hayrff,frk,fraq,arrqrq,fpnerq,cvpgher,gnyxrq,nff,uhaqerq,punatrq,pbzcyrgryl,rkcynva,pregnvayl,fvta,oblf,eryngvbafuvc,ybirf,unve,ylvat,pubvpr,naljurer,shgher,jrveq,yhpx,fur' yy , ghearq , gbhpu , xvff , penar , dhrfgvbaf , boivbhfyl , jbaqre , cnva , pnyyvat , fbzrjurer , guebj , fgenvtug , pbyq , snfg , jbeqf , sbbq , abar , qevir , srryvatf , gurl 'yy,zneel,qebc,pnaabg,qernz,cebgrpg,gjragl,fhecevfr,fjrrgurneg,cbbe,ybbxrq,znq,rkprcg,tha,l' xabj , qnapr , gnxrf , nccerpvngr , rfcrpvnyyl , fvghngvba , orfvqrf , chyy , unfa 'g,jbegu,furevqna,nznmvat,rkcrpg,fjrne,cvrpr,ohfl,unccravat,zbivr,jr' q , pngpu , creuncf , fgrc , snyy , jngpuvat , xrcg , qneyvat , qbt , ubabe , zbivat , gvyy , nqzvg , ceboyrzf , zheqre , ur 'q,rivy,qrsvavgryl,srryf,ubarfg,rlr,oebxr,zvffrq,ybatre,qbyynef,gverq,riravat,fgnegvat,ragver,gevc,avyrf,fhccbfr,pnyz,vzntvar,snve,pnhtug,oynzr,fvggvat,snibe,ncnegzrag,greevoyr,pyrna,yrnea,senfvre,erynk,nppvqrag,jnxr,cebir,fzneg,zrffntr,zvffvat,sbetbg,vagrerfgrq,gnoyr,aofc,zbhgu,certanag,evat,pnershy,funyy,qhqr,evqr,svtherq,jrne,fubbg,fgvpx,sbyybj,natel,jevgr,fgbccrq,ena,fgnaqvat,sbetvir,wnvy,jrnevat,ynqvrf,xvaqn,yhapu,pevfgvna,terrayrr,tbggra,ubcvat,cubror,gubhfnaq,evqtr,cncre,gbhtu,gncr,pbhag,oblsevraq,cebhq,nterr,oveguqnl,gurl' ir , funer , bssre , uheel , srrg , jbaqrevat , qrpvfvba , barf , svavfu , ibvpr , urefrys , jbhyq ' ir , zrff , qrfreir , rivqrapr , phgr , qerff , vagrerfgvat , ubgry , rawbl , dhvrg , pbaprearq , fgnlvat , orng , fjrrgvr , zragvba , pybgurf , sryy , arvgure , zzz , svk , erfcrpg , cevfba , ng
male _names : " wnzrf , wbua , eboreg , zvpunry , jvyyvnz , qnivq , evpuneq , puneyrf , wbfrcu , gubznf , puevfgbcure , qnavry , cnhy , znex , qbanyq , trbetr , xraargu , fgrira , rqjneq , oevna , ebanyq , nagubal , xriva , wnfba , znggurj , tnel , gvzbgul , wbfr , yneel , wrsserl , senax , fpbgg , revp , fgrcura , naqerj , enlzbaq , tertbel , wbfuhn , wreel , qraavf , jnygre , cngevpx , crgre , unebyq , qbhtynf , urael , pney , neguhe , elna , ebtre , wbr , whna , wnpx , nyoreg , wbanguna , whfgva , greel , trenyq , xrvgu , fnzhry , jvyyvr , enycu , ynjerapr , avpubynf , ebl , orawnzva , oehpr , oenaqba , nqnz , uneel , serq , jnlar , ovyyl , fgrir , ybhvf , wrerzl , nneba , enaql , rhtrar , pneybf , ehffryy , obool , ivpgbe , rearfg , cuvyyvc , gbqq , wrffr , penvt , nyna , funja , pynerapr , frna , cuvyvc , puevf , wbuaal , rney , wvzzl , nagbavb , qnaal , oelna , gbal , yhvf , zvxr , fgnayrl , yrbaneq , anguna , qnyr , znahry , ebqarl , phegvf , abezna , zneiva , ivaprag , tyraa , wrssrel , genivf , wrss , punq , wnpbo , zryiva , nyserq , xlyr , senapvf , oenqyrl , wrfhf , ureoreg , serqrevpx , enl , wbry , rqjva , qba , rqqvr , evpxl , gebl , enaqnyy , oneel , oreaneq , znevb , yrebl , senapvfpb , znephf , zvpurny , gurbqber , pyvssbeq , zvthry , bfpne , wnl , wvz , gbz , pnyiva , nyrk , wba , ebaavr , ovyy , yyblq , gbzzl , yrba , qrerx , qneeryy , wrebzr , syblq , yrb , nyiva , gvz , jrfyrl , qrna , tert , wbetr , qhfgva , crqeb , qreevpx , qna , mnpunel , pberl , urezna , znhevpr , ireaba , eboregb , pylqr , tyra , urpgbe , funar , evpneqb , fnz , evpx , yrfgre , oerag , enzba , glyre , tvyoreg , trar , znep , ertvanyq , ehora , oergg , angunavry , ensnry , rqtne , zvygba , enhy , ora , prpvy , qhnar , naqer , ryzre , oenq , tnoevry , eba , ebynaq , wnerq , nqevna , xney , pbel , pynhqr , revx , qneely , arvy , puevfgvna , wnivre , sreanaqb , pyvagba , grq , zngurj , glebar , qneera , ybaavr , ynapr , pbql , whyvb , xheg , nyyna , pynlgba , uhtu , znk , qjnlar , qjvtug , neznaqb , sryvk , wvzzvr , rirergg , vna , xra , obo , wnvzr , pnfrl , nyserqb , nyoregb , qnir , vina , wbuaavr , fvqarl , oleba , whyvna , vfnnp , pyvsgba , jvyyneq , qnely , ivetvy , naql , fnyinqbe , xvex , fretvb , frgu , xrag , greenapr , erar , rqhneqb , greerapr , raevdhr , serqqvr , fghneg , serqevpx , negheb , nyrwnaqeb , wbrl , avpx , yhgure , jraqryy , wrerzvnu , rina , whyvhf , qbaavr , bgvf , geribe , yhxr , ubzre , treneq , qbht , xraal , uhoreg , natryb , funha , ylyr , zngg , nysbafb , beynaqb , erk , pneygba , rearfgb , cnoyb , yberamb , bzne , jvyohe , oynxr , ubenpr , ebqrevpx , xreel , noenunz , evpxrl , ven , naqerf , prfne , wbuanguna , znypbyz , ehqbycu , qnzba , xryiva , ehql , cerfgba , nygba , nepuvr , znepb , crgr , enaqbycu , tneel , trbsserl , wbanguba , sryvcr , oraavr , treneqb , qbzvavp , ybera , qryoreg , pbyva , thvyyrezb , rnearfg , oraal , abry , ebqbysb , zleba , rqzhaq , fnyingber , prqevp , ybjryy , tertt , furezna , qriva , flyirfgre , ebbfriryg , vfenry , wreznvar , sbeerfg , jvyoreg , yrynaq , fvzba , veivat , bjra , ehshf , jbbqebj , fnzzl , xevfgbcure , yriv , znepbf , thfgnib , wnxr , yvbary , znegl , tvyoregb , pyvag , avpbynf , ynherapr , vfznry , beivyyr , qerj , reiva , qrjrl , jvyserq , wbfu , uhtb , vtanpvb , pnyro , gbznf , furyqba , revpx , senaxvr , qneery , ebtryvb , grerapr , nybamb , ryvnf , oreg , ryoreg , enzveb , pbaenq , abnu , tenql , cuvy , pbearyvhf , ynzne , ebynaqb , pynl , crepl , oenqsbeq , zreyr , qneva , nzbf , greeryy , zbfrf , veiva , fnhy , ebzna , qnearyy , enaqny , gbzzvr , gvzzl , qneeva , oeraqna , gbol , ina , nory , qbzvavpx , rzvyvb , ryvwnu , pnel , qbzvatb , nhoerl , rzzrgg , zneyba , rznahry , wrenyq , rqzbaq , rzvy , qrjnlar , bggb , grqql , erlanyqb , oerg , wrff , gerag , uhzoregb , rzznahry , fgrcuna , ybhvr , ivpragr , ynzbag , tneynaq , zvpnu , rsenva , urngu , ebqtre , qrzrgevhf , rguna , ryqba , ebpxl , cvreer , ryv , oelpr , nagbvar , eboovr , xraqnyy , eblpr , fgreyvat , tebire , rygba , pyrirynaq , qlyna , puhpx , qnzvna , erhora , fgna , yrbaneqb , ehffry , rejva , oravgb , unaf , zbagr , oynvar , reavr , pheg , dhragva , nthfgva , wnzny , qriba , nqbysb , glfba , jvyserqb , oneg , wneebq , inapr , qravf , qnzvra , wbndhva , uneyna , qrfzbaq , ryyvbg , qnejva , tertbevb , xrezvg , ebfpbr , rfgrona , nagba , fbybzba , abeoreg , ryiva , abyna , pnerl , ebq , dhvagba , uny , oenva , ebo , ryjbbq , xraqevpx , qnevhf , zbvfrf , zneyva , svqry , gunqqrhf , pyvss , znepry , nyv , encunry , oelba , neznaq , nyineb , wrssel , qnar , wbrfcu , guhezna , arq , fnzzvr , ehfgl , zvpury , zbagl , ebel , snovna , erttvr , xevf , vfnvnu , thf , nirel , yblq , qvrtb , nqbycu , zvyyneq , ebppb , tbamnyb , qrevpx , ebqevtb , treel , evtboregb , nycubafb , evpxvr , abr , irea , ryivf , oreaneqb , znhevpvb , uvenz , qbabina , onfvy , avpxbynf , fpbg , ivapr , dhvapl , rqql , fronfgvna , srqrevpb , hylffrf , urevoregb , qbaaryy , qraal , tniva , rzrel , ebzrb , wnlfba , qvba , qnagr , pyrzrag , pbl , bqryy , wneivf , oehab , vffnp , qhqyrl , fnasbeq , pbyol , pnezryb , arfgbe , ubyyvf , fgrsna , qbaal , yvajbbq , ornh , jryqba , tnyra , vfvqeb , gehzna , qryzne , wbuanguba , fvynf , serqrevp , vejva , zreevyy , puneyrl , znepryvab , pneyb , geragba , xhegvf , nheryvb , jvas
} , { } ] , 4 : [ function ( require , module , exports ) {
var feedback , matching , rot _13 , scoring , time , time _estimates , zxcvbn ; matching = require ( "./matching" ) , scoring = require ( "./scoring" ) , time _estimates = require ( "./time_estimates" ) , feedback = require ( "./feedback" ) , time = function ( ) { return ( new Date ) . getTime ( ) } , rot _13 = function ( e ) { return e . replace ( /[a-zA-Z]/g , function ( e ) { return String . fromCharCode ( ( e <= "Z" ? 90 : 122 ) >= ( e = e . charCodeAt ( 0 ) + 13 ) ? e : e - 26 ) } ) } , zxcvbn = function ( e , t ) { var i , r , n , c , a , s , m , o , u , g , _ ; for ( null == t && ( t = [ ] ) , g = time ( ) , u = [ ] , n = 0 , c = t . length ; n < c ; n ++ ) i = t [ n ] , "string" != ( m = typeof i ) && "number" !== m && "boolean" !== m || u . push ( rot _13 ( i . toString ( ) . toLowerCase ( ) ) ) ; matching . set _user _input _dictionary ( u ) , a = matching . omnimatch ( e ) , o = scoring . most _guessable _match _sequence ( e , a ) , o . calc _time = time ( ) - g , r = time _estimates . estimate _attack _times ( o . guesses ) ; for ( s in r ) _ = r [ s ] , o [ s ] = _ ; return o . feedback = feedback . get _feedback ( o . score , o . sequence ) , o } , module . exports = zxcvbn ;
} , { "./feedback" : 2 , "./matching" : 5 , "./scoring" : 6 , "./time_estimates" : 7 } ] , 5 : [ function ( require , module , exports ) {
var DATE _MAX _YEAR , DATE _MIN _YEAR , DATE _SPLITS , GRAPHS , L33T _TABLE , RANKED _DICTIONARIES , REGEXEN , adjacency _graphs , build _ranked _dict , frequency _lists , lst , matching , name , rot _13 , scoring ; frequency _lists = require ( "./frequency_lists" ) , adjacency _graphs = require ( "./adjacency_graphs" ) , scoring = require ( "./scoring" ) , rot _13 = function ( e ) { return e . replace ( /[a-zA-Z]/g , function ( e ) { return String . fromCharCode ( ( e <= "Z" ? 90 : 122 ) >= ( e = e . charCodeAt ( 0 ) + 13 ) ? e : e - 26 ) } ) } , build _ranked _dict = function ( e ) { var t , n , r , i , a ; for ( i = { } , t = 1 , r = 0 , n = e . length ; r < n ; r ++ ) a = e [ r ] , i [ a ] = t , t += 1 ; return i } , RANKED _DICTIONARIES = { } ; for ( name in frequency _lists ) lst = frequency _lists [ name ] , RANKED _DICTIONARIES [ name ] = build _ranked _dict ( lst ) ; GRAPHS = { qwerty : adjacency _graphs . qwerty , dvorak : adjacency _graphs . dvorak , keypad : adjacency _graphs . keypad , mac _keypad : adjacency _graphs . mac _keypad } , L33T _TABLE = { a : [ "4" , "@" ] , b : [ "8" ] , c : [ "(" , "{" , "[" , "<" ] , e : [ "3" ] , g : [ "6" , "9" ] , i : [ "1" , "!" , "|" ] , l : [ "1" , "|" , "7" ] , o : [ "0" ] , s : [ "$" , "5" ] , t : [ "+" , "7" ] , x : [ "%" ] , z : [ "2" ] } , REGEXEN = { recent _year : /19\d\d|200\d|201\d/g } , DATE _MAX _YEAR = 2050 , DATE _MIN _YEAR = 1e3 , DATE _SPLITS = { 4 : [ [ 1 , 2 ] , [ 2 , 3 ] ] , 5 : [ [ 1 , 3 ] , [ 2 , 3 ] ] , 6 : [ [ 1 , 2 ] , [ 2 , 4 ] , [ 4 , 5 ] ] , 7 : [ [ 1 , 3 ] , [ 2 , 3 ] , [ 4 , 5 ] , [ 4 , 6 ] ] , 8 : [ [ 2 , 4 ] , [ 4 , 6 ] ] } , matching = { empty : function ( e ) { var t ; return 0 === function ( ) { var n ; n = [ ] ; for ( t in e ) n . push ( t ) ; return n } ( ) . length } , extend : function ( e , t ) { return e . push . apply ( e , t ) } , translate : function ( e , t ) { var n ; return function ( ) { var r , i , a , s ; for ( a = e . split ( "" ) , s = [ ] , i = 0 , r = a . length ; i < r ; i ++ ) n = a [ i ] , s . push ( t [ n ] || n ) ; return s } ( ) . join ( "" ) } , mod : function ( e , t ) { return ( e % t + t ) % t } , sorted : function ( e ) { return e . sort ( function ( e , t ) { return e . i - t . i || e . j - t . j } ) } , omnimatch : function ( e ) { var t , n , r , i , a ; for ( i = [ ] , r = [ this . dictionary _match , this . reverse _dictionary _match , this . l33t _match , this . spatial _match , this . repeat _match , this . sequence _match , this . regex _match , this . date _match ] , a = 0 , t = r . length ; a < t ; a ++ ) n = r [ a ] , this . extend ( i , n . call ( this , e ) ) ; return this . sorted ( i ) } , dictionary _match : function ( e , t ) { var n , r , i , a , s , o , h , u , c , l , _ , f , d , p ; null == t && ( t = RANKED _DICTIONARIES ) , s = [ ] , a = e . length , u = e . toLowerCase ( ) , u = rot _13 ( u ) ; for ( n in t ) for ( l = t [ n ] , r = o = 0 , _ = a ; 0 <= _ ? o < _ : o > _ ; r = 0 <= _ ? ++ o : -- o ) for ( i = h = f = r , d = a ; f <= d ? h < d : h > d ; i = f <= d ? ++ h : -- h ) u . slice ( r , + i + 1 || 9e9 ) in l && ( p = u . slice ( r , + i + 1 || 9e9 ) , c = l [ p ] , s . push ( { pattern : "dictionary" , i : r , j : i , token : e . slice ( r , + i + 1 || 9e9 ) , matched _word : rot _13 ( p ) , rank : c , dictionary _name : n , reversed : ! 1 , l33t : ! 1 } ) ) ; return this . sorted ( s ) } , reverse _dictionary _match : function ( e , t ) { var n , r , i , a , s , o ; for ( null == t && ( t = RANKED _DICTIONARIES ) , o = e . split ( "" ) . reverse ( ) . join ( "" ) , i = this . dictionary _match ( o , t ) , a = 0 , n = i . length ; a < n ; a ++ ) r = i [ a ] , r . token = r . token . split ( "" ) . reverse ( ) . join ( "" ) , r . reversed = ! 0 , s = [ e . length - 1 - r . j , e . length - 1 - r . i ] , r . i = s [ 0 ] , r . j = s [ 1 ] ; return this . sorted ( i ) } , set _user _input _dictionary : function ( e ) { return RANKED _DICTIONARIES . user _inputs = build _ranked _dict ( e . slice ( ) ) } , relevant _l33t _subtable : function ( e , t ) { var n , r , i , a , s , o , h , u , c , l ; for ( s = { } , o = e . split ( "" ) , a = 0 , r = o . length ; a < r ; a ++ ) n = o [ a ] , s [ n ] = ! 0 ; l = { } ; for ( i in t ) c = t [ i ] , h = function ( ) { var e , t , n ; for ( n = [ ] , t = 0 , e = c . length ; t < e ; t ++ ) u = c [ t ] , u in s && n . push ( u ) ; return n } ( ) , h . length > 0 && ( l [ i ] = h ) ; return l } , enumerate _l33t _subs : function ( e ) { var t , n , r , i , a , s , o , h , u , c , l , _ , f , d , p ; a = function ( ) { var t ; t = [ ] ; for ( i in e ) t . push ( i ) ; return t } ( ) , p = [ [ ] ] , n = function ( e ) { var t , n , r , a , s , o , h , u ; for ( n = [ ] , s = { } , o = 0 , a = e . length ; o < a ; o ++ ) h = e [ o ] , t = function ( ) { var e , t , n ; for ( n = [ ] , u = t = 0 , e = h . length ; t < e ; u = ++ t ) i = h [ u ] , n . push ( [ i , u ] ) ; return n } ( ) , t . sort ( ) , r = function ( ) { var e , n , r ; for ( r = [ ] , u = n = 0 , e = t . length ; n < e ; u = ++ n ) i = t [ u ] , r . push ( i + "," + u ) ; return r } ( ) . join ( "-" ) , r in s || ( s [ r ] = ! 0 , n . push ( h ) ) ; return n } , r = function ( t ) { var i , a , s , o , h , u , c , l , _ , f , d , g , m , A , E , y ; if ( t . length ) { for ( a = t [ 0 ] , m = t . slice ( 1 ) , c = [ ] , d = e [ a ] , l = 0 , h = d . length ; l < h ; l ++ ) for ( o = d [ l ] , _ = 0 , u = p . length ; _ < u ; _ ++ ) { for ( A = p [ _ ] , i = - 1 , s = f = 0 , g = A . length ; 0 <= g ? f < g : f > g ; s = 0 <= g ? ++ f : -- f ) if ( A [ s ] [ 0 ] === o ) { i = s ; break } i === - 1 ? ( y = A . concat ( [ [ o , a ] ] ) , c . push ( y ) ) : ( E = A . slice ( 0 ) , E . splice ( i , 1 ) , E . push ( [ o , a ] ) , c . push ( A ) , c . push ( E ) ) } return p = n ( c ) , r ( m ) } } , r ( a ) , d = [ ] ; for ( u = 0 , o = p . length ; u < o ; u ++ ) { for ( _ = p [ u ] , f = { } , c = 0 , h = _ . length ; c < h ; c ++ ) l = _ [ c ] , s = l [ 0 ] , t = l [ 1 ] , f [ s ] = t ; d . push ( f ) } return d } , l33t _match : function ( e , t , n ) { var r , i , a , s , o , h , u , c , l , _ , f , d , p , g , m , A ; for ( null == t && ( t = RANKED _DICTIONARIES ) , null == n && ( n = L33T _TABLE ) , u = [ ] , _ = this . en
} , { "./adjacency_graphs" : 1 , "./frequency_lists" : 3 , "./scoring" : 6 } ] , 6 : [ function ( require , module , exports ) {
var BRUTEFORCE _CARDINALITY , MIN _GUESSES _BEFORE _GROWING _SEQUENCE , MIN _SUBMATCH _GUESSES _MULTI _CHAR , MIN _SUBMATCH _GUESSES _SINGLE _CHAR , adjacency _graphs , calc _average _degree , k , scoring , v ; adjacency _graphs = require ( "./adjacency_graphs" ) , calc _average _degree = function ( e ) { var t , r , n , s , a , u ; t = 0 ; for ( n in e ) a = e [ n ] , t += function ( ) { var e , t , r ; for ( r = [ ] , t = 0 , e = a . length ; t < e ; t ++ ) s = a [ t ] , s && r . push ( s ) ; return r } ( ) . length ; return t /= function ( ) { var t ; t = [ ] ; for ( r in e ) u = e [ r ] , t . push ( r ) ; return t } ( ) . length } , BRUTEFORCE _CARDINALITY = 10 , MIN _GUESSES _BEFORE _GROWING _SEQUENCE = 1e4 , MIN _SUBMATCH _GUESSES _SINGLE _CHAR = 10 , MIN _SUBMATCH _GUESSES _MULTI _CHAR = 50 , scoring = { nCk : function ( e , t ) { var r , n , s , a ; if ( t > e ) return 0 ; if ( 0 === t ) return 1 ; for ( s = 1 , r = n = 1 , a = t ; 1 <= a ? n <= a : n >= a ; r = 1 <= a ? ++ n : -- n ) s *= e , s /= r , e -= 1 ; return s } , log10 : function ( e ) { return Math . log ( e ) / Math . log ( 10 ) } , log2 : function ( e ) { return Math . log ( e ) / Math . log ( 2 ) } , factorial : function ( e ) { var t , r , n , s ; if ( e < 2 ) return 1 ; for ( t = 1 , r = n = 2 , s = e ; 2 <= s ? n <= s : n >= s ; r = 2 <= s ? ++ n : -- n ) t *= r ; return t } , most _guessable _match _sequence : function ( e , t , r ) { var n , s , a , u , i , _ , o , h , E , c , g , f , l , A , S , p , R , I , v , M , N , C , T , U ; for ( null == r && ( r = ! 1 ) , l = e . length , f = function ( ) { var e , t , r ; for ( r = [ ] , n = e = 0 , t = l ; 0 <= t ? e < t : e > t ; n = 0 <= t ? ++ e : -- e ) r . push ( [ ] ) ; return r } ( ) , A = 0 , _ = t . length ; A < _ ; A ++ ) c = t [ A ] , f [ c . j ] . push ( c ) ; for ( I = 0 , o = f . length ; I < o ; I ++ ) E = f [ I ] , E . sort ( function ( e , t ) { return e . i - t . i } ) ; for ( S = { m : function ( ) { var e , t , r ; for ( t = [ ] , n = r = 0 , e = l ; 0 <= e ? r < e : r > e ; n = 0 <= e ? ++ r : -- r ) t . push ( { } ) ; return t } ( ) , pi : function ( ) { var e , t , r ; for ( t = [ ] , n = r = 0 , e = l ; 0 <= e ? r < e : r > e ; n = 0 <= e ? ++ r : -- r ) t . push ( { } ) ; return t } ( ) , g : function ( ) { var e , t , r ; for ( t = [ ] , n = r = 0 , e = l ; 0 <= e ? r < e : r > e ; n = 0 <= e ? ++ r : -- r ) t . push ( { } ) ; return t } ( ) } , T = function ( t ) { return function ( n , s ) { var a , u , i , _ , o , h ; _ = n . j , o = t . estimate _guesses ( n , e ) , s > 1 && ( o *= S . pi [ n . i - 1 ] [ s - 1 ] ) , i = t . factorial ( s ) * o , r || ( i += Math . pow ( MIN _GUESSES _BEFORE _GROWING _SEQUENCE , s - 1 ) ) , h = S . g [ _ ] ; for ( u in h ) if ( a = h [ u ] , ! ( u > s ) && a <= i ) return ; return S . g [ _ ] [ s ] = i , S . m [ _ ] [ s ] = n , S . pi [ _ ] [ s ] = o } } ( this ) , s = function ( e ) { return function ( e ) { var t , r , n , s , a , u ; for ( c = g ( 0 , e ) , T ( c , 1 ) , a = [ ] , t = u = 1 , s = e ; 1 <= s ? u <= s : u >= s ; t = 1 <= s ? ++ u : -- u ) c = g ( t , e ) , a . push ( function ( ) { var e , s ; e = S . m [ t - 1 ] , s = [ ] ; for ( r in e ) n = e [ r ] , r = parseInt ( r ) , "bruteforce" !== n . pattern && s . push ( T ( c , r + 1 ) ) ; return s } ( ) ) ; return a } } ( this ) , g = function ( t ) { return function ( t , r ) { return { pattern : "bruteforce" , token : e . slice ( t , + r + 1 || 9e9 ) , i : t , j : r } } } ( this ) , C = function ( e ) { return function ( e ) { var t , r , n , s , a , u , i ; u = [ ] , s = e - 1 , a = void 0 , n = Infinity , i = S . g [ s ] ; for ( r in i ) t = i [ r ] , t < n && ( a = r , n = t ) ; for ( ; s >= 0 ; ) c = S . m [ s ] [ a ] , u . unshift ( c ) , s = c . i - 1 , a -- ; return u } } ( this ) , u = N = 0 , v = l ; 0 <= v ? N < v : N > v ; u = 0 <= v ? ++ N : -- N ) { for ( M = f [ u ] , U = 0 , h = M . length ; U < h ; U ++ ) if ( c = M [ U ] , c . i > 0 ) for ( i in S . m [ c . i - 1 ] ) i = parseInt ( i ) , T ( c , i + 1 ) ; else T ( c , 1 ) ; s ( u ) } return R = C ( l ) , p = R . length , a = 0 === e . length ? 1 : S . g [ l - 1 ] [ p ] , { password : e , guesses : a , guesses _log10 : this . log10 ( a ) , sequence : R } } , estimate _guesses : function ( e , t ) { var r , n , s ; return null != e . guesses ? e . guesses : ( s = 1 , e . token . length < t . length && ( s = 1 === e . token . length ? MIN _SUBMATCH _GUESSES _SINGLE _CHAR : MIN _SUBMATCH _GUESSES _MULTI _CHAR ) , r = { bruteforce : this . bruteforce _guesses , dictionary : this . dictionary _guesses , spatial : this . spatial _guesses , repeat : this . repeat _guesses , sequence : this . sequence _guesses , regex : this . regex _guesses , date : this . date _guesses } , n = r [ e . pattern ] . call ( this , e ) , e . guesses = Math . max ( n , s ) , e . guesses _log10 = this . log10 ( e . guesses ) , e . guesses ) } , bruteforce _guesses : function ( e ) { var t , r ; return t = Math . pow ( BRUTEFORCE _CARDINALITY , e . token . length ) , t === Number . POSITIVE _INFINITY && ( t = Number . MAX _VALUE ) , r = 1 === e . token . length ? MIN _SUBMATCH _GUESSES _SINGLE _CHAR + 1 : MIN _SUBMATCH _GUESSES _MULTI _CHAR + 1 , Math . max ( t , r ) } , repeat _guesses : function ( e ) { return e . base _guesses * e . repeat _count } , sequence _guesses : function ( e ) { var t , r ; return r = e . token . charAt ( 0 ) , t = "a" === r || "A" === r || "z" === r || "Z" === r || "0" === r || "1" === r || "9" === r ? 4 : r . match ( /\d/ ) ? 10 : 26 , e . ascending || ( t *= 2 ) , t * e . token . length } , MIN _YEAR _SPACE : 20 , REFERENCE _YEAR : 2016 , regex _guesses : function ( e ) { var t , r ; if ( t = { alpha _lower : 26 , alpha _upper : 26 , alpha : 52 , alphanumeric : 62 , digits : 10 , symbols : 33 } , e . regex _name in t ) return Math . pow ( t [ e . regex _name ] , e . token . length ) ; switch ( e . regex _name ) { case "recent_year" : return r = Math . abs ( parseInt ( e . regex _match [ 0 ] ) - this . REFERENCE _YEAR ) , r = Math . max ( r , this . MIN _YEAR _SPACE ) } } , date _guesses
} , { "./adjacency_graphs" : 1 } ] , 7 : [ function ( require , module , exports ) {
var time _estimates ; time _estimates = { estimate _attack _times : function ( e ) { var t , n , s , o ; n = { online _throttling _100 _per _hour : e / ( 100 / 3600 ) , online _no _throttling _10 _per _second : e / 10 , offline _slow _hashing _1e4 _per _second : e / 1e4 , offline _fast _hashing _1e10 _per _second : e / 1e10 } , t = { } ; for ( s in n ) o = n [ s ] , t [ s ] = this . display _time ( o ) ; return { crack _times _seconds : n , crack _times _display : t , score : this . guesses _to _score ( e ) } } , guesses _to _score : function ( e ) { var t ; return t = 5 , e < 1e3 + t ? 0 : e < 1e6 + t ? 1 : e < 1e8 + t ? 2 : e < 1e10 + t ? 3 : 4 } , display _time : function ( e ) { var t , n , s , o , _ , r , i , a , u , c ; return i = 60 , r = 60 * i , s = 24 * r , a = 31 * s , c = 12 * a , n = 100 * c , u = e < 1 ? [ null , "less than a second" ] : e < i ? ( t = Math . round ( e ) , [ t , t + " second" ] ) : e < r ? ( t = Math . round ( e / i ) , [ t , t + " minute" ] ) : e < s ? ( t = Math . round ( e / r ) , [ t , t + " hour" ] ) : e < a ? ( t = Math . round ( e / s ) , [ t , t + " day" ] ) : e < c ? ( t = Math . round ( e / a ) , [ t , t + " month" ] ) : e < n ? ( t = Math . round ( e / c ) , [ t , t + " year" ] ) : [ null , "centuries" ] , o = u [ 0 ] , _ = u [ 1 ] , null != o && 1 !== o && ( _ += "s" ) , _ } } , module . exports = time _estimates ;
} , { } ] } , { } , [ 4 ] ) ( 4 )
} ) ;