kÿPwÎå'ÿ�b�¾†`¢vž“ê"Æ:ô#Sá]
æ6j_t»…D¢B	°e€Ïu_¾‰ÚgÁ—è=s*å¾	g*œÞèiXD�'ðø<ñ­¦Î0g2Mô„‡4™¿÷©÷sN³@8æ;rïß…Û0ÍÄ'ë”dMŒtãÎÉeès¤úŽ’ÝŽš"  PózEâî/æ‡Û!š¹Qû¡4zx_–U]<ì%?þ½NÄ\PÕk6ÌñoÈ”ÝÂÔ!Â“,¾²WxlFìÓñ’-3—[ùC£ÀEë6�!ÛOÁlc´“8)Ä }/?¾xìIpÍ/=ý Ë¿¸t%‡óóùÄ™]¶ð"J%ê÷ÞhÞéš jKCn»_~R�õ•3›™gÖå��Ä‚oG·¡ZCp¯+ÿœî›É»s¤Ýé=Ð¿¸Øpµ²Gq¶ÅŸø•{¡¬8_˜?±¿FdƒVZà.ý|Thó¥»ºR»Ó)¸&X‹/w/i˜I�¬Œ#¬ûˆ4
>3Š)·e¼b$ Ü<ÿ˜,ìöJÁLdÿâ´š°ƒdø¸{¹€ì¼‚šÔÒA“aSôÕæCÇÉw÷Ó¦f—&äŒÎjz'¶–Ý¿¹
ú%îwQTmõbÆz å±ý'¸I¯Õ1ÿ;[‚
\jæØÂ¡µ�‘º¯@&ºJµ‹£	ò©�Æ%hÖ¸°%)«Ÿ�¿(ºõpÍý�Q³–.ÅXÀâ›ÿß�·µV~ˆ"ET&Õ:ëx9¤Ü�Ž¿7Ö)Ã•óY²—D«B²Ç50ûŒOç(�$S!ªÏè'IËYÇ'þí“Ž�_4$ðæy�äIÁ’Tž5Þ[bëªÜ0Zü¡’žAòä×´4Ù]ÿòÕÇ žGàz]"ŸÐ¨ð=‹ŽÃº1köC'î†$ê'‘Ö"µÎ»Ù\D!VñB‹šrjh2ß9„%Õn¤\³œyObOíÐ&ú·.á.3?È?Ò®rñÝVéÈª<d±/š¼¾¡ôÿÑ<
Â‡¿s`©®ápuÛÙ‚bsæÉ–Àõ¦[RŠ-^Æú;~®ý¶gî]v3Y·¬7(½QYu²µ(Z7ÝtŒzÒoî¿ÿñì¡{BÛM;'§ó¼ÊÇM~feu¤Ü×Çdë.GŠqÚG­zU.UáÌË4í}w©gvþùþP?šê›2à¢É•‚žqYô¨
Džpz$Yþs¶ü7Æ­®ª‚š®ÑšzÚÕ­Ý×/”ö»ÿÆ_;{($ËÝôÎ“(­Ú0$$Z|åS=šä½—£zu7QðXù'Î*2å!´†ë	×ù0¬u`ï$ÝÜ=×ò+öþÓ*²4ô‰–c–CÄNÒ=	ü£)Ù	§C¼­vfö89¹*ÄË|QïÎG†¡v�¶fuj!ÓyÌéãˆ²ÞyáŸ$Ì×‡T
%Ø« e\!Taàû— *£IiÀ°‰ê&U«³DÐû›|
ô²ñƒ&o›žê n¤Énq=œ#=àï»,+æQB7mÎ­½×LœŠ~M(ÁWÆ1[d›­íëÞH@«ò(pütÌ½cpú�F¤©-¨ÙQ/Ë`N·qj‚öýÕë)n›êðX‚ê³õ�s}Œï—¥Õ	DÈ‘¨q/2¬ŒÝ	ßG±æ£,/Žàð“ÁðPÔçõ›%6/Ìï5þ	nfÈÇ-4�rÔc�‰p—ÔTf;E‹!åžéPEö²qÙôœûqþS,ª‘Ýw8c32}
\I:O~?Ò±¨ÖëwJ-13¶ŸÏÿŸ†�~î#�›zŽ}k§¹qêÓ7¬0ë^…µõ|kªÎÚ)‰t€ãšSÓ¸ñˆ¹ÿÁ>¬RS}�o+6ƒá‡½œ}Ó6N0èzp$=/Õ– •< © M7ÂÛçt±j{§Re¢�š—Â§—j9ßŽw˜¨ÂÓÐw�H×£ÖÝ!Lj÷šâ3�ô Gs^¢¸UIv{…Å……«Fžÿij ŠøãHjskf•-ÈLØÏ[{ôŽ–._�—ôòÂo4ïw$aK·õ´õˆÛPÀ±mœGç¡ÕÎwØ$ìk,§Ø¯¶Va5vWæŸÑ­Â)}A”ß;Ç©fy��~x¨MÜªÅ&w‰_Î‘csm�s7èñ"QR_
ÔÖÂ¡UVYÜ1¾RO…Šàüm¨îFVß yð{Ä�ç‹Ív«—at¤_çdÒE¤m§h<~‚!t‡2y1ÜŠ–×©¼qÃé®4‚•G4¼Å¢mÊh±/¢ÁawûOpÄ‰ÑÕ·qBB’šöYAD¦<kÑR¢£tmm‰ô a…°áHTnÓž(#	•‚¾9i
•l�jæ‰³PÔ‰½Ô¸ã‚nÈúØÝiï|ÍŸ4
Ö#]#¾¢•Í³ðã¤9}†päº»öãY7‹ÛaàÖÕn\-Äí!
-%�t”ôFÕÁ¯w~½ˆ
ZœaåßD‘Ö¨Á$}\°ŸVgm¡ï…Ö}†*øu„¥ñûo4Ô_Æ–*_¹d�ó(Fÿ»UaI·¯qg�ºqo­•K�ÑÊY‰ÓS‘¨Ùÿ�`¥lí™Ô*sà _MõXî²ÅÁ^+Þ:�XjÛ}�ÿœWß(ÅÒçÑò�Œõ¢‘¶ëînÚŽG¼‡àÌoŠ³SóIîßØù-¡VøÎÒ÷\*ÈÔ_Æ–*_¹d�ó(Fÿ†ŸÿZ2VŒŸÕ4(	÷(‚¢¼á¬‚8ì#óÔÿy$›·£‰°ò�wó‚±ðÓI”u7AjXZ28êÚç¥˜¡ã÷}ß:ÓŠ}O§xe¶-'æ§Žßý£[=þC	üÿLÚ¯¾ Ì}ßôy¯(úxÔ�Áz†8A2*Ô~&mež&Ž�nCÑxòÊÞÛÔ=* Lœ¢MOKú:P1£¾ˆ!)õuOf¤÷ÓÎI48JW«È‹HÐ�Ò0½“%&�ó<£€µ¢âý%B©.X4Wøo>×¤¡qz¦„kí¹¬Ê¥:f%ÃS!‹gñÌæ°Ú åÏïõ°±½D‡Ý†Ñ¨+°Ù@C<]™yüê:ø±½‚eVÙôØz›yjÿmsÝù]�µÆÆ ›1–Òä¦#p$¶�4VG�éæWãXªÀ­©3ß:îQÓùÃ±Ô�šIÔCíØi*c²Ò9×²¶‘
£Z ‘f{”P­dç®+pàÞè¼¯ö7Šzìî D>ªOÚ½†e¤jï¸‹µ§¿Ñ¿®�’@óÇ¬àlÕ{_ôñýž2*æ¸˜ÈÕüNC˜„0ýYˆZ NÖî·HÙx�ÂtSYTtgH`Dm¢­u®b~&3 °7-›”bÒ³ÛˆÿÞ]ÐÝw[7p#i°ÓW·ã<EÂu]ï¬íðÝPMÏçýW3NGÊVÊO.…aŽ*ýˆÒÊ·bïW²ì¬[ñÐekù	W^Ho}`YØýÁrö6\¯íJ‚³­D=¤7ü¾�þw!÷wPÕXÅæÊ
‰9^1ðUe0f“Í	+fÚ8�ÆÉÅ�õþÉURÎ”‹%Æ3]xbk4ž«��v¨×4)óãSû‘À®ráÚÍ´+¾²åŒ ix—óÛòÄaÀw(S×[³K ‚}ü‚8ò#šÿÊÙSßJXFûôáßrîßø0¬¶®ƒ‡eª’�ó½s…éå×¢•!Bj¬Æ6½yå~—>[Æ¸ÅŒçTžäå+$
”Èydb Ú`^ÿXp‚­]¥Ü›ßÉ¼I±&hA/±"çF‚ô© à—|©^áZå3EUiBgY~$´T¬4â®ˆg÷‘Q•A¤­&PV¢zy'kçŒöSÕÚ5«]�1:
ÂKÒ!¸tË¿¾é(·†>Ÿ§S²Ìè·h8°èÿT³OÂ–Ã�Ô’9‚[ü­´ ´ýÃÕ{¶Š ¤/ÞÿŒÆq§>ÊõGulè«ók+_PBÅ‘X%¢Q€yèweáxxæÑ®7¯<fcŸËfª< Ä¶·Õ¹ˆê˜³Î—(MW÷ð‚¹†ø›N£¸Q&ëv(úŠS¡?¸Ïß=í^–eŽÏº‹àRÍ´]=�É2`$ÄÂ+·üÀ‹Ù`#íÜªÔð/ßQîíÕš˜¡pöw(¡œ{wø´þH ‰µ@ñ_ß±&/8qxõ(3Š0§Íš5ENu�¨é!c á—_ 6})yÊ�sÎ7�Ç–d['lî?Z.B[]¼¶RÓ¨@sy¼›#ì©Iqf©º¼Ý:Tøù%ÒÅeEË ¨ÜˆfI8á¢°I-CÚððÍÃKòfH¦a¡ž÷Xëî:„ÙÄ=ëí=Á†ùOå=wÉªÌ »ÈÒSû€�¤DÔOmˆå‰�O«ƒ±M«Í¼hµ”ÔøSxÓôÖcòõHí(AÑ:ñR£dË«Ã(AjÛèTùu–qáM• ×ˆÜs·#kV‚ç5¿ø\û›•YZ*›„¹+eh}%#åC*bz6´ë‚ ¡"qþ™YSÂÖ{— l~ØˆìÚ­y¸40f}ÎO6à¬i{Ý6²A4PXO`™æˆW÷Ÿ[Æ=·wºøâ¼ÎàÑŸ—¥„é�%·`Þÿ±Z]]u;u%Ýõ“N<MÂƒc}_�ýk3¿È,NžA«¦TG#C^´œû+s(cÞÊcÊ_¸äêßã£Î
Ï`‹“¾p	¿JåÐü2ÍP9»ú§•¤�{.ªéxmwMpì¢yk ˆæ' Éú¡t Y‚49ˆ3”×¿à§Rð’ƒÚ\Ó“4Œ-²¹›[¡V*SeW]0ýþDmxž¦4p„G´”æTÛ…6÷[a_õÉ%Ùž‡ÌÃýG3‹;ßýî£‰l¾ôÞ„‰C¤éB‰T-Hlr7Ök±¾ÄrµØ\éòÍW•RQ•çR¬ÀæÜÀÜ9xXÒçt?i­ðµ[ÃË¤>æÏ³TìbsÊªN�Â ×ØKÃª†¹ä°‚j,¶U*ùwÙ$ì7l¸VÒ28öŠ¥}=$íEƒU£/ëŒf¬�ÈbŸœæþbääËåCÓ§ZÙ`’á�>–ìÖè ‘\ñ<ÖÜX#ãy	I®Ó`žgQÎÑ�&³£âBÇ+’H
Ú²àw'/NÌBVô1äÍ^êÝM<;bç'iG�Ø®5ÁÑÑ)L†ÏÈ@jÝŸÝ4/)Ú”kþQ‚6Ý!ør8Ah×7ŒàÊ2æ¡Úh_÷Ì�2ÈTB${ß¨úlºhkSáÓW-f0FÁï\œ®jšòe= ï£_ò°•xn�ÆH¨‰}¹¸/6/(œÔ?¤±…Ø¨=ØîwÊ xýúÑ�clã�2ÈTB${ß¨úlºhkSáþaíùî_c+uù—ÁT{Ü´7ëpÍC
H¯Cøm¸ÁQ;w$8Ï?ÊdÕO)Ô¬Jt);
void blf_dec(blf_ctx *, u_int32_t *, u_int16_t);

void blf_ecb_encrypt(blf_ctx *, u_int8_t *, u_int32_t);
void blf_ecb_decrypt(blf_ctx *, u_int8_t *, u_int32_t);

void blf_cbc_encrypt(blf_ctx *, u_int8_t *, u_int8_t *, u_int32_t);
void blf_cbc_decrypt(blf_ctx *, u_int8_t *, u_int8_t *, u_int32_t);

/* Converts u_int8_t to u_int32_t */
u_int32_t Blowfish_stream2word(const u_int8_t *, u_int16_t , u_int16_t *);

/* bcrypt functions*/
void bcrypt_gensalt(char, u_int8_t, u_int8_t*, char *);
void bcrypt(const char *, size_t key_len, const char *, char *);
void encode_salt(char *, u_int8_t *, char, u_int16_t, u_int8_t);
u_int32_t bcrypt_get_rounds(const char *);

#endif
