PK+@h|ZZ bluemist.pngPNG  IHDRxtEXtSoftwareAdobe ImageReadyqe<Z>IDATxڌَ,Kv%ff1dP3Az,-J-HYU$[ =KO oA@CꩪXgȌw7{-y>s+3lkvoX8_?LeICd;M5室.KyJ&g]iJ:sMq鸾~ȾTp:yI9cI7}Y_֮eNo׿}q?{~?[084׿iY/r7?}~k8׿O_Kz?uvF{ߟӏ_Ҽ~&ni;wX%֯]5߃]z]W_ˇ)-x}߬? ^߯饖ט?t|@.XhX?yėY6~\ߗa,QP7{Z9ba:μ;Mum֊/ɺzjswŃ-nz{ZY=,X3vDhBk*b ]^ɖ?!=ÎvӸv'xhRmak{1`ޯu3Nuc۱۩Z}xŸq|oV'Cͼj\'CJkgȢ3/7Y'7mZ<Xܾljlus>NZ<󂏾I;w6_eW_;<۵k;L;;.N>DccZ%7eXKl@\ ׉GN,Tžj_y#AW$gĆn}}S_⿶FnmSm+RMϰw&_Q/{ϝQWF.G@2\-.|@q|߭+/Q̪A`p-<466# /~VwYܢvu"q}kBa. w"<)w"s>џFuVkpIn'9MLN/&<'nҲf`vdچ맾LŐ$-{ $g,[,/(|~ z#ov0X ۃ֚ p[mޮ)}N&|3¬`ab?Xx$ܘub4s]f?״ rL=c$E\擝yb}cŢTlҽk~vyXe)]pެ~9ӗb`-f\98f;,-9v'6ANrjQ?4f&3,|qD{|Q'٢䁔/4)u0k zp'ٵ_B?3Â)}dI&zh}=M/N;.Kq'=sPėWx`00(i`N/vuyv&M!S0u\KQB3C{7E oMqi)·տesChlr?ti `g9<"gkޮJ\=፥p?Xd,7都odRO(s~Ziu..|?}%^ sMy Bσ |iYH_m<1Fxblcx|f0L<$Nw~ul!'ό@LXAf0ՇǏ;[&Blt7i~/ P9%, }"U* VLh1 >?1Wq5 VzBh a,K$ W{%/KKSjx/DZXF MDjj;ip0=pBr@RF9MIQN3v}O֎'S^`Fx+zxҏ{2WkC$LvwۣmU}ؽ,G71tgn go'5SBVpNy5HW[ ~hiHJa޿z(aOWЛb*IV]o`B}0|EXQV,j<}ū#܉=~ܣ=gf%Qb[\-_A^B<BsF<.>?v|^T/v!O ~1ysC~USHpUSTMo<#10/Zx*nUj5zdwbR{0swPInOrM 4AϧֶTҪ3tU H;ҳZE̤Eqoub;{q*ͩ7.D|NfvT Pw<'ӟ(zWhR<ը"V@̐baC^f?13?, b/^>𞗥BmtGL{˃uCyj_`b +WaP(V\ŎKA/KCs(ڑj5_pCϗ)`2S-'؁ֽ7UТ y ڵFB۰##f) #O{6pODI1D=OW>Y@J Y=_Ez#x OѺ 0,ZҡT+P%#da*?KRX% XׅٮS a G72aߋ{z]|kE݋CuݫUK(y/W냟}cpMFb92XiE=,#}OWKgt(XX*d'>EB ݗ#}$V@@ԪIbBq|AloSv?yqHa+3&J(܋ˠ%Y|A{v&a)O9Շc3}.}S4197Dc|0\ҩD'?3}l sio{QVÆiK鏔3.)D)B\Wd.&Uc_hFˊ1N*6鑛35xkF3ڗeKLu0րmsǚ_gp{/ sL=k|6^ (, Ri&wi?0o8?鿖JP:n %Kw^TpT\}#JGdmHy6!.q I酊Cq^FbG} yl#Sea1;1s *Wv*Yp;`}߅GxH%9ՐwcX0aC;{GZ|՟}N{~G[[X@lDֻ ^|Mt"a%wV]VHU&0y0 x)8NXRg@^Y!Xk_vZt}yѱ`B-e8qव`v8a[h)I߮~z'z1R`@𧀸? ܘ?]?ܚ dž)'/c;NHOxJz GKׇgG҈ы(?knԥ;oԾnx.;Ȱ.9׿Zoا>?~sx 9aN`@mܹOzÞ^ KѽNj"ĕܞbRGþ0XBBrjZ9<)7ZD0/'+n8=)uflX$ӉW*xQaksD1zsDFzvs# }lfs߉6\pO9Cc@U%æ -$ L?ۗ&}qk/aMf::<5ݥ34k0xޕ..$`c$#ԢҒ)ErmXJ;A9DBj(9 sV,$ D)w*_=lD^[{{2 . 9d8%OjJB$qC+#]&PFT܈ȑ4+f?̵E)g =`9)eg!}՘Ң4ҹƎXn -BOB FK2N$Ge4:Z z63EHf?KS-(Ȣ_ee@"Ԟ9RhL~Z\OfpR?q5~u~ĸvl*SriS!O*M[fWB]j#`,|Xf4OLe5@}9NԎ]sM ~|͕{3$R*sS=y.VMG[Uc>JLJp7W씷.:St965+.zN4/87>4e_pfӎf۝EpBs+7fcamK$rdIK}!z=Y̿bq5*sͷΤ*M$ œ Z_qv˲?X7U'EJ]>Ce\Qt:y %t7VDUb$d(7MɗV7$A'{b@H]tDaXQXzDV^kyA['ҡ8pul:fR<"пc禂j[TȞ[6q;u-*zpz~pv"((-=T%fh+V3)-qLy6[;#&''h9ԒţJɃNgl=Ā*O&Z! ؘp@ԗ$'اge$STImEV{6uKTh0R&wqέ{O '.ʑ&E H[D]̌~"h5I^S8oS"IK^3䋍'dju%at-ti+Slv)lxQ.j|i ,%xuq4m)2F#Su4{VX'“xۘ9X ty^%E:ɢu1t9Ch,Hf ɬncf;[ |e 2yn)'' )ֻۧT%lTϪU fLAU)B*#IW Z Q $z,;UbG[5ÂU&?z\MAZ&C̒,,Jd"95skQ+ F3##S H}D>.wĔHҙ <9H24 n_(&_mX^@d@N~6 'cQAL31}ZX !-rBYœ#RwˁKǁd&n91Un7?{"͠.lCՉ͡OI]a1ŔyC<݂ ť~+ώ;Wٞv.# unW&`28&G*\a :*P}K%tQ@ g@H]y: 0|YO`(zk>jS2\7MC3ъ2Y I gI52aZ`?8bo qV sFޫ=zئdt?[ΠE7}I*^>R4x^Ȱ] ТY=p|ê XCG5M6M4s^[7?N-?m@U{q!ѰQ>0X$]aωAN&#PwP4msR) {5{s#+<?bNo %h=]! ie>RE3A4Lؗg>O y_c, :3O8:~q\» >wA}rB>ZO4 SP,s-KCkN[2^]@Ƥ/5W)!Vg K UN+>sxv )!*ۂ;MK! 5y댺8bU[?EIJҭTόt\0͍c ݂ :UOʼnUO5/0VAԝ'mJ伿A0IAT;'Ő&DF5AR=I;njL!B;6"D_/QlрZBjFu?/-[ n~+lwWZy<ShאЉ-ؾI?/y"m)Uf2h'aiPDItENHN8`^ɍthyuGTpy 9^?79ǞOX΁udSťiAPfvcFck%߁!;s3Hг%WU?&5Pf&R^j#;$#wGRJt5g :853'ϩnQOQ76 ՓZ`r{n>F|X6GmJV ;SEK&2Am> J'E[UC=5EtEuqoۜ@)YzDl[3 \K!JrӔW>Vi#+j4ePiqaR0q*?7܅-p?azB۞NzV3z~hS54*hmU?/EFS^{2f,^֎]th։ocqlpqX\fICҔ^`ǠT'C93 Ow@ 3dM-OarZ @RX_ݥeH ]EΰQ]Ig|#(\P▾XrACB츶d xrT;)> 0~JzKc0v, vL֮E]k]>s }:*Ej9-Kd;G^wiU%mx/7vY 6('g;QB'uAa}uLܕq/r[~}J^ "KMg{(;Ti{DTL%>8 G}PY:U BWmMBH stebF⡺)R6BkJS*u*Xo |Iо5ÿ˩ZZX%’R{Nixp:nLSӶÌ5~,V1, ?WDןRM,.a'/#"Y8=Fť^ڴ8ӽ]QEK}(<ͬ!*J ,]ȗޚ`u=\KEDO.rjouHYF^q*JMMR?o4BҶŇd4DU HTa#\%DFB-wEL40FnV O5ptu[#s¼Py<`jbXW5HDݩ}0i:q8! ' ^3ZhJ\m DIA{@Bb擛EHt |dL.f<tNS4iKzK0FstBԵ qkΉ! A~5sPH_l=ǡ=%6 Wk(&Kyw786EOZkcS`JՂ#N?Yc%kZ!{`>g`I9o9dbi ׳Ztw+im&[chs]ُ7p6q6tip/`sK7s ιHX3y2=Bb9 e؄%(¡A©2Rﭩ+}V[zLѢTj Sn7?сx܂̨R_mϠO*ACg[25T굢^AM -Rb,9h>Iz+Nqp:*DU @{) WW]))`s`\{rkO}f5{Z`*t`9jqLQ8g*lWS^d[6$+:H&7_ ]}m,AsPrvT7[Oj5n=KInNo>YcY&oS=/s7K#G9= "K1-"4#5̬q_o9_|(jci̮@eTUT8P1"iwv!nJSDKO` ~5هJy.N_zNrMe'po|@@Sh>m6tOĐRyK[)ܳ&cG3N4ՑV\H.XHJ S+j4yj&fi|FtSM!ּYt嘴cu8j^-̎Lx`c8dUi1Xg]OA]9և꧵ObM곳O0 ?UM ֑ϡDVkEHʼn#D܂b?8{Θ8`r?ϭuismK;@Nd/Zy1Iĥpof[!1RE|'𽍂Lrd\! n>l'qVyCvs^HRK[҈kAc`>qLfV, -7cgzNNq"iO`=jz;&7JhYy)&wP_BN,q8aאHm^iE\s C>SUL%m'֮ l.N m i kꉥYDΛQu^7blg!/am+1Q}gWN%:i? ͌].Ti"< 9r[V\[6.*wnP`"bc \rٺyU*17F%>xx]栐β^.$;skZ(mT,ÚU`ջ':ɛ:nsJЁDܛ֥{b #sn u=j A5,`ƶCo`\mk\<K^RJiSp ?.vQدWsu!K)…cmLG,%a|/kdZ u>V贈M&C<׹e'zNql̛@7{,mHXZ+| O~x9Q1^ 90ܓs+TkJEv'WfAHV Kn_BzEeP%R |E2FU)%}C=œ5NGἤ=f78 TP gq*k1Cq@ߓ\dVAh$kZҺ!}I.x^\h@˙gpD0>Oh&ϳͅq̿5R~O&TOȵәKR +Riլnlz1& am_t<oЅqìhtXN(N#>} {]qϻ>`%`ltw#4EmPÜ#~ Xܣ Q%rPxۻgJ3&q)-ƥ 9?Np73Tw PRKABm(QVKuk+hVGBe?m_K7NOҥ"abj-h.x|;-r>T=p m1dAS,C?ϋPg(p #dq.R\+^YhnN1@F-^L 5Zd;e9%KSwXh s*qȿB1Ndr-Vln !#GG05 e5xTd "uh!KУ1>;׺D}P\ՌM!KTV @#+/ xMq2+t0 \.u5pj fe{"C.~41rtu.=!-aLsD߭|6O'::Xxͻ>W67'W 1'@.j' 鉓K}zo`fjW^$ݲIaja8XM +@ !@ PTyv6C!yőkA dz.e=F5܆F͐G7~+UЬJh=>I!^^%J:fQ:Un)id.W'YS}CzRF_<%^W0E쾞W{K>P\4?hiRU?j>a૯@/>,3\j@RS_׀d_.3X]`~̽}/tZ 3sJhU<$U`nsQ;IAUQy\Ya+zYEmsFF7zϔyg%z8~win+΂A'N̈qUyώ# l헵 TsD!07s QC^ح*59 $(1eٟr5+6W>~"]p\;oob}gvS>E!^㿼c,iQ5v\̤aZiޜjî%=/]Z,u˔],暴+dZ^!3E!R"S}=OTUgRsF,ZbVlA*nNPyX 8^;6SkCcG1‰q@dE5oyNظEK]B"}cM5q_ѷ: mY1qhs ԴԧsVOi_<# )QHD/?zscf-y>}8 ܇iLzq![īwF\u2407qU}5Vn*M?N61O~d2+o}` ^CDGSN=٨4$[9jȣѺiƄ+@=A89>8P'FGh?w]xSD$A >+HMr8YX?x}giGdYW- y35L /I'BS4UE#ꄐ)jRO+jSs0cC-nxd)g,˹GHUCqy/ݍ`fvL!mІx YOP 6e5GPvH@t!Rͦ6@&2\8ɪob%9UK&w_vEE8*q:JJJ'{}FUP Sju?y_hqeYKS̝´T!&Ю{ k- YX3~wRdNj ǵ>!>&~ qGMϳLWICm 1׈֦ɀ.| ̡f=]7Z=C'E{3vDwb~FÀ Q#,yv`C mZ5T,uxf>5Qٹb4.y_X7?iGAj;r^2C) pȆ;{/UU! έb{ |BF/M7FH-^{͵ _=ZSt%فecp P5~!YtM?S*b&'= ttVN+R~;0z#dItOwV^qUgML*}dCFb؝BMyIOOO)}l.wds>Zo&enrjDoN<&d.D`}GE68TQ \wePI|,xdk I5.l Dy&ǽ,E"&VWo~FJtҟهp-'/fMıOLNN#'|j3IABq(1֥nx[vqnN_RdNtPx},!|m<b\,ahW&_M][y@VRP/qmlf+4_uӉ,(]`77Jnr,> §y3XlB+=^ >6++}vqv&Ɓ$"Kbݗ=<>GU&_<|I]:B5cDZ(%IrQK3"Sk`̎^'?ʿ:@X.3k}fNl 5%U+jW.K6M'm7<.mVIj.bQnGv}W62TuF(Hucy{ǀWjjg';S=D94 lL]rH?i`B ڀh,.`ޫsǕoRhk?n&UsjiZ dD6fo@!5;IcDzyb.6XC0#Plg=aDž"6@,{ ` xV(%9n>/:xm'07v撺 m4S8{D1Pzt)#Y8`Μbz쨨!7ޭzoEӆ0i&pa}m/ 3"ɉ::NdyXxiXȇr0+>)4"姰8@~(hQOx.Fuc.Nu@X`a7{[jTwmɛŅkX肤Gb_TQ5BqZ Uخ ڵA7_[~9m9M3nhGwa $غ)XPA1SϑsJ+dKת/.r *kb4 C?tuUBi:As0#`MpTwR'VY@"/3¶U: ?ׄ4E>R>0V01ΧN2CculFdyϦ^5٣9C*-Od@|po{ .LJ}tx$Tt<" B4t5wVrEm6 Mԇٌ>%` `w$ͤ^@H? <]$o8 P6tjVl6B Lך^WMMX6Ǘe;3"rq[Iv-*[DIp|g>IM5|JJjfU`oŻ,>{[oI$,=mcψ qmo @ۤը ~r R;uR#VnqVR-jF`r$5\4ߟJ}v/I ZzKJ%s#yʙεieY1$xcz k;>}3*|eafD=19 -&S9I?@,* X!)?)yT3qN{r"9^(ZklIs;zԘ% ~+@{YklXu+6O=]CL=<0 u#wCYRph[/v~"L~3NLkX`dMk1G]3acmU[}Z$܄^4+i:߯FXQA3Wi'ylwͦ.JEYT=.Kܰj=ɇRA}Cg=NY?L/96oŁ,_K&]-l,)Q_B Y rOºh1\1;b1-rGTߖB$%Ԗ7И)X.aJE)+z&O.,Zt9ݔҪ'0N0 LU kUАG.KC^۴QN-Ʈu DlYhd фncr{rVh,m,|ؑJv+2'H'9 b/ّhfĔ3O!xX\\;bU88D$goN2h#ոyCI3Ub3/y(u 'ct$CVf?Mj N /ml(H>B6奤d"VCa*^tY*F=[_3DT7mdpdEhm疾s 3k`ztҋ8!֭pqk67`Q?- ˩9P}csh.?i|f/g  _f4 [T`KR 5mH~Mŭ\8U2~='-ϴpD\#d!TSS A#kʎ!K70+/DB:W|,-Rod^D0;ĩ7n=ty> x`t Bu_1hՒT^3sXei2=]ΈSUT{w^(n⎝9DbqƪFV6wK'͐E]Mg84%1L1V،?sZ, .A,=|pbp&v/8[ص 6^^|^`7 #:9-i5y/>SHOjMOvAKݓ'6\_0Sd.8m4RFMٴtm41VN5 buMhl@*|k|0JtBX':jIVJ@z^ņsвV;U9<bRK}QRH*pްz[GC|CI}&PiN.T]u9Q4sk+כ^b:bGAf{YwZɅH/-ho[sEJv^@\ެQ!HM캜PF1waM4p6c%CὦPW04uKBce裮',4dQKlg|+ҝ#nWԕrP4lPߝۜ>zh(У머jYQnOLXw_첝_> >wy;/ Q P_pRمXOC5 BYO6K؏~dhP]x{,lwschLT3izՕumjPսYܣcdI>'؂+`b9#yg%[ bWG(寁썹5뤻t0$W)UgL)}j,R~ձ&  ۢ‪/P_r2 ɁVPgNW5mQ}(ۨ5DzK $7CBrx܊c8X#XxߛjS%"P\ a,|x~patWx܅Y>@bHt*Q } zt2HSy O\p4.'IyYj򨇩 KȼePP$yȈ^xb4 uSg+'y(o;hX8g/ ќf`Wchݖ&mÄ6y3K(L tћꭢaPw.׮OG4NŎNZIhՓs@fTef4,[kE!pن=Q9A6ĈܽmRZNF, 4gUJP " igP}ET<\{xYg/vR<_uQ/~#CfGa۔>>ҙx09k./MD]?x_Oz9)]ڲм$X1ۀiCb ~:b$[&s'>tƨF"$:j hJsw  9ԫV̠K[Z1c?y-qyj35Xs %(-[vdR*q.Uh+~+eR\DFOȹ3 },߉(BZ3~]~Bp.++?͵!LY3Gwz(~]w$3UN @\Kl4ivLk)w BZqq'ċϜxQr--X 1|~lZ8ɣ%Kq=Pgιhr,N}bɎfquP`G/yn庴sS=OyBjeD)'|lb2;娖K3>Vr$D^ 5uQդW ItĐynE޶#5V}=7vr2wz3e֔߳1rܡr\8zJܵzlCİ! [CZvB15,Ag䚦}^!5v ]5#O/QAݺӫ p.MInTz+ױ 9o+0{vsrS{Z>?ez%E_9v]ĪHStEFzb{j/JZI0,g"CKwIENDB`PKC+@q©rr gadget.xml Single Pass packetizer 1.0.0.0 © 2012 Single Pass will allow you to use a single password to automatically generate passwords for all of your accounts, safely and securely. Full PKɪ+@a % %icon.pngPNG  IHDR@@iqtEXtSoftwareAdobe ImageReadyqe<$IDATxl{eu^91  A3m$`[+Z$@W`{ Y," &w-]ޛ֭:usNvu9v,kc͋_C wC18R 0\PWg&I>*A+@Qt-$l/6l%^O'Hs|qUicYyE|ToI8hJ|o:iĮ Nu5ȋPJg" r[~Io%阣%3Un[6eo<7-3SN{?iKe"=b E74'uc9wVJz–HV6=E++5FIǥS.%kMt5>yC[jPwEջ+>J[F@1U͸S BM[sO&]̨+-&\6o<К(a闄F"ϪZq3pTg W}Q'U(.5!3^&<#&"D"MEpah)FTBY{lHhN6?yHs fbE_w+U ؛j_fI:\A<%YR1!#v(&(sQ?EsU&:\dcʴh JG:0Гq !gV}3UV8+n7ThTT d-Ƭt;Yj,@џlWLF"S3 ͑ wQ`HMهf`hyOMhZF-žS<_N) hڋe⢆b&b5z]Kaz=ES3qe r*RK\9yN&W Ȱh6vV,j,6`_T} Ӽl^qcl$H{ujD _`6E D(>BB+#[&Z 2=SAc|;jӬ֜FhժF0 e 9m3EbyNLIVd{W ` |=x\FK_nI+OrV0R֚P qK;(K\L51 +*-qոkvelEV/ qX{"8)P JK9xgO7rٰ k-ZJX=B>/+G{J[Y8 ɘ"t"MQPFe|lW^,v/k^4C+UprJ3A3nh kC˽RSUjhXRUptJ K48jʿ#F(1άH;ReiqؗSf)mmD2qBZjTx%YEX.˳zo 6 Ťt/1:tj_?yրk8`(rf 2i>W\`hhfo@o|=E2'hziV:HCazƺmV̓S)c\> tu==U]%Ãh߭3ۛ0>Tvǧ>v2dvƩ/|_lpOCɖz {fps'־ _1ZG=MW4A.Fk4SxAh0fO+ ߍmFO!^Sy]V|P><[p1ґK{9鬇BKu|Ѹac$7b%3Ay|eD*=V"JmGh@|ʱ%()(su0"%"0^=A$B<᚝k֦v<36~2wvI_gpbV/GE$p+aX `RbD . OYQal_!LA{%;84;͘BAI)aZ`Bz\k<6TnP=G!$f/Eyr$:!ožgcP/>|dɻ84TjDoC+ZgϧMw!}~n;_Aʐ&Gms 7w5wwXNcww]]Sn/;m*p %jiܽKs0s2Nd&8tyѹqX??.MF#'jϻh|E<~= dOsߥx [Μ[Y+Ju7Ss/n݃{fv}{[V)ڃ"6nƏq̓w`уXy3d4,Y7g82V•K.ŁK98p@fyl^qz1OZ RpϺ_~.ƮO"$z_qӒqdzV|˰nv땣`\/Cq}}zT:%݀3_|WE[^}\bb9217~'n⛸Wn9z#zO=黶r;܎|!O`b'$nsՆO6 6i* ¾W"+坹2.=. {UW j~;&ukO$:11% O"rFL$f- VCQR B? UTk9x FׂpFf 9D`q`?is4ۇ}{b(bRn *%nn F1}f\ʆ-09 {]κNu|& |qUA"OPX4b##2^D<׌1q)YiKy (T|8U& &HPbL&,*ǘ`ث\/XLY^C#Łzx$+QƬx~BJ !WO-o06\S1hؒqr}Nv$_8bZ*jAVN|ݼ-y{7a1;ypZ<`'oT_Ckd@=xwp')>㎤?ZUX @R8`h>|,?ȼXN&ѩpH+v0ޘ&5ߍu~6prKx3pdB(No?/udw^d|}*-[rXianCH$#Sp駊9.մLWַ>~[6uavf5Fr V4G#߳??܁%o>rƎqTUI5RIԯQ"kNnބpɘ)I6T6hZ걸kFCax=bs(=:Dc#ԘjtT lB{?ʣ QL]Hho;bήQsn/5F}*ew_G.zs9!<F)GUeh|9校A >'! U-UrPʆK.5w *1νQŲTxyg EHV I,RpE\Tii07"Cs)Ƞ8 M0^vbpۋ't9zl}^iIJBʋ`ZXɺq΁L.-:ss>oLUJ7 )(u#I,JtMeFRU+b< I6ɠZPhE~;iEDeJ-D&1 Cr d$VB U{ Ix{/R Hf;p19.5?\,+R1S$`P/Z:&~DGa;-dUaҔ]Tّ%SuN^K^wI%I`Hl.W-b^5Uc/fx)i^h{/\vVF^I$Z{JUUN,jUZ:ʲ(=+PVM3)::(ѢdbMv3.@Cb7?ٵsJ慪 Z G;$Ĉ*ik|M-@uBIoF}80RR5I@xZ,vM5 %O/Y(_Q PGMc2t'$ER:dUAE~'!d%=j>otA!ZRL$eVWL ќ}S̲hi#uyZ'myX;K#!PJiKASYiϤT6J]C-(~evm]* OP=NDJVħ<#b %} =uRKg'pX&XT\L춅HW1%.QT.!J +,1@Քԓbu1=A_rhJ6(T"JnJJ6E T\ARԨSdTy-Y6 Rۇ`{I.RUDBp@xXQ@4F4ALA@z"_vƤ+U[{B/4TvԕlܘГ)iEM|ETʪ2MKvH9׋Ss=ο ւ)qqEE2چT6TDj1=U_6B*FӐPPkI eXzy"U2+Ya܌bZdl4!fvDwVѰ HlxF<<+%@3Z- Dz S,}0aUizT^IXBLO+yVR!ra&8~w5VE€Uf"D7Z-8P5P jkY.0*^s#ܗ_K$ݛO/e˰2ǯ~NoH-Ì#eTAe*3MV a)DLpF`Q$6;SM80tmOU36J6OpN[Y{͛y9ٯνsVazK3V&`[ 'De*uH:aEhImvR9!⡥!Vj0U a 3 (a#D _L]!bd2Nָ(@ ۤ+!؁{tQs>\9b왳.- >FGHT&hK>[1tm W73Waű ]tW:>k:度F|?=KƦxk9::Q+jK |8LE|^ 1DZ}!ߏ7Nqձ /<@S-m4vځm?<3`L/qCcufeI)AY; M6G*<4XPKriDD1s6V=f_CfBp[GKWK56 qasׂ^xo?\')6pvM1FY!Ql܀+ Ml d)ilw١)W\"0[>яp.Ucx÷C/!?o<,BlX)`ݬhFw~4spp l6(Z-ܥڊ'1e6  X*x[6vy"*FOT}PQ4[$gx?o!/ܷbM?i/ş- LM76:mzVku+ac2EϲU*-$K(,3yL d'wjB6L[: lˬoclM>5,T$m>d\(ISQ?ļAaUpjy{=;tuZ F\eڎXD/aa}!? wL?iJ Gx%mm%+XG,P,GRD2d m!nVD+[l81'BnPST VՂyb1J)>IM)tD:Pҩ=BwmolMiKhkF+$:R 1T4Q%[,²&{((L܉$(Óٚ Jv3l98B(f( N^= 'bj\9ӘBoTlNp`eJeFJ-w/*M=MtI![ 5 #0\vz;$Pֹ6*hX&.0@"07edҧ+&&K eρkڊ'%icH~SNfdH%5ejμR EVR4gF0&#$VŬ(6\ImLvBX4ɄMOu8C?.QF9*A+@Qt-$l/6l%^O'Hs|qUicYyE|ToI8hJ|o:iĮ Nu5ȋPJg" r[~Io%阣%3Un[6eo<7-3SN{?iKe"=b E74'uc9wVJz–HV6=E++5FIǥS.%kMt5>yC[jPwEջ+>J[F@1U͸S BM[sO&]̨+-&\6o<К(a闄F"ϪZq3pTg W}Q'U(.5!3^&<#&"D"MEpah)FTBY{lHhN6?yHs fbE_w+U ؛j_fI:\A<%YR1!#v(&(sQ?EsU&:\dcʴh JG:0Гq !gV}3UV8+n7ThTT d-Ƭt;Yj,@џlWLF"S3 ͑ wQ`HMهf`hyOMhZF-žS<_N) hڋe⢆b&b5z]Kaz=ES3qe r*RK\9yN&W Ȱh6vV,j,6`_T} Ӽl^qcl$H{ujD _`6E D(>BB+#[&Z 2=SAc|;jӬ֜FhժF0 e 9m3EbyNLIVd{W ` |=x\FK_nI+OrV0R֚P qK;(K\L51 +*-qոkvelEV/ qX{"8)P JK9xgO7rٰ k-ZJX=B>/+G{J[Y8 ɘ"t"MQPFe|lW^,v/k^4C+UprJ3A3nh kC˽RSUjhXRUptJ K48jʿ#F(1άH;ReiqؗSf)mmD2qBZjTx%YEX.˳zo 6 Ťt/1:tj_?yրk8`(rf 2i>W\`hhfo@o|=E2'hziV:HCazƺmV̓S)c\> tu==U]%Ãh߭3ۛ0>Tvǧ>v2dvƩ/|_lpOCɖz {fps'־ _1ZG=MW4A.Fk4SxAh0fO+ ߍmFO!^Sy]V|P><[p1ґK{9鬇BKu|Ѹac$7b%3Ay|eD*=V"JmGh@|ʱ%()(su0"%"0^=A$B<᚝k֦v<36~2wvI_gpbV/GE$p+aX `RbD . OYQal_!LA{%;84;͘BAI)aZ`Bz\k<6TnP=G!$f/Eyr$:!ožgcP/>|dɻ84TjDoC+ZgϧMw!}~n;_Aʐ&Gms 7w5wwXNcww]]Sn/;m*p %jiܽKs0s2Nd&8tyѹqX??.MF#'jϻh|E<~= dOsߥx [Μ[Y+Ju7Ss/n݃{fv}{[V)ڃ"6nƏq̓w`уXy3d4,Y7g82V•K.ŁK98p@fyl^qz1OZ RpϺ_~.ƮO"$z_qӒqdzV|˰nv땣`\/Cq}}zT:%݀3_|WE[^}\bb9217~'n⛸Wn9z#zO=黶r;܎|!O`b'$nsՆO6 6i* ¾W"+坹2.=. {UW j~;&ukO$:11% O"rFL$f- VCQR B? UTk9x FׂpFf 9D`q`?is4ۇ}{b(bRn *%nn F1}f\ʆ-09 {]κNu|& |qUA"OPX4b##2^D<׌1q)YiKy (T|8U& &HPbL&,*ǘ`ث\/XLY^C#Łzx$+QƬx~BJ !WO-o06\S1hؒqr}Nv$_8bZ*jAVN|ݼ-y{7a1;ypZ<`'oT_Ckd@=xwp')>㎤?ZUX @R8`h>|,?ȼXN&ѩpH+v0ޘ&5ߍu~6prKx3pdB(No?/udw^d|}*-[rXianCH$#Sp駊9.մLWַ>~[6uavf5Fr V4G#߳??܁%o>rƎqTUI5RIԯQ"kNnބpɘ)I6T6hZ걸kFCax=bs(=:Dc#ԘjtT lB{?ʣ QL]Hho;bήQsn/5F}*ew_G.zs9!<F)GUeh|9校A >'! U-UrPʆK.5w *1νQŲTxyg EHV I,RpE\Tii07"Cs)Ƞ8 M0^vbpۋ't9zl}^iIJBʋ`ZXɺq΁L.-:ss>oLUJ7 )(u#I,JtMeFRU+b< I6ɠZPhE~;iEDeJ-D&1 Cr d$VB U{ Ix{/R Hf;p19.5?\,+R1S$`P/Z:&~DGa;-dUaҔ]Tّ%SuN^K^wI%I`Hl.W-b^5Uc/fx)i^h{/\vVF^I$Z{JUUN,jUZ:ʲ(=+PVM3)::(ѢdbMv3.@Cb7?ٵsJ慪 Z G;$Ĉ*ik|M-@uBIoF}80RR5I@xZ,vM5 %O/Y(_Q PGMc2t'$ER:dUAE~'!d%=j>otA!ZRL$eVWL ќ}S̲hi#uyZ'myX;K#!PJiKASYiϤT6J]C-(~evm]* OP=NDJVħ<#b %} =uRKg'pX&XT\L춅HW1%.QT.!J +,1@Քԓbu1=A_rhJ6(T"JnJJ6E T\ARԨSdTy-Y6 Rۇ`{I.RUDBp@xXQ@4F4ALA@z"_vƤ+U[{B/4TvԕlܘГ)iEM|ETʪ2MKvH9׋Ss=ο ւ)qqEE2چT6TDj1=U_6B*FӐPPkI eXzy"U2+Ya܌bZdl4!fvDwVѰ HlxF<<+%@3Z- Dz S,}0aUizT^IXBLO+yVR!ra&8~w5VE€Uf"D7Z-8P5P jkY.0*^s#ܗ_K$ݛO/e˰2ǯ~NoH-Ì#eTAe*3MV a)DLpF`Q$6;SM80tmOU36J6OpN[Y{͛y9ٯνsVazK3V&`[ 'De*uH:aEhImvR9!⡥!Vj0U a 3 (a#D _L]!bd2Nָ(@ ۤ+!؁{tQs>\9b왳.- >FGHT&hK>[1tm W73Waű ]tW:>k:度F|?=KƦxk9::Q+jK |8LE|^ 1DZ}!ߏ7Nqձ /<@S-m4vځm?<3`L/qCcufeI)AY; M6G*<4XPKriDD1s6V=f_CfBp[GKWK56 qasׂ^xo?\')6pvM1FY!Ql܀+ Ml d)ilw١)W\"0[>яp.Ucx÷C/!?o<,BlX)`ݬhFw~4spp l6(Z-ܥڊ'1e6  X*x[6vy"*FOT}PQ4[$gx?o!/ܷbM?i/ş- LM76:mzVku+ac2EϲU*-$K(,3yL d'wjB6L[: lˬoclM>5,T$m>d\(ISQ?ļAaUpjy{=;tuZ F\eڎXD/aa}!? wL?iJ Gx%mm%+XG,P,GRD2d m!nVD+[l81'BnPST VՂyb1J)>IM)tD:Pҩ=BwmolMiKhkF+$:R 1T4Q%[,²&{((L܉$(Óٚ Jv3l98B(f( N^= 'bj\9ӘBoTlNp`eJeFJ-w/*M=MtI![ 5 #0\vz;$Pֹ6*hX&.0@"07edҧ+&&K eρkڊ'%icH~SNfdH%5ejμR EVR4gF0&#$VŬ(6\ImLvBX4ɄMOu8C?.QF9 * * NOTE: This version is not tested thoroughly! * * Copyright (c) 2003, Christoph Bichlmeier * All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. Neither the name of the copyright holder nor the names of contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * * ====================================================================== * * THIS SOFTWARE IS PROVIDED BY THE AUTHORS ''AS IS'' AND ANY EXPRESS * OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, * EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. */ /* SHA256 logical functions */ function rotateRight(n,x) { return ((x >>> n) | (x << (32 - n))); } function choice(x,y,z) { return ((x & y) ^ (~x & z)); } function majority(x,y,z) { return ((x & y) ^ (x & z) ^ (y & z)); } function sha256_Sigma0(x) { return (rotateRight(2, x) ^ rotateRight(13, x) ^ rotateRight(22, x)); } function sha256_Sigma1(x) { return (rotateRight(6, x) ^ rotateRight(11, x) ^ rotateRight(25, x)); } function sha256_sigma0(x) { return (rotateRight(7, x) ^ rotateRight(18, x) ^ (x >>> 3)); } function sha256_sigma1(x) { return (rotateRight(17, x) ^ rotateRight(19, x) ^ (x >>> 10)); } function sha256_expand(W, j) { return (W[j&0x0f] += sha256_sigma1(W[(j+14)&0x0f]) + W[(j+9)&0x0f] + sha256_sigma0(W[(j+1)&0x0f])); } /* Hash constant words K: */ var K256 = new Array( 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5, 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174, 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da, 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967, 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85, 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070, 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3, 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2 ); /* global arrays */ var ihash, count, buffer; var sha256_hex_digits = "0123456789abcdef"; /* Add 32-bit integers with 16-bit operations (bug in some JS-interpreters: overflow) */ function safe_add(x, y) { var lsw = (x & 0xffff) + (y & 0xffff); var msw = (x >> 16) + (y >> 16) + (lsw >> 16); return (msw << 16) | (lsw & 0xffff); } /* Initialise the SHA256 computation */ function sha256_init() { ihash = new Array(8); count = new Array(2); buffer = new Array(64); count[0] = count[1] = 0; ihash[0] = 0x6a09e667; ihash[1] = 0xbb67ae85; ihash[2] = 0x3c6ef372; ihash[3] = 0xa54ff53a; ihash[4] = 0x510e527f; ihash[5] = 0x9b05688c; ihash[6] = 0x1f83d9ab; ihash[7] = 0x5be0cd19; } /* Transform a 512-bit message block */ function sha256_transform() { var a, b, c, d, e, f, g, h, T1, T2; var W = new Array(16); /* Initialize registers with the previous intermediate value */ a = ihash[0]; b = ihash[1]; c = ihash[2]; d = ihash[3]; e = ihash[4]; f = ihash[5]; g = ihash[6]; h = ihash[7]; /* make 32-bit words */ for(var i=0; i<16; i++) W[i] = ((buffer[(i<<2)+3]) | (buffer[(i<<2)+2] << 8) | (buffer[(i<<2)+1] << 16) | (buffer[i<<2] << 24)); for(var j=0; j<64; j++) { T1 = h + sha256_Sigma1(e) + choice(e, f, g) + K256[j]; if(j < 16) T1 += W[j]; else T1 += sha256_expand(W, j); T2 = sha256_Sigma0(a) + majority(a, b, c); h = g; g = f; f = e; e = safe_add(d, T1); d = c; c = b; b = a; a = safe_add(T1, T2); } /* Compute the current intermediate hash value */ ihash[0] += a; ihash[1] += b; ihash[2] += c; ihash[3] += d; ihash[4] += e; ihash[5] += f; ihash[6] += g; ihash[7] += h; } /* Read the next chunk of data and update the SHA256 computation */ function sha256_update(data, inputLen) { var i, index, curpos = 0; /* Compute number of bytes mod 64 */ index = ((count[0] >> 3) & 0x3f); var remainder = (inputLen & 0x3f); /* Update number of bits */ if ((count[0] += (inputLen << 3)) < (inputLen << 3)) count[1]++; count[1] += (inputLen >> 29); /* Transform as many times as possible */ for(i=0; i+63> 3) & 0x3f); buffer[index++] = 0x80; if(index <= 56) { for(var i=index; i<56; i++) buffer[i] = 0; } else { for(var i=index; i<64; i++) buffer[i] = 0; sha256_transform(); for(var i=0; i<56; i++) buffer[i] = 0; } buffer[56] = (count[1] >>> 24) & 0xff; buffer[57] = (count[1] >>> 16) & 0xff; buffer[58] = (count[1] >>> 8) & 0xff; buffer[59] = count[1] & 0xff; buffer[60] = (count[0] >>> 24) & 0xff; buffer[61] = (count[0] >>> 16) & 0xff; buffer[62] = (count[0] >>> 8) & 0xff; buffer[63] = count[0] & 0xff; sha256_transform(); } /* Split the internal hash values into an array of bytes */ function sha256_encode_bytes() { var j=0; var output = new Array(32); for(var i=0; i<8; i++) { output[j++] = ((ihash[i] >>> 24) & 0xff); output[j++] = ((ihash[i] >>> 16) & 0xff); output[j++] = ((ihash[i] >>> 8) & 0xff); output[j++] = (ihash[i] & 0xff); } return output; } /* Get the internal hash as a hex string */ function sha256_encode_hex() { var output = new String(); for(var i=0; i<8; i++) { for(var j=28; j>=0; j-=4) output += sha256_hex_digits.charAt((ihash[i] >>> j) & 0x0f); } return output; } /* Main function: returns a hex string representing the SHA256 value of the given data */ function sha256_digest(data) { sha256_init(); sha256_update(data, data.length); sha256_final(); return sha256_encode_hex(); } /* test if the JS-interpreter is working properly */ function sha256_self_test() { return sha256_digest("message digest") == "f7846f55cf23e14eebeab5b4e1550cad5b509e3348fbc4efa3a1413d393cb650"; } PK+@@sSinglePass.html Single Pass - You Only Need a Single Password

Single Pass Password

Service Name

Service Password

PK+@`˛ singlepass.js/* * Single Pass 1.1 * * Copyright (C) 2012 - Paul E. Jones * All Rights Reserved */ /* * SetServicePassword */ function SetServicePassword() { var single_password; var service_name; var service_password; var digest; var pwchars = [ '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' ]; // Get form field data single_password = document.forms['singlepassform'].elements['singlepassword'].value; service_name = document.forms['singlepassform'].elements['servicename'].value; // Require a password, otherwise just return if ((single_password.length) == 0 || (service_name.length == 0)) { // Empty the service password field document.forms['singlepassform'].elements['servicepassword'].value = ''; return; } // Create string over which to compute a hash service_password = single_password + ":" + service_name; // Convert the string to UTF-8 service_password = unescape(encodeURIComponent(service_password)); // Compute the SHA-256 hash, returning an array of 32 bytes sha256_init(); sha256_update(service_password, service_password.length); sha256_final(); digest = sha256_encode_bytes(); // Produce 16-character password using the hash bytes service_password = ""; for(var i=0; i < 16 ; i++) { service_password = service_password + pwchars[digest[i] % 62]; } // Put the hash into the password field document.forms['singlepassform'].elements['servicepassword'].value = service_password; } PKa+@]33singlepass.pngPNG  IHDRd{tEXtSoftwareAdobe ImageReadyqe<IDATxY Te~8 \Q $4\kx̲nʮZmu+YfB!"M`o>dRs{N^y\B2#22Ӊ'P{;Q}n:~(*h Xo%**"jl$~,I=^oN[+3("B7_i>VU;FtQg|^:8ޭȑ6Χ|]E]]2Cqpƈn7yd{p W@2O!p $pAv/H@> &C%aD"FRe&߳DuMD)D1W MpiAp`SCvnar QFbX.v*8<&jibDVd,`;H97b !^ O&8ޞ2a*q_;!.nhlr QX|}k0sާhP0xN4lWK*} !  ]␲L&{u D{#V.m\^g"*cۣ;1:F5tp@##e#G$;<$i φLҁJ)@h>zJ^?i `򤜇#9z]]m4r=f ܳ`[WN ϟ8(9Y`a?sc 0t*H 5^bLME{y1.nbK`\< -XM@EC Rj(߀@QCK4 2'- ԓ4>\K>ϗZ 8lB0g÷3kځ01"3 r,>FjÆRMZ[YA ,C4y2:`Z+HsY-JZ%S+5 Vx7ƃ,z,آE=\x~~y$AZ%Ĕ)-1f?l9{^hXzs@* >88# |QS, H9>sjZQ)z^tZڼ5Gx7+Au^wm!t~ 7&WfN8_wtE#l[2urw߿$hgb Sݘn^ڲ!Z 63 ƭ$G.!1pq}M2M5+5292:z+m,նZxnk[1i,*-kzp~< TAt+XBt Su5d/ŜL #%@Q F}-n8 u59;MfJDG_d_x2YUԝNc. ,!4Ufvۆv84yL6+z@׎^hiOQjs9ܚ6{&ucYG+ɩրj36״(|,M$ 7ťLNI%%d:&~m[+zSBn6o8¡Co| !}TRዓ٢ʿnh^ZYr !t z͛]\AOynª3Q5xGݮ]PU612^/h -cPtLȈ.&iNJ7hAY_R~LHB"T;&ޣXsԫk #ui9cвb!˳ׄWV l-;Hjh 6Y$޿?g9s/55@,}/ ل"*+SrRr fE^J;]y:׶n\RC~822) OU;5h7 UыR'8bIb6v;^]z5G-Y֭> &ø:0mШ>E,†=ӗNk{'J[1vo**rJ}-70bKt 44̀o6qV}r=OQ{rm+X΂gu?>uJH:3rc.KAO8@l.͠iUGn.oB~}uT.,ޗ]52B5FP/?u|ˋvTqsqA&`r4q"ѧdSl)Vu٧C M}$}%u} h T֯͌@w<uG-_6nM tK#Gj:!/Ԛ5UvV4Õ}f{z]Ȁ,{v*Z'l!1Qa?R4[f]}c!r_MޟT{:1`Q%"T-|K' (?:A8N7=w 5h(3ޡM;i*Eg ` w_ :T P0*ά%IW6l G.cSAjLzUU2PVku|'u ;/I^3&r^Ku&{4ASbIڨ;5??O?^*{Dy󧓟UiyBU!Ѩ$:0:15*F*TlQsL?ӌo IENDB`PK+@ styles.cssbody { background-image: url('bluemist.png'); margin: 0; padding: 3 0 0 0; width: 120px; height: 142px; color: #000000; font-family: arial, sans-serif; } p { font-size: 7pt; } input { font-size: 7pt; } PK+@h|ZZ  bluemist.pngPKC+@q©rr  Zgadget.xmlPKɪ+@a % % `^icon.pngPKɪ+@a % % logo.pngPK+@B{{  sha256.jsPK+@@s bSinglePass.htmlPK+@`˛  Usinglepass.jsPKa+@]33 singlepass.pngPK+@  zstyles.cssPK