o
    \¨ÊhØR  ã                   @   s2  d Z ddlZddlT ddlmZ i dd“dd“dd	“d
d“dd“dd“dd“dd“dd“dd“dd“dd“dd“dd“d d!“d"d#“Zd$d%„ Zd&d'„ Zd(d)„ Zd*d+„ Z	g d,¢Z
ed-kr•g d.¢ZeD ]6\ZZed/eƒ e e¡ZeeƒZeekr�ed0eeƒd1eeƒƒ e	eƒZeekr”ed2eeƒd1eeƒƒ q`dS dS )3z$Id$é    N)Ú*©ÚreduceÚ0000é   Ú0001é   Ú0010é   Ú0011é   Ú0100é   Ú0101é   Ú0110é   Ú0111é   Ú1000é	   Ú1001é
   Ú1010é   Ú1011é   Ú1100é   Ú1101é   Ú1110é   Ú1111c                 C   s&   dd„ | D ƒ}dd„ |D ƒ}d  |¡S )z,Convert a key into a string of binary digitsc                 S   s   g | ]}t |ƒ‘qS © )Úbord©Ú.0Úxr$   r$   úE/var/www/html/env/lib/python3.10/site-packages/Crypto/Util/RFC1751.pyÚ
<listcomp>(   ó    z_key2bin.<locals>.<listcomp>c                 S   s$   g | ]}t |d ?  t |d@   ‘qS )r   r"   )Úbinaryr&   r$   r$   r)   r*   )   s   $ Ú )Újoin)ÚsÚklr$   r$   r)   Ú_key2bin&   s   
r1   c                 C   s    | ||| … }t dd„ |dƒS )zjExtract a bitstring(2.x)/bytestring(2.x) from a string of binary digits, and return its
    numeric value.c                 S   s   | d t |ƒ d S )Nr   é0   )Úord©r(   Úyr$   r$   r)   Ú<lambda>0   r+   z_extract.<locals>.<lambda>r   r   )ÚkeyÚstartÚlengthÚkr$   r$   r)   Ú_extract,   s   r;   c                 C   s¦   d}t dt| ƒdƒD ]B}| ||d … }t|ƒ}d}t dddƒD ]
}|t||dƒ }q t|t|d> d@ ƒ ƒ}t dddƒD ]}|tt||dƒ  d	 }q=q
|d
d… S )z«key_to_english(key:string(2.x)/bytes(3.x)) : string
    Transform an arbitrary key into a string containing English words.
    The key length must be a multiple of 8.
    r-   r   r   é@   r   r   éÿ   r   ú Néÿÿÿÿ)ÚrangeÚlenr1   r;   ÚbchrÚwordlist)r7   ÚenglishÚindexÚsubkeyÚskbinÚpÚir$   r$   r)   Úkey_to_english2   s   "ÿrJ   c                 C   sÎ  |   ¡  ¡ }tdƒ}tdt|ƒdƒD ]Ò}|||d … }ddg }d}|D ]‡}t |¡}d|d d  d }||> }	|	d? |	d? d@ |	d@ }
}}|d	kr{||d
?  |
B ||d
? < ||d
? d  |B ||d
? d < ||d
? d  |B ||d
? d < n-|dkrœ||d
?  |B ||d
? < ||d
? d  |B ||d
? d < n||d
?  |B ||d
? < |d }q%tdd„ |tdƒƒ}t|ƒ}d}tdddƒD ]
}|t	||dƒ }qÃ|d
@ t	|ddƒkrÜt
dƒ‚||dd…  }q|S )zÏenglish_to_key(string):string(2.x)/bytes(2.x)
    Transform a string into a corresponding key.
    The string must contain words separated by whitespace; the number
    of words must be a multiple of 6.
    r-   r   r   r   r   r   é   r=   r   r
   r   r   éýÿÿÿc                 S   s   | t |ƒ S )N)rB   r4   r$   r$   r)   r6   \   s    z english_to_key.<locals>.<lambda>r<   zParity error in resulting key)ÚupperÚsplitÚbr@   rA   rC   rE   r   r1   r;   Ú
ValueError)r/   ÚLr7   rE   ÚsublistÚcharÚbitsrI   Úshiftr5   ÚclÚccÚcrrF   rG   rH   r$   r$   r)   Úenglish_to_keyD   s2   
  ""
"rY   (   ÚAÚABEÚACEÚACTÚADÚADAÚADDÚAGOÚAIDÚAIMÚAIRÚALLÚALPÚAMÚAMYÚANÚANAÚANDÚANNÚANTÚANYÚAPEÚAPSÚAPTÚARCÚAREÚARKÚARMÚARTÚASÚASHÚASKÚATÚATEÚAUGÚAUKÚAVEÚAWEÚAWKÚAWLÚAWNÚAXÚAYEÚBADÚBAGÚBAHÚBAMÚBANÚBARÚBATÚBAYÚBEÚBEDÚBEEÚBEGÚBENÚBETÚBEYÚBIBÚBIDÚBIGÚBINÚBITÚBOBÚBOGÚBONÚBOOÚBOPÚBOWÚBOYÚBUBÚBUDÚBUGÚBUMÚBUNÚBUSÚBUTÚBUYÚBYÚBYEÚCABÚCALÚCAMÚCANÚCAPÚCARÚCATÚCAWÚCODÚCOGÚCOLÚCONÚCOOÚCOPÚCOTÚCOWÚCOYÚCRYÚCUBÚCUEÚCUPÚCURÚCUTÚDABÚDADÚDAMÚDANÚDARÚDAYÚDEEÚDELÚDENÚDESÚDEWÚDIDÚDIEÚDIGÚDINÚDIPÚDOÚDOEÚDOGÚDONÚDOTÚDOWÚDRYÚDUBÚDUDÚDUEÚDUGÚDUNÚEARÚEATÚEDÚEELÚEGGÚEGOÚELIÚELKÚELMÚELYÚEMÚENDÚESTÚETCÚEVAÚEVEÚEWEÚEYEÚFADÚFANÚFARÚFATÚFAYÚFEDÚFEEÚFEWÚFIBÚFIGÚFINÚFIRÚFITÚFLOÚFLYÚFOEÚFOGÚFORÚFRYÚFUMÚFUNÚFURÚGABÚGADÚGAGÚGALÚGAMÚGAPÚGASÚGAYÚGEEÚGELÚGEMÚGETÚGIGÚGILÚGINÚGOÚGOTÚGUMÚGUNÚGUSÚGUTÚGUYÚGYMÚGYPÚHAÚHADÚHALÚHAMÚHANÚHAPÚHASÚHATÚHAWÚHAYÚHEÚHEMÚHENÚHERÚHEWÚHEYÚHIÚHIDÚHIMÚHIPÚHISÚHITÚHOÚHOBÚHOCÚHOEÚHOGÚHOPÚHOTÚHOWÚHUBÚHUEÚHUGÚHUHÚHUMÚHUTÚIÚICYÚIDAÚIFÚIKEÚILLÚINKÚINNÚIOÚIONÚIQÚIRAÚIREÚIRKÚISÚITÚITSÚIVYÚJABÚJAGÚJAMÚJANÚJARÚJAWÚJAYÚJETÚJIGÚJIMÚJOÚJOBÚJOEÚJOGÚJOTÚJOYÚJUGÚJUTÚKAYÚKEGÚKENÚKEYÚKIDÚKIMÚKINÚKITÚLAÚLABÚLACÚLADÚLAGÚLAMÚLAPÚLAWÚLAYÚLEAÚLEDÚLEEÚLEGÚLENÚLEOÚLETÚLEWÚLIDÚLIEÚLINÚLIPÚLITÚLOÚLOBÚLOGÚLOPÚLOSÚLOTÚLOUÚLOWÚLOYÚLUGÚLYEÚMAÚMACÚMADÚMAEÚMANÚMAOÚMAPÚMATÚMAWÚMAYÚMEÚMEGÚMELÚMENÚMETÚMEWÚMIDÚMINÚMITÚMOBÚMODÚMOEÚMOOÚMOPÚMOSÚMOTÚMOWÚMUDÚMUGÚMUMÚMYÚNABÚNAGÚNANÚNAPÚNATÚNAYÚNEÚNEDÚNEEÚNETÚNEWÚNIBÚNILÚNIPÚNITÚNOÚNOBÚNODÚNONÚNORÚNOTÚNOVÚNOWÚNUÚNUNÚNUTÚOÚOAFÚOAKÚOARÚOATÚODDÚODEÚOFÚOFFÚOFTÚOHÚOILÚOKÚOLDÚONÚONEÚORÚORBÚOREÚORRÚOSÚOTTÚOURÚOUTÚOVAÚOWÚOWEÚOWLÚOWNÚOXÚPAÚPADÚPALÚPAMÚPANÚPAPÚPARÚPATÚPAWÚPAYÚPEAÚPEGÚPENÚPEPÚPERÚPETÚPEWÚPHIÚPIÚPIEÚPINÚPITÚPLYÚPOÚPODÚPOEÚPOPÚPOTÚPOWÚPROÚPRYÚPUBÚPUGÚPUNÚPUPÚPUTÚQUOÚRAGÚRAMÚRANÚRAPÚRATÚRAWÚRAYÚREBÚREDÚREPÚRETÚRIBÚRIDÚRIGÚRIMÚRIOÚRIPÚROBÚRODÚROEÚRONÚROTÚROWÚROYÚRUBÚRUEÚRUGÚRUMÚRUNÚRYEÚSACÚSADÚSAGÚSALÚSAMÚSANÚSAPÚSATÚSAWÚSAYÚSEAÚSECÚSEEÚSENÚSETÚSEWÚSHEÚSHYÚSINÚSIPÚSIRÚSISÚSITÚSKIÚSKYÚSLYÚSOÚSOBÚSODÚSONÚSOPÚSOWÚSOYÚSPAÚSPYÚSUBÚSUDÚSUEÚSUMÚSUNÚSUPÚTABÚTADÚTAGÚTANÚTAPÚTARÚTEAÚTEDÚTEEÚTENÚTHEÚTHYÚTICÚTIEÚTIMÚTINÚTIPÚTOÚTOEÚTOGÚTOMÚTONÚTOOÚTOPÚTOWÚTOYÚTRYÚTUBÚTUGÚTUMÚTUNÚTWOÚUNÚUPÚUSÚUSEÚVANÚVATÚVETÚVIEÚWADÚWAGÚWARÚWASÚWAYÚWEÚWEBÚWEDÚWEEÚWETÚWHOÚWHYÚWINÚWITÚWOKÚWONÚWOOÚWOWÚWRYÚWUÚYAMÚYAPÚYAWÚYEÚYEAÚYESÚYETÚYOUÚABEDÚABELÚABETÚABLEÚABUTÚACHEÚACIDÚACMEÚACREÚACTAÚACTSÚADAMÚADDSÚADENÚAFARÚAFROÚAGEEÚAHEMÚAHOYÚAIDAÚAIDEÚAIDSÚAIRYÚAJARÚAKINÚALANÚALECÚALGAÚALIAÚALLYÚALMAÚALOEÚALSOÚALTOÚALUMÚALVAÚAMENÚAMESÚAMIDÚAMMOÚAMOKÚAMOSÚAMRAÚANDYÚANEWÚANNAÚANNEÚANTEÚANTIÚAQUAÚARABÚARCHÚAREAÚARGOÚARIDÚARMYÚARTSÚARTYÚASIAÚASKSÚATOMÚAUNTÚAURAÚAUTOÚAVERÚAVIDÚAVISÚAVONÚAVOWÚAWAYÚAWRYÚBABEÚBABYÚBACHÚBACKÚBADEÚBAILÚBAITÚBAKEÚBALDÚBALEÚBALIÚBALKÚBALLÚBALMÚBANDÚBANEÚBANGÚBANKÚBARBÚBARDÚBAREÚBARKÚBARNÚBARRÚBASEÚBASHÚBASKÚBASSÚBATEÚBATHÚBAWDÚBAWLÚBEADÚBEAKÚBEAMÚBEANÚBEARÚBEATÚBEAUÚBECKÚBEEFÚBEENÚBEERÚBEETÚBELAÚBELLÚBELTÚBENDÚBENTÚBERGÚBERNÚBERTÚBESSÚBESTÚBETAÚBETHÚBHOYÚBIASÚBIDEÚBIENÚBILEÚBILKÚBILLÚBINDÚBINGÚBIRDÚBITEÚBITSÚBLABÚBLATÚBLEDÚBLEWÚBLOBÚBLOCÚBLOTÚBLOWÚBLUEÚBLUMÚBLURÚBOARÚBOATÚBOCAÚBOCKÚBODEÚBODYÚBOGYÚBOHRÚBOILÚBOLDÚBOLOÚBOLTÚBOMBÚBONAÚBONDÚBONEÚBONGÚBONNÚBONYÚBOOKÚBOOMÚBOONÚBOOTÚBOREÚBORGÚBORNÚBOSEÚBOSSÚBOTHÚBOUTÚBOWLÚBOYDÚBRADÚBRAEÚBRAGÚBRANÚBRAYÚBREDÚBREWÚBRIGÚBRIMÚBROWÚBUCKÚBUDDÚBUFFÚBULBÚBULKÚBULLÚBUNKÚBUNTÚBUOYÚBURGÚBURLÚBURNÚBURRÚBURTÚBURYÚBUSHÚBUSSÚBUSTÚBUSYÚBYTEÚCADYÚCAFEÚCAGEÚCAINÚCAKEÚCALFÚCALLÚCALMÚCAMEÚCANEÚCANTÚCARDÚCAREÚCARLÚCARRÚCARTÚCASEÚCASHÚCASKÚCASTÚCAVEÚCEILÚCELLÚCENTÚCERNÚCHADÚCHARÚCHATÚCHAWÚCHEFÚCHENÚCHEWÚCHICÚCHINÚCHOUÚCHOWÚCHUBÚCHUGÚCHUMÚCITEÚCITYÚCLADÚCLAMÚCLANÚCLAWÚCLAYÚCLODÚCLOGÚCLOTÚCLUBÚCLUEÚCOALÚCOATÚCOCAÚCOCKÚCOCOÚCODAÚCODEÚCODYÚCOEDÚCOILÚCOINÚCOKEÚCOLAÚCOLDÚCOLTÚCOMAÚCOMBÚCOMEÚCOOKÚCOOLÚCOONÚCOOTÚCORDÚCOREÚCORKÚCORNÚCOSTÚCOVEÚCOWLÚCRABÚCRAGÚCRAMÚCRAYÚCREWÚCRIBÚCROWÚCRUDÚCUBAÚCUBEÚCUFFÚCULLÚCULTÚCUNYÚCURBÚCURDÚCUREÚCURLÚCURTÚCUTSÚDADEÚDALEÚDAMEÚDANAÚDANEÚDANGÚDANKÚDAREÚDARKÚDARNÚDARTÚDASHÚDATAÚDATEÚDAVEÚDAVYÚDAWNÚDAYSÚDEADÚDEAFÚDEALÚDEANÚDEARÚDEBTÚDECKÚDEEDÚDEEMÚDEERÚDEFTÚDEFYÚDELLÚDENTÚDENYÚDESKÚDIALÚDICEÚDIEDÚDIETÚDIMEÚDINEÚDINGÚDINTÚDIREÚDIRTÚDISCÚDISHÚDISKÚDIVEÚDOCKÚDOESÚDOLEÚDOLLÚDOLTÚDOMEÚDONEÚDOOMÚDOORÚDORAÚDOSEÚDOTEÚDOUGÚDOURÚDOVEÚDOWNÚDRABÚDRAGÚDRAMÚDRAWÚDREWÚDRUBÚDRUGÚDRUMÚDUALÚDUCKÚDUCTÚDUELÚDUETÚDUKEÚDULLÚDUMBÚDUNEÚDUNKÚDUSKÚDUSTÚDUTYÚEACHÚEARLÚEARNÚEASEÚEASTÚEASYÚEBENÚECHOÚEDDYÚEDENÚEDGEÚEDGYÚEDITÚEDNAÚEGANÚELANÚELBAÚELLAÚELSEÚEMILÚEMITÚEMMAÚENDSÚERICÚEROSÚEVENÚEVERÚEVILÚEYEDÚFACEÚFACTÚFADEÚFAILÚFAINÚFAIRÚFAKEÚFALLÚFAMEÚFANGÚFARMÚFASTÚFATEÚFAWNÚFEARÚFEATÚFEEDÚFEELÚFEETÚFELLÚFELTÚFENDÚFERNÚFESTÚFEUDÚFIEFÚFIGSÚFILEÚFILLÚFILMÚFINDÚFINEÚFINKÚFIREÚFIRMÚFISHÚFISKÚFISTÚFITSÚFIVEÚFLAGÚFLAKÚFLAMÚFLATÚFLAWÚFLEAÚFLEDÚFLEWÚFLITÚFLOCÚFLOGÚFLOWÚFLUBÚFLUEÚFOALÚFOAMÚFOGYÚFOILÚFOLDÚFOLKÚFONDÚFONTÚFOODÚFOOLÚFOOTÚFORDÚFOREÚFORKÚFORMÚFORTÚFOSSÚFOULÚFOURÚFOWLÚFRAUÚFRAYÚFREDÚFREEÚFRETÚFREYÚFROGÚFROMÚFUELÚFULLÚFUMEÚFUNDÚFUNKÚFURYÚFUSEÚFUSSÚGAFFÚGAGEÚGAILÚGAINÚGAITÚGALAÚGALEÚGALLÚGALTÚGAMEÚGANGÚGARBÚGARYÚGASHÚGATEÚGAULÚGAURÚGAVEÚGAWKÚGEARÚGELDÚGENEÚGENTÚGERMÚGETSÚGIBEÚGIFTÚGILDÚGILLÚGILTÚGINAÚGIRDÚGIRLÚGISTÚGIVEÚGLADÚGLEEÚGLENÚGLIBÚGLOBÚGLOMÚGLOWÚGLUEÚGLUMÚGLUTÚGOADÚGOALÚGOATÚGOERÚGOESÚGOLDÚGOLFÚGONEÚGONGÚGOODÚGOOFÚGOREÚGORYÚGOSHÚGOUTÚGOWNÚGRABÚGRADÚGRAYÚGREGÚGREWÚGREYÚGRIDÚGRIMÚGRINÚGRITÚGROWÚGRUBÚGULFÚGULLÚGUNKÚGURUÚGUSHÚGUSTÚGWENÚGWYNÚHAAGÚHAASÚHACKÚHAILÚHAIRÚHALEÚHALFÚHALLÚHALOÚHALTÚHANDÚHANGÚHANKÚHANSÚHARDÚHARKÚHARMÚHARTÚHASHÚHASTÚHATEÚHATHÚHAULÚHAVEÚHAWKÚHAYSÚHEADÚHEALÚHEARÚHEATÚHEBEÚHECKÚHEEDÚHEELÚHEFTÚHELDÚHELLÚHELMÚHERBÚHERDÚHEREÚHEROÚHERSÚHESSÚHEWNÚHICKÚHIDEÚHIGHÚHIKEÚHILLÚHILTÚHINDÚHINTÚHIREÚHISSÚHIVEÚHOBOÚHOCKÚHOFFÚHOLDÚHOLEÚHOLMÚHOLTÚHOMEÚHONEÚHONKÚHOODÚHOOFÚHOOKÚHOOTÚHORNÚHOSEÚHOSTÚHOURÚHOVEÚHOWEÚHOWLÚHOYTÚHUCKÚHUEDÚHUFFÚHUGEÚHUGHÚHUGOÚHULKÚHULLÚHUNKÚHUNTÚHURDÚHURLÚHURTÚHUSHÚHYDEÚHYMNÚIBISÚICONÚIDEAÚIDLEÚIFFYÚINCAÚINCHÚINTOÚIONSÚIOTAÚIOWAÚIRISÚIRMAÚIRONÚISLEÚITCHÚITEMÚIVANÚJACKÚJADEÚJAILÚJAKEÚJANEÚJAVAÚJEANÚJEFFÚJERKÚJESSÚJESTÚJIBEÚJILLÚJILTÚJIVEÚJOANÚJOBSÚJOCKÚJOELÚJOEYÚJOHNÚJOINÚJOKEÚJOLTÚJOVEÚJUDDÚJUDEÚJUDOÚJUDYÚJUJUÚJUKEÚJULYÚJUNEÚJUNKÚJUNOÚJURYÚJUSTÚJUTEÚKAHNÚKALEÚKANEÚKANTÚKARLÚKATEÚKEELÚKEENÚKENOÚKENTÚKERNÚKERRÚKEYSÚKICKÚKILLÚKINDÚKINGÚKIRKÚKISSÚKITEÚKLANÚKNEEÚKNEWÚKNITÚKNOBÚKNOTÚKNOWÚKOCHÚKONGÚKUDOÚKURDÚKURTÚKYLEÚLACEÚLACKÚLACYÚLADYÚLAIDÚLAINÚLAIRÚLAKEÚLAMBÚLAMEÚLANDÚLANEÚLANGÚLARDÚLARKÚLASSÚLASTÚLATEÚLAUDÚLAVAÚLAWNÚLAWSÚLAYSÚLEADÚLEAFÚLEAKÚLEANÚLEARÚLEEKÚLEERÚLEFTÚLENDÚLENSÚLENTÚLEONÚLESKÚLESSÚLESTÚLETSÚLIARÚLICEÚLICKÚLIEDÚLIENÚLIESÚLIEUÚLIFEÚLIFTÚLIKEÚLILAÚLILTÚLILYÚLIMAÚLIMBÚLIMEÚLINDÚLINEÚLINKÚLINTÚLIONÚLISAÚLISTÚLIVEÚLOADÚLOAFÚLOAMÚLOANÚLOCKÚLOFTÚLOGEÚLOISÚLOLAÚLONEÚLONGÚLOOKÚLOONÚLOOTÚLORDÚLOREÚLOSEÚLOSSÚLOSTÚLOUDÚLOVEÚLOWEÚLUCKÚLUCYÚLUGEÚLUKEÚLULUÚLUNDÚLUNGÚLURAÚLUREÚLURKÚLUSHÚLUSTÚLYLEÚLYNNÚLYONÚLYRAÚMACEÚMADEÚMAGIÚMAIDÚMAILÚMAINÚMAKEÚMALEÚMALIÚMALLÚMALTÚMANAÚMANNÚMANYÚMARCÚMAREÚMARKÚMARSÚMARTÚMARYÚMASHÚMASKÚMASSÚMASTÚMATEÚMATHÚMAULÚMAYOÚMEADÚMEALÚMEANÚMEATÚMEEKÚMEETÚMELDÚMELTÚMEMOÚMENDÚMENUÚMERTÚMESHÚMESSÚMICEÚMIKEÚMILDÚMILEÚMILKÚMILLÚMILTÚMIMIÚMINDÚMINEÚMINIÚMINKÚMINTÚMIREÚMISSÚMISTÚMITEÚMITTÚMOANÚMOATÚMOCKÚMODEÚMOLDÚMOLEÚMOLLÚMOLTÚMONAÚMONKÚMONTÚMOODÚMOONÚMOORÚMOOTÚMOREÚMORNÚMORTÚMOSSÚMOSTÚMOTHÚMOVEÚMUCHÚMUCKÚMUDDÚMUFFÚMULEÚMULLÚMURKÚMUSHÚMUSTÚMUTEÚMUTTÚMYRAÚMYTHÚNAGYÚNAILÚNAIRÚNAMEÚNARYÚNASHÚNAVEÚNAVYÚNEALÚNEARÚNEATÚNECKÚNEEDÚNEILÚNELLÚNEONÚNEROÚNESSÚNESTÚNEWSÚNEWTÚNIBSÚNICEÚNICKÚNILEÚNINAÚNINEÚNOAHÚNODEÚNOELÚNOLLÚNONEÚNOOKÚNOONÚNORMÚNOSEÚNOTEÚNOUNÚNOVAÚNUDEÚNULLÚNUMBÚOATHÚOBEYÚOBOEÚODINÚOHIOÚOILYÚOINTÚOKAYÚOLAFÚOLDYÚOLGAÚOLINÚOMANÚOMENÚOMITÚONCEÚONESÚONLYÚONTOÚONUSÚORALÚORGYÚOSLOÚOTISÚOTTOÚOUCHÚOUSTÚOUTSÚOVALÚOVENÚOVERÚOWLYÚOWNSÚQUADÚQUITÚQUODÚRACEÚRACKÚRACYÚRAFTÚRAGEÚRAIDÚRAILÚRAINÚRAKEÚRANKÚRANTÚRAREÚRASHÚRATEÚRAVEÚRAYSÚREADÚREALÚREAMÚREARÚRECKÚREEDÚREEFÚREEKÚREELÚREIDÚREINÚRENAÚRENDÚRENTÚRESTÚRICEÚRICHÚRICKÚRIDEÚRIFTÚRILLÚRIMEÚRINGÚRINKÚRISEÚRISKÚRITEÚROADÚROAMÚROARÚROBEÚROCKÚRODEÚROILÚROLLÚROMEÚROODÚROOFÚROOKÚROOMÚROOTÚROSAÚROSEÚROSSÚROSYÚROTHÚROUTÚROVEÚROWEÚROWSÚRUBEÚRUBYÚRUDEÚRUDYÚRUINÚRULEÚRUNGÚRUNSÚRUNTÚRUSEÚRUSHÚRUSKÚRUSSÚRUSTÚRUTHÚSACKÚSAFEÚSAGEÚSAIDÚSAILÚSALEÚSALKÚSALTÚSAMEÚSANDÚSANEÚSANGÚSANKÚSARAÚSAULÚSAVEÚSAYSÚSCANÚSCARÚSCATÚSCOTÚSEALÚSEAMÚSEARÚSEATÚSEEDÚSEEKÚSEEMÚSEENÚSEESÚSELFÚSELLÚSENDÚSENTÚSETSÚSEWNÚSHAGÚSHAMÚSHAWÚSHAYÚSHEDÚSHIMÚSHINÚSHODÚSHOEÚSHOTÚSHOWÚSHUNÚSHUTÚSICKÚSIDEÚSIFTÚSIGHÚSIGNÚSILKÚSILLÚSILOÚSILTÚSINEÚSINGÚSINKÚSIREÚSITEÚSITSÚSITUÚSKATÚSKEWÚSKIDÚSKIMÚSKINÚSKITÚSLABÚSLAMÚSLATÚSLAYÚSLEDÚSLEWÚSLIDÚSLIMÚSLITÚSLOBÚSLOGÚSLOTÚSLOWÚSLUGÚSLUMÚSLURÚSMOGÚSMUGÚSNAGÚSNOBÚSNOWÚSNUBÚSNUGÚSOAKÚSOARÚSOCKÚSODAÚSOFAÚSOFTÚSOILÚSOLDÚSOMEÚSONGÚSOONÚSOOTÚSOREÚSORTÚSOULÚSOURÚSOWNÚSTABÚSTAGÚSTANÚSTARÚSTAYÚSTEMÚSTEWÚSTIRÚSTOWÚSTUBÚSTUNÚSUCHÚSUDSÚSUITÚSULKÚSUMSÚSUNGÚSUNKÚSUREÚSURFÚSWABÚSWAGÚSWAMÚSWANÚSWATÚSWAYÚSWIMÚSWUMÚTACKÚTACTÚTAILÚTAKEÚTALEÚTALKÚTALLÚTANKÚTASKÚTATEÚTAUTÚTEALÚTEAMÚTEARÚTECHÚTEEMÚTEENÚTEETÚTELLÚTENDÚTENTÚTERMÚTERNÚTESSÚTESTÚTHANÚTHATÚTHEEÚTHEMÚTHENÚTHEYÚTHINÚTHISÚTHUDÚTHUGÚTICKÚTIDEÚTIDYÚTIEDÚTIERÚTILEÚTILLÚTILTÚTIMEÚTINAÚTINEÚTINTÚTINYÚTIREÚTOADÚTOGOÚTOILÚTOLDÚTOLLÚTONEÚTONGÚTONYÚTOOKÚTOOLÚTOOTÚTOREÚTORNÚTOTEÚTOURÚTOUTÚTOWNÚTRAGÚTRAMÚTRAYÚTREEÚTREKÚTRIGÚTRIMÚTRIOÚTRODÚTROTÚTROYÚTRUEÚTUBAÚTUBEÚTUCKÚTUFTÚTUNAÚTUNEÚTUNGÚTURFÚTURNÚTUSKÚTWIGÚTWINÚTWITÚULANÚUNITÚURGEÚUSEDÚUSERÚUSESÚUTAHÚVAILÚVAINÚVALEÚVARYÚVASEÚVASTÚVEALÚVEDAÚVEILÚVEINÚVENDÚVENTÚVERBÚVERYÚVETOÚVICEÚVIEWÚVINEÚVISEÚVOIDÚVOLTÚVOTEÚWACKÚWADEÚWAGEÚWAILÚWAITÚWAKEÚWALEÚWALKÚWALLÚWALTÚWANDÚWANEÚWANGÚWANTÚWARDÚWARMÚWARNÚWARTÚWASHÚWASTÚWATSÚWATTÚWAVEÚWAVYÚWAYSÚWEAKÚWEALÚWEANÚWEARÚWEEDÚWEEKÚWEIRÚWELDÚWELLÚWELTÚWENTÚWEREÚWERTÚWESTÚWHAMÚWHATÚWHEEÚWHENÚWHETÚWHOAÚWHOMÚWICKÚWIFEÚWILDÚWILLÚWINDÚWINEÚWINGÚWINKÚWINOÚWIREÚWISEÚWISHÚWITHÚWOLFÚWONTÚWOODÚWOOLÚWORDÚWOREÚWORKÚWORMÚWORNÚWOVEÚWRITÚWYNNÚYALEÚYANGÚYANKÚYARDÚYARNÚYAWLÚYAWNÚYEAHÚYEARÚYELLÚYOGAÚYOKEÚ__main__))ÚEB33F77EE73D4053zTIDE ITCH SLOW REIN RULE MOT)Ú CCAC2AED591056BE4F90FD441C534766z8RASH BUSH MILK LOOK BAD BRIM AVID GAFF BAIT ROT POD LOVE)Ú EFF81F9BFBC65350920CDD7416DE8009z7TROD MUTE TAIL WARM CHAR KONG HAAG CITY BORE O TEAL AWLz
Trying keyzkey_to_english fails on keyz, producingzenglish_to_key fails on key)Ú__revision__ÚbinasciiÚCrypto.Util.py3compatÚ	functoolsr   r,   r1   r;   rJ   rY   rC   Ú__name__Údatar7   ÚwordsÚprintÚa2b_hexÚw2ÚreprÚstrÚk2r$   r$   r$   r)   Ú<module>   sZ   &ÿÿÿÿÿÿþþþþ# u

€ð