From fc4025c878a7986576f693ed3ad297212f6a99de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Sat, 3 Sep 2022 15:43:35 +0200 Subject: [PATCH] fix(npm): add more context to errors when file doesn't exist (#15749) --- cli/module_loader.rs | 19 ++++++++++++++---- cli/tests/integration/npm_tests.rs | 8 ++++++++ .../testdata/npm/nonexistent_file/main.js | 1 + .../testdata/npm/nonexistent_file/main.out | 4 ++++ .../registry/crypto-js/crypto-js-4.1.1.tgz | Bin 0 -> 71882 bytes .../npm/registry/crypto-js/registry.json | 1 + 6 files changed, 29 insertions(+), 4 deletions(-) create mode 100644 cli/tests/testdata/npm/nonexistent_file/main.js create mode 100644 cli/tests/testdata/npm/nonexistent_file/main.out create mode 100644 cli/tests/testdata/npm/registry/crypto-js/crypto-js-4.1.1.tgz create mode 100644 cli/tests/testdata/npm/registry/crypto-js/registry.json diff --git a/cli/module_loader.rs b/cli/module_loader.rs index 5d567f8c5c..4d3cfe27fe 100644 --- a/cli/module_loader.rs +++ b/cli/module_loader.rs @@ -11,6 +11,7 @@ use crate::text_encoding::source_map_from_code; use deno_ast::MediaType; use deno_core::anyhow::anyhow; +use deno_core::anyhow::Context; use deno_core::error::AnyError; use deno_core::futures::future::FutureExt; use deno_core::futures::Future; @@ -130,10 +131,19 @@ impl CliModuleLoader { fn load_sync( &self, specifier: &ModuleSpecifier, + maybe_referrer: Option, ) -> Result { let code_source = if self.ps.npm_resolver.in_npm_package(specifier) { let file_path = specifier.to_file_path().unwrap(); - let code = std::fs::read_to_string(file_path)?; + let code = std::fs::read_to_string(&file_path).with_context(|| { + let mut msg = "Unable to load ".to_string(); + msg.push_str(&*file_path.to_string_lossy()); + if let Some(referrer) = maybe_referrer { + msg.push_str(" imported from "); + msg.push_str(referrer.as_str()); + } + msg + })?; let is_cjs = self.ps.cjs_resolutions.lock().contains(specifier); let code = if is_cjs { @@ -149,7 +159,6 @@ impl CliModuleLoader { // only inject node globals for esm node::esm_code_with_node_globals(specifier, code)? }; - ModuleCodeSource { code, found_url: specifier.clone(), @@ -192,13 +201,15 @@ impl ModuleLoader for CliModuleLoader { fn load( &self, specifier: &ModuleSpecifier, - _maybe_referrer: Option, + maybe_referrer: Option, _is_dynamic: bool, ) -> Pin> { // NOTE: this block is async only because of `deno_core` interface // requirements; module was already loaded when constructing module graph // during call to `prepare_load` so we can load it synchronously. - Box::pin(deno_core::futures::future::ready(self.load_sync(specifier))) + Box::pin(deno_core::futures::future::ready( + self.load_sync(specifier, maybe_referrer), + )) } fn prepare_load( diff --git a/cli/tests/integration/npm_tests.rs b/cli/tests/integration/npm_tests.rs index 922bfe70f1..b8867868f4 100644 --- a/cli/tests/integration/npm_tests.rs +++ b/cli/tests/integration/npm_tests.rs @@ -131,6 +131,14 @@ itest!(tarball_with_global_header { http_server: true, }); +itest!(nonexistent_file { + args: "run --unstable -A --quiet npm/nonexistent_file/main.js", + output: "npm/nonexistent_file/main.out", + envs: env_vars(), + http_server: true, + exit_code: 1, +}); + #[test] fn parallel_downloading() { let (out, _err) = util::run_and_collect_output_with_args( diff --git a/cli/tests/testdata/npm/nonexistent_file/main.js b/cli/tests/testdata/npm/nonexistent_file/main.js new file mode 100644 index 0000000000..4e46570882 --- /dev/null +++ b/cli/tests/testdata/npm/nonexistent_file/main.js @@ -0,0 +1 @@ +import hmacSHA512 from "npm:crypto-js/hmac-sha512"; diff --git a/cli/tests/testdata/npm/nonexistent_file/main.out b/cli/tests/testdata/npm/nonexistent_file/main.out new file mode 100644 index 0000000000..5f43f7242d --- /dev/null +++ b/cli/tests/testdata/npm/nonexistent_file/main.out @@ -0,0 +1,4 @@ +error: Unable to load [WILDCARD]hmac-sha512 imported from [WILDCARD]/testdata/npm/nonexistent_file/main.js + +Caused by: +[WILDCARD] diff --git a/cli/tests/testdata/npm/registry/crypto-js/crypto-js-4.1.1.tgz b/cli/tests/testdata/npm/registry/crypto-js/crypto-js-4.1.1.tgz new file mode 100644 index 0000000000000000000000000000000000000000..d60fbc5db2ba9e4b62d7df014d37bcbedbbfe204 GIT binary patch literal 71882 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

ldKPt4i9L?pRcu->H`B^${Ri%q?ahCHm(&z z{gFAcjMc;p&run(Gz7_*?IM$L13oju>A?* zw`ei+`?|~zRp}=Hcvi@Ia+7q`e*Li?gsm9!=^UFej3|7Xrhorz&M%(cnLwq-pD*p+ z4E8U7T7$suA~u&K9Tp0in#|-yo0D#F&p&WlsxUFWC3{t#++qc}n=Sp5^yri3&JQ zlk+bU1873^cZvE+ZEcLAndsMpc+DxbW^&1}^;BbTWr z6NGVsbTsZuTv|c>dDqFOYYfSRP^T;T?D%cW6_-%k^C<(O(*-1K`=-KGzio`K>cGr& z3#8NNa}`xN5=MK1b~I1vIhJP5s2&Hh1YpVrBA8tS&6T{0`-e2<*hul!-DcTLPXGo- zGeqi!VORqBlalI(?F>%gkpALu#~sA#gcJ+RH!8h8 zpc0vga1Y)c6Rxju#wbc27KUfy9VAXv`F;swfyB3r(`bTUY>{IVlr3lGgEx%{AP?UH zl^5g;OtY5JlY? zRyY@51Q-^Eo!Q{UlV91@v}5sfE_RYq*})(*Kpv3Jrd7Cw&v;MnIkY}KD9QEys%K&) zrs~s!X@Fm6j>4(IMz9o{K0BDAV>BauzE`F2jTAP@>ep8DQ)g|G?l;y#&1}-SE757P z&>6rTasR%IWZSut2CMiTkEG9-C(A%*bko{(SG4T=jz?8jvnc~t(x@1_)1=H|jU!d; z$2BvkerMa~s^3%(78bi~ZZ!2R=HQTjDNFb;cEUsRdkESkFO1G%v8n#aAvGmA(rGg% z=bN>oxjKXNJQ@np!@yo1(}SObB0HC5XgNPeg+q&7r0mxtJQVkXtZx~v!*KT0Y%Bxc z0?ssb?zx;?Z;5h`QpxcZh?YO;6zf_4bh!* z`yp9k7QaNU!=yz*nyr_va0Hh3#p~?98)ja`%u%x?&$w&}@U1O(J~z3%d?n)BA|M|Q zXm6|@J;=#1=$+*5B}i2>&+>hvhB?WoY5t2nwV*i~qb2R-r+!^BHq!qWYEkjUei3K5 zvzXkYCj5ueR-t?NW~%K#kNr#F>oKP@!t|Y z3bbR&ukiQyV8@V-Md2PQmxeH4-ML?J-GLo3!8>!=hORH>E zf&G_tt&ZE2j8evnrpIB*488;7+TKZhpN=j>$}-^Ph^|*mi}EYO!aof-{x#&S%>e=1 z{p~>peAo2oR1&wN$yV>{f1-ZfTjtEOrLH?704A&g5~mqAkQg0VUY*(n$un`y|MsR5 zn#%!m4OyB0J9wh8o>G3|RE|wzor&9#k^)#++S{LP+V1%ZxkZTozKl3bJ}qPTzFmJC znIbUwdVKgn@$iw_2;ji{e&0NE=IwaDJ-7A$`W~7Y3s@d3-?41n$gPo3XeD@8r;#bn zN?dCKo?g7rj_~4Cp!THpWOE1)!@wSI{Fm3`xOZWu zZh%%jaqDgW*8`nMU0Jc2dXeUqeoPdFhgLjs=v))&i~$f3UH;gYssRuo3I~$#-6y-v zrgH9^@05<9MHtOiWzpKRulJ03*9XXImo?*$$_624a5+tI*=5O{H&wSjbY1#jl5BL^ zU?!x&wY4V}UmG{t6Iflf5?76>lOIKoYeb1VSE|cT)!n~Y>bCK{cV^P3=K}t3)y;Lp zC_t3Y;0E>;pabSnGW8Zrr#F}M{Wtpk!0d~U?&{XYDj<5~Ycl;M53JWuljXyE%B;6z zvdp(8pkF$_XK^^#o-Btg4iI?Oe+cAB$R-mLuSQSWg+s>F$G43|Y#qsw6AvP=MQX|B z+1rO0(H-fV?c_n;JKZ0NatVXGyCJ8UobTHUj^;`@7IMedjZ5JpmpH4t3mE3&s9$cK zM4|N`*B!He26DR;-GAdR3^l`dJCXmhO5gR@Ui(^{rE*o6H!}CxM{4WZmPsRP#lDq$ zoAdlhg}XtoN@7O5%PigJkS)N4Lo>67b0J;R34IxYkxUu-K(jjvPUqVYy^pO_T!avS zzF(2u6I>`Up3}`Ho!_l4kOOk`%A`*+1isnRs%A?V#r`efIvrR?YlS?HZbw-Oh&8X4s$vQ;& zujCx^uJr_XhR5mx4t~L9cO1w`VE2pu3i`yM2NYf~;=6S;S$f9)JENASsOLR`Tq04Y z2~7G}Ia}D2tw(6mCqfDjPtCMey;7h7msH6lR3$WDTLfLxGcgq|x*T%QX)R7vjv}sB zj=}xpU6f}jr8+}S_t(axXS`w+?TIz1L8%V@iP*aCW|`)~K;)&aLG>rAGhn9VeRc86 zhHj;=^~S)b;@i#jhg;^!LFUE5rs6xSpRp*QaEeh34>rg|6hb83B+5HdGYUVPehRgb z@-D_yDcu74V{P8gHM6unUT$0B0J|-DH{kZ1^xuYV?(=&&V(P|RQU6V3G`-RD-%-94 zg;H0Ps;*pRH2>j$BdwGdO>v9)*U22}ty} zUf0xiBSp?~oDzBchb9*xUTC!E|E-#ra@Vp{CR1_+O>j4)Bhw@fY3a<(fv~_vpxkOmY zyMLLz&jgZZ2L2~6TM8w2QPIET4i~TQk%vU@YyTqG#k*~fku$h<`&FO+S7u|3mn00X zzJ6C{PPYG*=>gY&GJSoQB=0!;SJUkW+Bo^&p5Zqp(HPu2{Na`HbpP?dJm+uqEIhnC zOv4{j-_A`)$u`ZCXIL_gOvg#$NV2DEo!Upn_%eEYQ9^XVa&oGnnGDq|ol5_0nh81e z_{!|2RT^i8JeHm9qK40?VNc)DcexcYOEQFM)mHiC`Uh z4avdwr`9Fs`4qYn-m&Oj-lAIx7kg$EOY#wq-Ky-5`%;A&52@Dgz9`%WF+ZVI!jA2a z;t5l2ChoW4`<@SO3A6Zxm70KKia7BePl*-*_@`6 zrTZN%j2zdQlL5N>8E$3c%vttH*XNAuD}Wu3&$Rn70C#ApxP*`t*l*6;)TD^?@>GkPbDJ7+JJWBA-`t|j&E z$M>2c7%gTg^qJtR#Di>c=F|7i3h<2iso%tyB9~0lq0%KVsN~0*Zy5e^?252k{e2w^ zdHm>nqefZ3Gp%(yST+l+t=nEz@T<1o`*79&#L@7*KG%H=P`5#9N2+nWg3*>4AU3R! zB(nfv5QjtpiTBlIaGuydb=;;MguUozzkOhA0V_BKUhtG$P2bpa^ry6+Z&TWZ!D7!{ zD-K+R71idXb93LB)=lW{>Fe&m*{uF{yqfX-5VrLk35WHBFd9%>sKO2ozUV7CXda>+ zvDpGxyag3s#%pjoraR5yLUzw$K@4?ftm7eQP2(kBFJGfw7v zpsag|sV`iPDt}DnU~N{sU27thQqF342J0F?>8z{;N9@)z01154V5;UTegO-1Q(ePR z8Uk99{YIXWzi&iMjueqAxmZL6t?%28Um@0-L|40cM8~L_LHI?1nqUDzuDA84V zRj`je@Z(?ByD!D?DEZjfOeu)0h?*#&q$zv@|c2 zOTY!_DD*DOxD|9b+yo-V=3n_K&haYX~uiSH6dq(F4V1>GFZKG zp$|^X>SdBBo(I(gS_~g%Yod&7?{c(jk-Mz=}5k4(A7jnjxd^zIL zUUVDaPWos}sArbeydwF}wO_de))+HfhcQNWHzj#lv3Y+NbB#b%Em z%D)Yb=*z1*-N~69?bJBl0L-#p7#P2dzNP|07 z`3F?osot^-P&h>zqQ_4V5nmdFm)lEKQgFl%o=)GzBuM8C?Z;WIk5*c^HaJqlWz@Vbo9c(m$-LnEZ|O5NUILN;S+#~2K-{V41E+DtJg7u{!fFaR za*q=Y{GQ*hj@Ppbk{YxE51dh$g-c?+%5>HO^sQy0>}^!lmP~;U$6nU5-c_h&v+$zb zkwQl7chh2Hktv5o6n)hLt^koKBT=Kl!>Ej4aA@f|Yx{ zK60|0!XZBeF@2&`&@AUc&nHRBLDEd_Fr#LREngllC`}wYyKzqfM+{f3MVGg-1vi#H z@j{9JswJb#v_KoEb>njBeM|o@3BFHk;dbmh-mYuKhHSeN>V#YWwEFzjGYs%bOGcIc z;$@nCVt>`IULB>bov3{X^~jGs49gk@NUrPfF7phe zVW~}N9-~!iuq;>WD=rMSxQixldh1#?gaY}lHT1r`So4nMbB~2zy-EcH?iqS8D0YQb z1-NeBbkrG5`n+dL&XlaO}h`Qb93 z?3sskvc1>gGLhxZ8keNsnFWP`v=Q|eh$y$j`C)8^>hskrB(4bLkZQ3ylr$~Ysx}<# zn?Crh6pO!bZheV&^=ZK;8Wmy;6!zsyc1+qxtcI_uYJ~$^&YQUGC58%1o4lPWw$Yq6 z1N|uXDJ54UoAawMfUAd^8k3s=Qou=7dH`NBU7RYi=-yWIHG25pvZD3ojMh(v(P$v{ zWWBahe_QjhUvQMNC@L#USB%snMC+?eE7qzgzkc;rnbX^^WWqBG@B3He6!LX6?Q3t6 zx9Qz9ZER67U}R?3VhXo}y4sXT!SRg%Z%3~yEuxaa;^HSzJ=qiQa-Baf$kQF#)(|eA z)4K-`W;5A0;ecI}HoR-nn(fQXaYBFcroN>1toWA0)IPa}8TfGM1qzf=ki5IpUVV`U8 zUc90(YVo}7uWFrx6+y||l1CwLA^U5Dg zGl+~-GQ6bLquO(60qm0NJJA<@dDud;eS-&A(dxXm9`C=xmW0PaSuqvPxU5$e2hjjggmvoSOw`)h^8qph!uL&)X#-4kcQ&d9CcFR9dRpEIut=Nw*&=H*a(1A?s2 zSG4Vn7#jLh z`O?s&Dz*x8g5b3($YYHK>>s_S3W?zykg%;t&+E&fr;;sg0HJDxaQ*Jl`%RMSk3L%% zX=-E^2VmXBbi-Bp1<3YpP>!VbjsN~VdKbjby9j0Mi(lw6Vu&eHa#y@JWCdvV7aQPn z`rId0tTE%<3YmYz*j;j>cWC4GSTMizf69~;{{;0#+2|M&z>ZjTZCuzbDULIfcj%>+ zl_~ZRx%OQ*%B2R2pBrvG3kNHaQq!sPQjN7HIyKDQa9*&%W_&RL%OR!M7Gf{Yo0Ekq zWEJM-B_=qSR_NF?^8^!VK8$h#&4 zUs`8|?D2BANZOHY$5Rk$;wV1N>hR-5z2uxDtHpON75w(RDbp`GcXN1pm+X8|bx?c? zZ}B!E+x98vEc0H_>EcGY;a}2G?K-O3#`(`IyYlU4b%*#tpYrR;SeCqkU{Tt+ z&3`c)nDAX|H*iMBChuUxR&D-15Zx+KI6)0sWYU=>>7i1WCS~Sb-KuUZ+iG=#7*>so zY%G)NWnSh^-Krog?doNrnDa=$b}uPno0IPICM!190H6F?CNSnzGt=2jMIO|Lsmr&} zm7ns5HRCY7GKIKDB%2R=;aLLg^3a9OU~-TzRCcK#%9Bw$n5>`lQ$R(o!RgKm8qjzT zhe>cM3`{rn>FhkNJQNeVxH!Bd?9_ zS843fXut8HG4pOMR+}cAEZwEET}u|F=OW&`Bk*}1b0PVDb^|i}M66|6tfi*4=s*y< z3cq5|j5yt+WVi&bC=7Ynl`)!8hZ$U1@QOB9;oj&klfhi(-B~PdOE@|<+dz6q{Y4tQ zg`)nZFFjv&+kYO+X4r39>Ozc)As2Fqda{CpgO@xc)rXpay>3o*uG`_8;#r|NkbL+SRKc?UNGlRSUxX zb_uv81bz#mxIq;8JBnr|o*yHj8qG?jY0flH^?rHH9lK0)0YJihm_@@3VPT=M!T157 zQQN!7%RNEphIHvPy@q(W88yESB-q?V?Ad8Q)>uqp7}U{s?`t2n(FZV$E|7V#EjE?} z>tBv?=NHbC5)(iVjfyJu(L@|iRDda5_)_VAA4Fi}(FH8vJmN=iQ0EG0M5uT8RU^<> zs#GIXRs83%Ksy#GFCObFQDB*8AO)c+oxs3OoysNpKv4fnk{?0hp7oInZ>(tU=sZE9 zU}A~*L~3%0cqht55lrw9PzI$AIeqIE)X9x540%{7kv@#PnARaaEj<&29Vc23hYaHj5hbeE(#K?zFuIToubr6N(JDNkMU4|9IoJ*_ zt`#yTbXEkD%sF_m4*~yDY*`xzPhlVORN2SVoIDC~0b49W5Vwbf4$o2Bw`f=Un|-yn zS$WNHz?MmGGk5RTzwx@h?hQj$o7yP5C$kW_hQ9BA-zllEtQCWWZs}8BCepgOF%6+_ z=<@*JvTZiz_i=D=IpW${z|XTtotx4bn1XF`%Ln*vJGz~~i?CfE)0 z03pr|O&o4kI=VGe@4 zCzRZ6Ld$wyTJY-@RrLc3JR^&g=XG0OFX1yM~ za01yGyabzEI<9a!ZmulqH&f``za?f55&i2lYHA#7km5k%9<;4Xy#2W2+sbIiIm*S( zo=bpBP(;_kns@|GJVEPFsx5M;6ndzVvH_8M+ZcdfVN8JXO_TABo?$=mH`p|O5wcx` z;ZZzEsd3-&+n5D+9t@-!X72Yrt$uIs7I9u+W^%X4OhOI#Cl~%F_%RNLiO^l6*$$~u z^ZSdP^>RQ_=)!%}Ts`%jPSjnsx)c4@*gx5;Z^9WzVY5JIsy!@oOD; zjS9GJLtFdc0z(m#PB)6&d`mSeZBVghn(%^P617~yGhfr<+G zMhuTQR#)%?LHooiStLzd~W1h(D|2~P~<_uc|BnP>@8s2N^iyXm4yBS=Qt zZH4jLOmEhn{+Rz;&Y;x|CXZ&ds9}Ztr8XbKBJ2IUXpQHT!rtn_DGI{_-Lpd6>#^1? zvQ<;4=ynzK)T2cInPw%Q);G3H(E4z&T)3HhBqz|-e`5aj|5@mPwJZqt?psB7RFA?o zLDn}>V}q?tFzgk(mrWL!mc}I9PDh|9=^tHd-n637-=5Bq8Ka`y^50iXCaF7^_U6mDKLRA^=1=-mTvXn){xp{mwVW=BJinP)^Zza$$$t=eCkX zsp*9FQYsMOf_z)@$v9!>-&=FWN0N!- zNhh7pNbo5~EFuUn9T`ny$6P~WA)XI`Bl+y?5PY%hr#H;Hd!A;Su!(x7JNYPlfnD*$ zK-&>*oW$)2uW*>E`prlypW<{@$tSx^UGpWPIpc=oCsNI@V&l58yMD`2*M!EpArn!c z`%3G*Pxt9WOZO6pQ*woezx@#=I=H=dV8KIEvY(J0;KcAieomIfoDQkLz)I zuKh*Wq@>bjlt~HdNXyk=-9psC5lzR9JP3>)2U2jV)Oj9&(l&rg2B zE%1=KJXnrKREE3pDK(6oNEb}KC`N&1AwXM3bs|97xWR^zj;VavMGG&1>P0QcqD@RN z?Svs)KQ}*e#RK||iPOUabLO?IIN&OZorbRC_hS@7Trx?-%Jn`~HLu+{d(%oxnYs!- z)cj|`Sy}#~T29dS*8@m&cu2Ufn5G7f+*09RM)4d^cO2o1tHO{zmtRalj1R(ml;LLz z;<-y<8`z7SVL*yS6RzK?&f5pQ;x^&DZzzAa$%5)v8n|KpXkK5AY>oN&x;_1F$BLn3 z@)xp43+#g;A_i*ca!M3|$he5z-y@&hjsR^mL;AG`#4lS7T%%Ty7mSf86>r}%t5GWm zJg;z!<>>{D$AUjxpe1gOgIjK%8+YLA8<*9Evg-w*xsSs&m}-)MeO(?c29{`*FNr`=2F6pE@$G&{vwUJBa*in5rl+(C4ot&#&}MbcYZ;V zi_VLe!M(A_UoMsdi(^3|e^w0iKz!Qt_xx)L9Oyy#+$e`2{xdK!_KPaQ1J5w-q1Fn| z%nH!{im+$o6^hIOu3IT#XD9XgI}}+N7dxxnwu0DcEs==_BF7H8g4_ujT-K5_1a-U} zCN(2a*prIy0tBNUamqi_5vSf>Wq&(`i3D^;vHx6B*R*G#UBH8M*tp%04vnBZK&L)? zwzth}A>>_s=BbPPVv$u-wIzM8(vZqqQOBtIMzz$+wU!>))@*P|h$LhdWDQPHVwpKo z40K^KvchN){uit%d?<<3S_ZJJQo+AY6&FjQGSY-536o|^b0{?ODk%O2@*y3!kesT^ z?4gBQI0NJ|w4QPX4%Qr)ObD%w`bu^JqhT;_x@J@1AwK+qm|vZ8J5ymPITNv!<< zUM}*kbP3r1?8Hp$n+tz&Y?uuBL^H5WB2F>@MWpB?i9f4I;QQJ%1qu6VLS&<}|RTKWS}V4TouzJ{fhAN`ik$uHtHff=j!r`;8F$VMVsH6 zV_h_B>s`N*kYMpTr)SHJ;v=ghi<8QBYe<-`))R1BKiJdVyU-$Th3@~poVkVNv)9dZ zjy~dO9*g}uYi;1@fSW#$rhEay6W8FD(&KftaMsik0ys5bXNye;7|6KSz)%{zcpJpj zKN$I(Q3&aKFG9!~=TB1)kZ_vZTO$X#OI3WiFy{But^vqTR;7iiB}~|^0pd6LEux)E zhiXh|9x z7?5@85vNRG!iSJf(+HT|(8Wn_r7Shmj+$-o82dqQ1+IgLUb**(G!GcbEMoHEm zQ88wUr7+Sljncmf@&^%&L;il!G94MV{2M+JsICUi&2q5jsk!ax9w;@y4Qcy(Z_;fs zhPj+eSe!+;|0Ish8D*9^CM4DJt!75s{Y$+zz2`PKT|_$?|J@;NZ^bZzL)P#~$V_UiB0A4uJZj!xbMQ8bx9mNOJGv#_?$?3xq`0z`%-a>u zZ|ChBMSRcBC_(8c(86L>-kT8jROFTX(;7 z94GiYD4s0eM&UeI!|ywq>_;o4=6}Q<$f3ycbRo;&Rwh$gLt|ozN-vHL?BuEI`=lf( zNk_E;siVAIN1`_Fq0t>67$0sf7~I)|tEA!D85@{Cy{%DLeX%0GrvV-lN!q=L5wnlH ztce!{0&yN!H(7BVw*xGHae#!+Bq2R|>Hx)BsH7Q(dut-7f!m2`v1zQeDGy>05k<9>N%j9@$UBFz? z-LTj^W2?Wz^WYB`XOT+lHp&mJI}NgM%+n3iOXh)O+~--=AqEBLK_c(0q%l`n_REMi z<l3Buk0ViXFKGi(grN(~08?VZ0q-xb~Gy<_!lTtXX&`w-fsM z3st|8ZTtTe*SE%xlCd(oRZb2Kt*_g-jaS4uH(U6+fkTJ_YnmyLuvkjdbcVAHdDG%K zOR;;1DXOmPK`UB?sEGp5MR}j!%*7v{-vDZAh-MAZV{%jJjBS{|0YiniMy^J!bf8fHoo#C>X*u;CP(W zj8h*)03>kx;#^m$+))SV`fR{$FpHO2C`iU z*UJ|FNIHlU7PvW4r5t*xPznl;%g83FbLXaq<d%$7rsC5e5(OUe+t7B^ z7{2{m8%7WMGhzCBCl9f37`NO=TDEIK zO1U{c$;77Y_9wNv!##loiKdlB#~a4vF4FSN3ae@=c|>2{csrxNk>7Nv^GdBh5j=c|SZOA%r?v>$4DGFxsq09+6CD z)RUZY9FHc4%5CQR|9O&|+MmO_#Q1FJ%>JcIx$2K@OS!xz6`*48sitaC9{Sfq(agz3 z*M&W`p5QXiViLmH>y9I2@v;~aVNK#~7EL=#%ult}zlaD(*mf`05yXR=HN;nz#tISh zoK_@dfK#TOjYZW}HQ0aO&B1iFRC*27fxPIx*-4e-h;iB@u?$0r&8OG(%BPGHx%2CO zz>o_hNnk~|3G*krKf*2TR9>1@v#KZ(l$Dn8f<2Q4h}L>y&aa0nF@0Bu%)IOZBb8gY zIaZ?nfIu{kE!JyRgjH8E*sQj;Q#J2a8GGQwO>vKM1x!gnW!?8|!lyBEn>*tH{62e0 zpYH(sW{NdKs3vC#-#HX%?v-bA3-WF5(I6~WKr42oC-GwX42tgssm64kN`!0l366an zUP@lFv%1Ucv2-=W5{UCNT-u&Vz`1Oq-rFpRZ&NBSb&Z~0^-zZ9PAxrU0Q)3XtMh9- z4T5$x44opl87@relod6lLLHv3`An}DZM}HyyH;QN9WKo}fm4-y&8`6pmYyj`;Oh(@ zgwkiq78yaXwM<%HXT})LFEo|am81MxuHgVrk z+2pdifdGH=-fqb#n{c)aJ1l5Rt|`q_qv88fyN@dEdxlP^WA}z`0L?_M;p+`t`xrgL zVUnVE2h9);K6DGCChNc=XVpk~;L2Bm4!&Q?8&kom_4u+gg$qOcF^!Y z`f^yz)u~uy_*i$h$tWuc4Fghf%f3Zf6I~C(q3E%z;hT%lnX zI0y(7QW0WYefdP!2BhO{f9f=;@d37fX-^y~@p(b7xb_wHE@ID!8>wfIr3aR*ct;v- z6wGQZ52@`@F8=?gBfFH-!2)J#pw&x8#znoT?I`|-LEh^36qG4rzL}`D@XlzdM8BB+ zZu|4_5j>ehJ*Nkr~bJ--J8ocDOm zHKULd)p}gAbibhAPUAnHa6PQhoYf63i2k++#*OiiIFG}5s>;{*+4UhJZ3y^g7MYhT zruaL3$3R|+WK+E)Z60KEBxAIeT&FhV*C!RN!=k(WP#iI4h)FSPa&ivi6;uj-Ag&JW z!IwK~aN;d_Y{|Va3m}`|y7WXEx)X!?p4PPHHK}oEOYA9Ipa|$?hBQ;J{>}}_3a;Qf z6oLXYV(Zm+U7`^9#0X(-$_Hvp0JgwP(fLYJ1yT;NtBdc$gJgAYRf;F~+SS7mo>(oVztKA`OJc4In zF6!V}GRS1`rTm^It0{(b2Ks!p0I2=prf&aV z>@aOj;`HL-l-&OE^OT@P%_@`9_Q&?&B@vZzSJTx_iLk2q72AY`J<$W>bQW{>B0N}l zcBb_b3ALPiF$YZOZ%BAJDjneer4GY1D=y%~QgGL#Blv|6p=g#BOJ#C9MvM`2Rb@k3(_mmY?Sp z5npppwzsue8K{cB(eg=JBOG@J(iiJaaH#v^lZd7~GdudxO*hxYpZ7Bg0B%uRt_k8o zZ-i7VJ4J)Rz|pYg&3mVuRQPsQy+4b5-fAo#-d1+)CNGh0Q0MJ&A%9!nSx-gSm8G|S z6S}{wRUbsFqnN$wgZXa`KVGCpK}0^!7R!?)p};s4kP%0_q<`5 z;&xj8va;UWK$ib^gU^@xqH245!NugvM_WmHg+2$oJ1-7nD`gp?2$9xF0va@0Lm23| z?<^cdD4TQkzm#DwGhK4!v3lYQfara5B{$Y<+r6%su}Iq%J&E^m8fw|;ZZ-@6&Asq9 zT8tfjeB_?D7E89yu{nt|xmnz`wc%4m2K$6LRO)kOAfsef2?JnF%R4<0U4C7yHgGdK zf9V@bbK4_DPOJ9p!-Az>5lY1gwYFbpXMF!Euul7}(Q%u?D$1+kY0-PT`lO1+2jJzC zx+dIGDAZJR0s)9Rv`i!+lIuhfl1J1B*;Ko%P17?iJS*-RE6U=b!U#{g(DK^Li&9hP zvs72!D)n?Sm^uUcuPl7LoFN;?&Je+ANydy{l1Z<70WU}+x$$3Ec>k!!uzvsE!hI{d z=*KTR?xb>uxPWP|vOwUW@aY}4V>lOUpmFsjzC3OqQpPGxPSD|#C-(H>(wvd!O!kS& zqBB(qZtxHU;xQ1WvdXr$`5M-Vv!5g$>ex;+BJy?OLqz`{JWB8>@gSw6*BYqL>U>>? z9qoTHwQkBKawhjw(W?m|d*uK46mws>zctHat{%r8Zf3=o0y9c7dhE`YKcv2o?~}Sx z@P_0n+bk>68UGRoN6-B8EG zusSM;sPp-NAkh3@T9}$_=%UkhcQAgdxV5~pPnsC@{dnogR*^Y}j%&-3LHHDew7hEeT&QE@`tQ>S^z0sirWzZ+(xJ*WZ$s_n8meXu( z)Kb)Oxv)iBxV(3H%3C}?Uqtg~6CQlAxUP-idPzZNVx+`C2#%QUHb1z`Di;5;V>o;L zA$1RLWrh7z2W^>BY-Db1R{=ULekc13!}NZmaF@ELyzVo<6aH=TB=wNW6=jZ#%OGm( zg&4BX2Ok5-1sVfx-dNUyb za#Z%&nT6Y~1AZDS(PLrym6A^?_lg$Qsr3Vr|9L?p|mPqPQ<(S=vQXqLhr1&9Ym-myK#?RluRo zuUw9q$8m6X**f3La4>%x7`P<)AY~Tx)EYZg?e$&qi8q|IHvK7CnEw5APs3dl zedDy*^#%Ok@wqr?xAG=Cd$1LlF`Kj&9<_}{CTleF-lueMuReg*vyjrM+8r&~A+`EXj6dF4EcFyUpA`WbO^wIo4J7 zx+lM|`%*O35Fd#%e&yixV-@SASo zGGG*(pvbv!l)vr1c1Z~F@vnH-j-lL&+?egtvJtDF#VK^39M@!{OCF+_CjjHI71EUt zNd$JrI~V38shJ5!W9S?-wL2l-y(xDuHF7HPu!GPfYnwepV%Z{5?87T(D3U6!`^Tl+PrdWp)Enwg} zS*#8WuVphzecqQXh!=Jz23no-y`$PCf+tjiTV(c;G*l7#UW3vMewCszakv^F>avMX z63)b-O5s8*p6`KMWi_}bqduHLwuh4Qw8*F(xk#PG<8fxj56SwLh~Mnj_h;fEJ?Nfh zSFnRrD-T)z<^8`}4jUweKUF3%npt`|ZS5y;2C~=kfnRo&*!$FZ_BH?WRK_@apNJ`euS`4_`Y&iIx&jSa)P}a z=p@W*VX2QekuHbCyB+COWeDD`a>5@WFdV5X86w3vRN?r4-D1qv9>tn#lZ0j&;gN`Z zpCF01rIk%(`Ekk+oGf7PVE&@rgQ*OADEtP_VhZC6{+JCX1`!`Gn^9K+yb`t;F9N*qH5AB3 zUc{$^2c(J{Dd_2abn(jOs4Paa@^5*Z3IU7XS9ss{*li(eAWmK-I`vg@em}`1->1`f zw7U!QB+;QnZ5SpyM_D~hsTFoKkkUfpm8dKXJzrm}+H<~C<46%W0`;~KQjR113sX51 zW9YH{Y}nYZ%6K&6^sFg8w|!Wx}nuVYU}~vPz2QS$Tohq zQtgI~aotiQff8GuF20iV81`XXsJX`Krn~911f^-N3GouO{(-5IXU8x0l|pDV%#CeC zhBz;`uAK;1?hMQo&i^RHC-z04W8lAy{dFOIT|Z^pA0sE5cWr_KU5V+UAjvr69iI-P z%ez28;&*gtYQg`55QFGRdmXh^SD4y~={_|~|AcF(jW^r0($dy&xlf}) zKP;It+0HXEbAmQbbv3{-RQWxGgU<$!rNl=UPa@Mo*B|Tq9#{9I#Wk}-oR7penQtuK zROQ3?aoewN*S%E-(VZD@D`}t)M{k7nuM1{_-fC0uqV4bFXmNfAeKV6t4}r@!`C(_) zl$EKnc^+J2c$nomCItPF&OOFEMvK!qwybaFiIvY+1ne3}jZbrQe}3HM!u8FJn_afr zf6nk}%nio(u0w7-<|UE;Y4jWMdla)7S53jIdbHCXS$o{R81;3u|Gv-4*2^_r_fOt0 zhds9)I6Eg33G#r}fG-eSp2z1ZF7Hsh!!X(zpN>NS-;Em!)M+6C9XF@!Jt_)gj?XVX z7D7T9cCvapZPF=Y2))9aYukNuPisG# z9ErGi{@_&gd$1PRgx8ad(J8m|RHF-!5G5irxCJvN_J)C$$)0M8{B?50g8dan2iN$8;Y2 z5NMTwo*|?Z@PZ$yAL|!QSq0Sy$!cz#i#kv}Sw>44LuLXLNt}hY{ae*63P1;Q%qtEAxvv-nP2SsW zQV7*rbJ@exe~uJS=z&6?{Uy=why;Ty_$BBMlp!z5^Z5cBpE3$-#u)#%F5{s$a`_}} zM2xK)CU`SZwfS8wI}#`cywtrDUckSpO(Zfx6^|lb(hlS#42>3@Py=khQctJ@5e*+8 z3A!yqE~)E@C*{L-G!D1l3SZO4W&h*r*oyC$&r>qxI1U0W4*s^Qt`0BV*{z&X>7=b_ zh`4kA;EeV&5WBC-+{!njHs|reR4uqWr+)7@B&-o=V^U+DL#R8=z+kcTB?&1kIN$f_ zPo}epNY^vp*Yc#e*%sK*AmX}DH`)`H014wwb^J~!C67p_kf|Vqcx&~5APSKgBN4*D z4)F1^;A2Rg%C1VVy==4oJy`+ri@7V>^T=B9e$*Aa}HbZ(gmz_kA*R}q8!25wgXaDMnu zK6=!L?C7mE;gVPQ_@agK`{wLX>zQ%fkM!i{nKDvM6`+m?$HKZXPJL_L7f{3F(S89+ zSn+UlA-cl1M(DHjZyL8ZNnP1hmIY07+N9?hNh@!cwwnNBLR3($Hfq#?Xz#Cby_WSd z5Erz$;B~j}(QY=F*T25~*W^YM8cDw8Q2-_6K%WZm$)>YzWI*KiTSRW(C7Ht=pEcb; z#0zI=mjI!Hv%q3yRbBg=wo-lHdPdF8j|3@WWjz~BPu_AlAJX|jazUGQQ|+~O5S8I)byIg2lM_q$lBx_q;MRO#Tjm597x4UU&iozPiGOK)-i0nb0xS5FKwH(3?H*mmA(`_qHGGBNT!Wf*{1n0ki|!$JH@7i<*rzwTaFCIFTY z9h~gaaXEyY@r{`yyBph?e+7(p;!Zm1INQOt}=kRRP=w*GSA_+Hxtn%2v`5;ZthNCM?j>O2N#G z{V6iY`&jWR8VpMcu{VD|R=ohmeX-;oRUT6tUod8?n?hYc44N-V#lI%d4688M1Bsh( z;kwOp>WM@BV_h|3{ltGOn?0I>Qu7!vZTzo>wyoKe?!K@u+t@-0JJ%2?gXM+MeFrpw zdf{cMfZ=6avXacP>s5#h-y1%TjxAC(=}uYjF}%wBL8}T410JZGdbAWsCnJm7?g8>sfd2^V z_jB8aK?cDasKyAv;RuvqmFF+UxcQR=IC$^)175yHltIXZ}w8lui0zF7h&ud9}(VB#3%Ez!NY> z2WLutX5!$hd8W=+ITP=XuX`)=WQfDTQ}}P+C2q0yXJ==OA!FiWS0xyg^D^NzSE6L~ zkFcgHNvhy0O7dW#y-0!9jy%KxbWi8?8mnC!CsIW*AD4*XSr(+35P-3JAFwkITCh*K zYiQiJ6`6KB=t5kRK!1dlQw!ldH=dHjhH)c?7G++9lKbsgrErs|E#`OyrW|obtSbS$ zavN>DDzC6p)ZYn)&$vxjuUM7ch2{FsLi(j~vxDF#$WKAQ%w19tB^9LR zI%p|nkd)xTA(&f>sS2I^qPGraXyAb(vESnq5Iig%y12A*`rFCX$&hgfia&TIX^0n) zPO%c(SsR^)RD(o+;ES-iFDDGESFjD^Mk?sV7FS&vilC?B#dK`uBB?cL03u6zrPi`_ zvMjBy`ezwUOhcS2yP@wqVz!BRoAYB|)EKGwBnusyh_%X5B|H#a&SryD8f}&_D`%u} z*a^B3T2fwCY4D@hX8jyN#m^zp{W-DcpQ1u` z$TPd+U7*OiF?jhiQBRb)iM#Jw*203|U$NxFt&TfxRnEFFy;cf{L-<5eEo1g@Ni9iu zO2fE&_}HetoDb_2nve(GAIUD%qkT@+vZhA7#iXTIV0~Pjy*=G+7!yRjpmOEFoJTR5 ztLt3b#Lw_=0P`O^d>3fBs4aYThLQly>eWf~jW)%X1-815h4ExV|1yo`PT&{tQxPH@ zY=rck(!10a8ZOwu8A3C}D8wA6)Tg^#L6fZR^Sdl?Uin0Ukm-d_PB$~JuY9j=>&6z_ zjtk7G3AKVRV=cWNO9cA$?;#5dEdNg|Tp%o`L9#f{NPtYFOz_~6gQTu43Z_q_jC5oL zWE3eU83S{a4Bz0AOeCrB{=V|Q;cH_ReU*GeDK zfMFS&bWJNlKvT(;awb5{!_Mt~IbIF$bal3WX1j z#PJUfXDmlX5H+!C>{-&QH39ldiufctodwHlOS49D0Lu|(?gSoa+@c;<_#pGy#a=x+ ziWRp&0^!G^M!b3!5Sv@9%B$cDL{=F>Dlu3>j3~sA5IwCzcyN*z?470Gq4amh+bwb4 zqIo;A-syDe!&0qcOL|>5jr$zHhL6*10#V!SK#)BS%38J*v`?b!`wBx_njWiSPAg^} z{yk2sUlIg4U7bXzXHFh@?i$m)S-l8iQ&xQHkhH{J7Dl|M&r!5`U@jUylDeb~C6cNWS!VT7s ziX%2xOQAtIhQb6?<%J4a;hsMgP`-kvi)2zOBnv|kA0syi7aBI!I=#hRs0~Z?b09d` zvNrtoM};1UGkm=mi0=B~*7ocNQajKq@GHnW61LhovGL5%(c2M2mY@MEhG$L&s00b$ z4)?cvbH~d*)}I$Jt!QGilrRiSQ1M7xqZ(?Cl<@0l@Rvpii;JTH4IqaH@%imG1Ksf; z0%B*N&yiMBKP~2vchxV*zbq@U7f-6(G2u3QxM0BH@IWvq+=LMj`=zCxR7wH^G=yR> z=9wZ!gtS%o5`s2CNSH&Rx{*=D3xW*(v0GYn5-U{0z^7}f4uX#GgR}*9N@u2aVU9_E z6~SrzHt8q{EwWVYGy3Vk_F&<`r0p^(>P;=rC^pp?A_m7-8K@%}f@Q(_QCu16e(P5K zV<@e!Z=*3}Nz2-9oe=Qc-q012M(QLord?XdhyV^u&CS%P=VEh4N+x&aN_b3_6cb>R z@c&}Bmg72R7FIrF#W00^6p1+cckuyvQtWTQ1!O`h*bgNi(!*l1f_!fcXOD3XhHrLeZ`pcg-xA|qbk0~};yW0i2h%0lGII{bB58d` zJoByckuD{{C!1JpMuXW zkr1yU)tahRlx+sm#Um6w6hnp**r5VZ{ywr64s;aVcU(#YV}X>E9?WEsa)Gsg08ek0 za>21kqabKhqzWLVRs=0pt^}2ARY8x}tKcK{5Lip-u828qAXsihu?lGIiZ9??HBzzs4j%DC{?qNsz37W$y2nRC z+>4jvTK>}R`H=tS#pPQKcsdrI|1gEtfLxIl36A&VT@@8M1M(x1f`7e)u)|3Z3)m7j zREF%cus&mX=j5HV{4-EpvEm7JkE>|er!KQXx@;v3h81@R?mrTE+sNCB-|s?L;wWj< zV~|)Zaw)0R|5~g_#a*mfyQKyEB({Fk--NtKK*~%hkWru#k!Y(B@v|za#2yiu#6HS# zlV&{mT%z+)=$IFa`D6o#iVeD;Em&Yc4`unTL5*+mkEJ5Jpyudc#1)=-#*a2wj~>>c zg`pDAIe`M%!L`8t@VI(w6Hn8E3NJCkeLe^UpT)ZKZ4MpR#@WSqrrFJSM%iK=!StC| ziE36Y(i(MJbZ6@^f9tlITqW~d*9~j0{z|u%uF#$R>%=qN^yMCW&cyRagm$s(L7}|c z4*e~4?z2R$blC+I<0<))XxbGlEK!ATOU!!h(UD-iDBT|L=ZPUJNvI9NIH_1BT~dpzx>&KaGSgR8M9XA6uz6s=QIYJH^nnU? zo-)Z~o>mdF7*i#clwR4S*p4#WqZ&le6~_=i1hom)eH*LJNvU`Q>$=$-8O=|)4$&07 z{0B8YVPJk!9e-}z*J~6Pzt0^2OgI^T*3{$z$DouvJ$WMlMzoKZB!&K zB88;@nuoTeorkZ)n12}KADa+qv#ZQ~3$qOtC#|r^;iza}VT~8mCLC%k86WLa!pS{n z=al*rO(#Rf-cq9qgj1@zwN;%ld}wPaUIoUcx^l_!C;j;9*k~%sb%5+F^XOukWf878 zhTU=#;mK|uVTsWO602+ufmN>wuTrw=$|~2DyH^e8Niiv>wJtpr9Q*8Cj> z{QMK;nx2BAB)$qv@y$}Wb2B`$RA8XQe!Vj}z8r~#!mI=dX@Buqits#)CB!^}6#p93 zIPnKC8u8F`<=;k98VZ4N%vW4;fY3_z(m>7}4JC0R(bLOD5z>ON2gzD&x}kwxu=j!YzB1zj^BNzavB1giVB&a{sm4r$mXFPaP^kE+Stv z2HnmHQA_$kF%UAuhI0S2kKZa!3=!$6e}J%f)h_>-v9N2_oaVIMo59`@M}DOFt>?pO%CE(Ij`UID=qOD5oa~LlK!lLs$d z*~rCuHVCs8EPN4GD&on4!Gk_Zx5V&yes1NXOfD2hlR2D8Mv1r8~mj^n;shYG=< zJ#Ry^r7i99E)3FynA26_sLl1?O`u1QpQq2&ASJEO1Q9SEqvXMibxv4bz0_ z(!ju&rYj2_uqDA!{F)iXIVolf&lQnHM*e6ui~MKFDpk1KmvY)*8Gt@67l&HF7ABKo}gN$QJ)d^F^j! zmnFZ;!+{a^kk|EOm14Y(t`T_?F?G-iNhnMlQM5r26^cbSvnfeDXY6&w8*Hv?STU<{ z&HqQ*Jq*bYTLDxrGor97d;U|uyb@o3nj=8@#1yBd;6f$~ zjs6oNZ|6}yUjZesCA;rmu#+wIWE%*rveA%TX_L8IT?982;XL-XYPV#P6 zcwyHum^dD>n07uu-qgH1ez?pqd>@~Ww+F(@6AvRbIkJ2UkBuA-E%>);amRyw5n&x089tMi{<#-8Z(A;O?b@*_<$Sql+FKUWXVSD^9P0ivJ zgEY=Ny*s{vgTHJG_nWepM)L^?Wsk5Y6&(&{Z_4d`p^NhkV(ua1YnKp&~Ljd_Xp zY17ZSjL5q*Ousbrzmx=TB#@%nz6u%K-^%63sJkdF=PPKaY7w%3r zpjhnZS$|F35x%lk$3T#NXt~TfDPGpZoQ^Y3xtWi-l!*kEGOchn`@zmdy&f(IUY(vk z2(Db+>k_ahKa(rU*kK7HDbWy2VCWbPchJP#)?t|J7vV~lbXWXrZZ~MLaH<=HV*W1q z-IEq1$=6afaFSR^RaK3lK=AJNr5N&S5#d5OWbrm2JnojQd$)gi;v)z-=P!a-HdXlN z`ov{alL$TX)%xG3GyB;oDNWX9Z z!F90MM!kW%u2(wk z4;%ulrWM!NsWOe50^9S<-^7`s%~P`a1L!n7$>@8UZWuYh*PEqCcX*AQ0? z6w-zwag3&5jd`yLXGAZ=BeRPtb471zu5WQ8IxZ$4om{C^_>x-54u02);obzmMR2|mE+s1$g8JDRkUO6D1v20hKRJ_)5IsAS{CnVf&o z{vNqQXRGugzzgbJuI>LDMB}(wFrIOlg`Wb*va1XK1;R%IKgTb4CpVftT2as2AZ8ct zR+BIyh>yqr91?YC1znml4Tn)76pUrDhU9uSHvl+00#*Um zxsT$Toh`ktroi|W_dHis2J;-!@(VUqJ9>~&=0Q4V_pSaAc=l%G(hmjiIBfy$8TGDq zf&MYVSvu9Yp{FyMVU&gVqTVaYo;RrCS8l;9)BV?V8EW0*Sg>0y!)vwl{%(`mVl0JE zkTqJosbLr-8*&%Q$EYRibJWfZedM@MaUG2ETmLRvINR8Y zK!8GqGH3(ewCyxn)}KvRuR5)lu7635kJ*}&sOP|@$PD>+^c6;p`AR!`L zip6ru!o;*0mv8JT9v4kV_fb|0oKijGy4k+CWbW8`m>A(SQ! zCjExX!W}^eOj=QK8mlcdW%)R$zX%m-?tcX?DO(Zhc{#Q7IS7$A z4!gi%U{D&ea#{sO1PXorG0V#co3II)unC*|Rmm_U90y%VDi$Wo_YQvR1zF8V**x`jQleSNYV9>58QeyNzxbU2SAy z>-=S$%ZUCfBBkMID*ZNk3Ney}goKi5+Y${{b2=Nz0)Zgo_;yZqYL8?Amk%amfTGLj zYf*NAjpI%b`EKQ{OCMqwh)GufvUb=YvG%JQV1 z;4k0(^cGXrm?OQd$pD>BSXNUEYPV7AV5rCQ3**&LbJ`C#9@DU(;Q>beiALlP5l_@; zLOnB__Pjs|#6cX|Y0>j{9&&_lKEF9P;0}3ojg+C)Q7HXLmt6ppXW34|U zI+k+tazqGYg?|GP1KX@t8OCrk$Z%=zs)*HAJp&t+fi-kAZS%4$tZ@^XvEj2*vDkBJ z&R0cTnc*X+Zbt|b@ZuTz!qQ~eOvqSHXK%|?(!@0l7fyC=gHPG&A@b0apXmHEgNO{!Kqju1KoU!?1wuE72n9l>`_i?0 z=J)i?x0O-|Zk3&wRM)@N9a!IsO60xuElv9(fy^_3ra*d+PhNy@x)0auhodNmH`0^< z4R_BDU?u-Ji~>kfIl?7@94M-@fS!;-B6@QrE*m5btraDZV3Y$$QaDhO{09pd*nszu zLf`|sh#JbsLMlWJ0~J=$I5JVh2T1ex6w)(+EW-O!d$->W>cb1`EfiN7D7@{Z9VV4K z!&`u3&9_T{7Zq)4;26@6`UTGV{U^{yoTE*`xQh&ZGhOOPIG!P=hNo}i?v**l#^p_1 zN9@V$OY{EWBA7NAb`P6jT#(J1}W{PU|&=&zyq~;uNNlPt1RgSL~(8yJU z$uL3U5}n4*&^NB-Gv^=aHi72OxkI4i0Pzp(X8x+mz3w03tIKZrEa?7@#Sl!L0G&7r zIJ);wXw<>iphKidgN!svn*ep)cl79eX#aovR-1J2%a1v=|7Y-X&-%~#|FQl#0ZdPT zZYH(Yi-H7Pi%EmGDPw9g?8Xl_25=CoRzrT~)v+A$2hNBtf2F8BL)Uz2k!KxGIe#s% zWSd-vS@xM`imkf6H*3kFe2LGSFGE|fU7*E&OJupcyY)He&-`9WMU@)2xw{<~Ils9% z^r)<1l^r%7FH-3>Js4wcLhCJH>*yXmyUoV!=`E7=w7&vWxzsC~SOzh!|tXEikKZ7J6LSAil z!YkT$d|~q*M7}6TdWvuoj-59M3 z4b)*V`&5=?91TmD6?ZX5qL$6agJ$z@+Tzz^omFLQD55BTQn`Uko?3!UcS$Eb@qNJf zjqY?7Mjs-~E~W20!R|~GEbCQS4R@B5g{DU#IcHl9LK+44f=`u?o26Z#Px9gsq{+p)|b~JIgnfC^$xXyc;+ZRM9eGd z+p#v|Yk6S%z;GnCbnExDW#=wYeAKv|T^v`dC4n_bu~S}a2~mGrh%U06aT_M=I%H2H zklQ|c&WSEx6fnyr0Fll~Sst?Fq^mG&TkM+u?#YG^<+L%V$tAW%zi6$TD#T>=%Ly@E zYVgHI6l)O|(_tK-{)I&fmoqsMA@!~choaO)t;(HNm=+Ywwy1({fWa!^Js0NkCpaHH z=a|)p;tl}`PK5whrIr&CGQ}?MN8)Ke%Ak$Pb0;AEkOud~3cmjJPZd;r7(e=$-ZcX8 zP$O15jqC|PQfx<#Mc%DSxHuj4n)n=ZWf#c_xvh6>qHEuk`qNnZV$WW!>2g-IY zAbo^)6E0!uumk_}Fsot_@-y7hlkNm!Fg;4(u%ah$dl76`}4MA*A~j9IQbJ^D+Xg?wgFlHxB*e zST8NbTx`Gp`&CASa7cdzG>3^C=P5_;!H8I(k>iu_Z5^tAf?^X@y~L&d7ayUGNZ*!V zE#SnFNv9r`;uJviB$mDUotNG`IuCFnn3)GW*c|~1`g!AEp?YQMkpPZ3;z$N<1p4s; z^S|Q4JlNi`=Mv)@eeu7%Q=8ydlgp*Y5uyp-zsTfDq*DIz_n@3!5B*D3Gl}BOlBIiq zJT_0vdCR+3!+8f0(|R13hirKir1epdCP+3fWg<{1=*PSW%{0r_-b8xx*VSU+pdGAo zsd6~O;H$M1p5E%{u|0fmkJ-2&qpK_Fpw?>d$mN}v)1mbE$GYDVhjJtIWv(Zmxsv8; zY^SxF=PHih(s5t0)m!z~z9(~}DKw-$a?In6bagOVvVyuV^wP6-UO-Jh12ma$qjX`;GvQO9@Q zHtq~qgfS-5rGr>xg;8)T;no1f2;&klt6&1m(3f4b zU=R2Yew&bn5fTRbdRW+i&opb53r$*Krx_JP=#}~pC&Uk{bfAyg-ZHk&c^Agb|`|Efa+i0TQjj0cd1 zvl5a9%xv-h9Pr-#Dn?rfnqSnD05h09&+l%HpW4R&8#3EZ#QyJXVA|=XWIvtnGYR&> zedjz&pub1u@(WGT8hO*xP1kr-QA-jS6TS`e-%tpDR`UwIM{XTKPa0j&{iQs*w!&3( zJl_MS)-?ru!vF0|kO$3tmfESRXFBJaIl~MZKPsc%Wsi*Ryq#T%v&C@X_l!rK`8*y? z{A|*T@@2|}T^x*^C2hBH`}7mj#^h;uOq-qv54LnYyzMVNM+I6xA=o(4yQMA+`-f*+ zF9X9fhotqDx7F(WR350M0T4-5(BibNeV3yXd~aEMLcGqb>WAX{VyIJue+^=5t(%!F zB4`wAW28@Xn(0dCyIatm^1`#1ua< zSO4D3lb#)WPd{)GuKmeNu#h^VfS7Ld3Bwv=2^lTixCdj^O*hQzn8!XDPk67XXr5nP zsVvJ?dyym)b8@seoUJ>ZaF-{l-=ZnAwo#wQcs5jafO|2jjFu7pO5yiHa_lAcT z-NE5SAK2xH#nbB^oFzwR;Wj>A&Gg=xL*D!J-Q;N0C#6|zeCg{_XE$)^MU%{aL|mY@ zxha&!2g-8sDT<1NhPgSv*O4RK{6)QN9vcTdfMp+sG3txKm$o0Z!b}B8pht2S+H0|% z6NEt^yIn`ea9R zka3Q3iEEhfiy?z%i>{aA<&H@c(Yxn}7});}lu=b*p6CdAu$CyhwGM*91FE{-nAJY2 zq7Y@-Y#<(>ah>+TWiPfML2?f&k?gug&rs__7uNG|1 zI1b}m6q9>s8O4kBuT7FJaqvO{=i<Fb^qTNfT=}I zKpf80(L11vNBZL?Yt0Y;%1J=<_S77Z%MzdLr*WmjeZ$(__nl{YJ`FHxOa^#);8%Yt z>wQ8@02I#IHNRR@`sir$>dJO%Fc=Q~nA%2Xyoxn@cJ6wPVgU|~kATgI2ZJO1yM6Xq z5YaV6F-+X+t}Tx)SxK#WF@{3|HvX-Tw;Ru}rUypRG4L-*#;AcYc)r`9V195i}B^Z0;Fq?p1^p$WlVS z3S*Vbe{8etPxaFZ_{am4)qavo19rN2{Gi?de+$0_2D9d!K&b`N03DoP`o7;gPk<$y zF{bZ_E}n^3f}WFuk8arwBzFd$}$gDoL)cofn#q z;YHrTx!#B3z5WG5dWIc2#E;X(y~tX6b0_wNirJCqsyCzZqjMV6NjzKT2SRe3fu-08 zBl?Bb^S>s^)(*K)APp^KOKmqkEA#R`akT973oZu=mb9u4BV`CF?KzL_dG-ZqcYzKJ zSPE%UVm#+w9fzM=UgG(%9u{V^;fG-9L-rk~D;hzYJY#_qjqx$CtWL^C3X&E;;qCK* zxk9@5IsSZ&kz~wD4JgW6nnhpkH-x*Z5q!h}Q@6`Q5ESa0e^-g60T4U>O#;hhe){b> zbsArQ-Sm2naG+TER;ob;6x~&mZ#j+i4G@F@@g0TzS%VU3K{`@XMZk?6wW}C~{T-W= zx!l4ey}Weq4UDB|63s$d#Zo%LTh>0ca23+4VteF9Q?@-BUD0%!T?xtM)Fycfn~+ju zN>caQFL$D&qX1gifA)*;m^zMb@D!T?`GT%~LbQq(Ws#SOdk0h(A0-X+ywivU3cv5L zXf4SUK?XU`MCHmYdR*)r7e2pw9GHIawh!^Jp;Tb;__@wtr&5iJdx zg~ez*R%9}|I0iT@uoO>m2v^)Qtz5R`&(Z=t#o`M5yjO)#%mCtD;EY6R-+3K=zINX` zd-+We#g7{K*A*$1whcnv57Kg7&}m7AXV7SWx{7RcjTC7>{bZiD)Nd)E%xX4^k zHfZS**|czIJHiOh2;TnC*y@QXiRU&GlSQV)AF&-M4g?{*^8VBZwQ{>Ay_n@>eRr@) z&okY+_|P4z2aoijIh5#vxog-Kw44l59)hsk$(7t;vS_FR;r8qEh2B0Eu}^iCvv+hP z1+}tEwu@mOsvTNsNB~Vw!mN5IelOHe1oU$%_{{y1_rcA`V_`GC>D9dy?^EeiZ7(bU zgSF`SeKL7*!}ht^ZrS}*x!5xW{J!%>a>XwVPqT;ux8Y~8>AVa$P;2A?c+t-|e%;uv z0RB$jU)L#6lIeVUW>9`5i7!mRnx}V;7`AveRlGh-_~ywa03K;PNg1=Oh;{ZVC-^bi z_Oak#YR5SzDSbE}mSiBxCTl=)S3uxv4EPMITmmT^Zm&zP(M>i#W$( z9cOLa6s9EM1QX|a%q6t?E*c~c=}|#*)itz@PfwrYt>(|M7Zucww=T_Y{wY4Q6^x%i z6ov=CUd3N!|KvfwVG=}a@3RKJkV4Pd^<>;8?qQ`^uZf!iP)D;PrG|qM#IOJ8I!N6q ziDq(WekUGJ2u4Zldqkzvk3{WpbV#O}j(20;vi~V@neMAf_&)PYC3yT;@ILlFPQw6y zwM&E5Ra8TdpvXUY0Kr(zrC#qP51)(XfOM-hMXjtO0fN~?S3kq1icYpnQyjYdft~YL z*Yyo4J6P(js&(ILSx4_y(GG?DAuCs^zSy$nKs!im%Y~^5pW8{m1-V)dp7E#0?(-H= zKeqk1HZ*jrg_bQVM=uy6ua5LmddXH$w?a>Lu!d#6$m&Kxn#TK1LyjKhQ~c#8Uf{Qi z+6*}0AZj=O$evGp`MuoJTmgnQ0CmijPCb2iw?nqf5RKGoODvbK)BL8c_g9p2)f!Bp zG$TepON4Kc*)0X&SzoWi>!y)$)guhfdGNM!x;}L>k(GEi*=bb z&B){~jZ%ImU$*oY&FpH7y)mxj7cL)fR95Mvw#7B2&@X)*b3us!SEf)|J?ocPy{MI{ zx%6N0<-9MyJHj1ZQ%wHpie~y!kM~eZKSPl3lk6VwQxd?%PsvuF@LA5*$sbNYZrBHl zOGAV@0q<5USz^oiQj_ZpR`~pR)^9i38u|65hD)g8W&}K!`dC;*M zO;#hWl{L>-zCqRkEK6gK5*$l=$^n(5F)NA0)snwJ=sXZ;3s#VY;mi!R)tIj>c={K7 z3qiY7m)g&q=}QV+=F`e`QzzwfF;W`(*j4x@6s@p9#nGc4XvGU-i^ ze#><$d?~5+IM=?js(fKPE!9<=uVh#G(yI0>>pWRiy|%%;R~ZSdG>*Q&*2fDt zamO>(S#!TwjdzK5usNtQt~|#&I3HFYi7AY2>%LoNRCO6dkFAT%#}dVJi21qRQBG3p z*x4x+h2}Eo@^hhKe+f&StDEbu3LdJ?+3Pvf{>()>k`AGp+t*|!lNPGZ#cZ_s?*dK1 zzvg29wS5Du8>8En3x3^6DRCVH|8F?rN{h(<`6&H~QF2g4av`B7u5;#op`q?Fm=fC> z%Ys^G97&C*k9ScSOIhpe?INRsr~JQQmDwwdLn%MQz^NqoKRx?I=i$_N^mS~cb){|d zcT0?P=d1nTj&?J4jNu&xM2VlQFXccp@$B^!=E}HcoE<)^W_AvRfIB^!-5o z=r12!lfPjp14zKaK&3$ggCJxO>2wH5Q0ZU>p0VsJj;h@P2>HQkSq&SGO`4@V`nQ3y zlV@fwX>?y#Zm}`Bh^7k%cQiOu*+n*)K?KpCe3m4unz>({{7I`zf>IDSDyB^MZb?L zthGuSKg>;D?6lT=nj1erRBEL(JqHI3Y^pTa5T>!I*h zpXh{=>o{=lYj8RdhgjQqmrKdYd63MWg9>if&f4=U%@EWutOROi8&-^@qnU3T591K% zUjrdVKVXQ^`P)YPD2ZuTR+cQmJ{;i2GjfYd%v4Y;TM%pv**KQJ!TG(Y^C4s0ofnd&sV<7NP?VqebPd-IE$`H`sI0#AW2o40SK1#}dagsMtWZ>>RLS2%wB&k# z45P@0nSi7tfQ2YTduZDn9+xaDh+v4#j9rT}2_$`rYx(f}4OeC&m2XsSxza}RYLZ@L zuyt5+nP>4&v$kpJ4wY;^J-fC9Vp+oWwwxx1e(ww$eT(CJo3Rt<9VTJR3bn$ya|6ec z>egu?7)H<50~Cfi>NKa&l7P& zg3uwhs%ZYQjED~ppPjqxNIka{_#vEvyw$21U#*YaDMzUkFvjv%A@lI`RN~PtcAHLD+QoTB@*d1@ z$d3~<^ju4wIRXYke8W(RRCAoDdC7|wjGp2*sBfYE&Uj2P_h$Z&bnLIpfm{C?%9+Ns zx9b1ttkhtbI`p9&!ql2LAP@*+q1)q*&y_?XUQn|4_2DP;(E}CPFzO)?@s-zpm$$Fh z9u07&pPBy#q(1vS>SH1W+un1YFbCZIeobut1@us4)+A^~5uI=Dg~FQ$*NFT(6xwo; z0L}^OVatTV^X<PQ&eVUI=W)|kl&*Sj->-*V4k4uFey24cWP3!CqV zgD-gq+!UWn;Rt%v4Q9h&5nLXfSw7#QVD8t&(rQ^ay=}N^1p4yD=L-MXs3hdKq#wsO zh)4Pr^vAL)-@MKnbuXXl|4S4Wi|ohBiAEEs8ZW^miYhq*h9b#8*Y&Gx92CU>f50R0 z2X!bP3`Q~7VN?R!RDaetkigr&JCG|ZX#z-KAqWxemjOl)1r{PC!T^ntKPZ%m1GDO5 z{(g^K^b4oSmHgZ{~1K z%>=RwYLl__Sn7XTFW%pw3*8=OJ_v2B+V;}uT#D$_IFm%YEUo?{%smFCTzV4j!$gre zR?EQhW0Roxbm2Qh|Kk)7SHodvl3O)rTID^+2#a)OS3vQwr^og(&m;%0@bA7*yz066 zQOvnpPMM&!v6bA(S+eZ<#r=!10qpbu_-+5{0Q?f^{!2mp{4?6!0Nkp5<8}bA4Awp~ z7cb&)@EiRanHYXN3;h;h+-#)J6!z1BozOpIb3;7LoDPgT-r-!dzY({s<=-7lnw9HR zN51O*n%Oo+(EyJZoN7Rl*hCkAy@LLK|D+=TJHGE5I13WF;Ud8_HUs*b=#e8YAlJV_ zUO?{WI)8ztjH178yUQE&2^Oac1|~7JR>3^s&^^^3pYCzy$eme#SE&Rsr-w0husi}@ zwJ!mY3#F)lnEG^k=^y_yN&r8npSKEUM_ab)4!{Lz6X3!C_@?*5cQ?3#q(&-`AI3I9st-00RNXcU9mehux($%hG!^OhX?8pQf;Ti=z};rQw&m~|AdT%(cEH_ z^Lzw3`br(wO@JQe7BkQ(FRKuu1%e6M=+c(PIP@E@;LlXG!PTYCmUiwj;Q_(2%=oua z33tieYx98hILUxG=D}HSbSY$r5Z9p}cWR32Z=SytT2bMuP_lH}n!**Z4O27TEDIA< zLO--&G@=6+a~k(fkMZ}05Q$vMnq?`*t1|+df53-+fggsL2Gcee50bBx1N*O zT?+cww5@x;`)k1AdIYo52&D;XV`C$(^;Mr5(}`pKR}Rne>r5?u*UnuYi?Q3M-E!JT z&-Kwy6hy;MzsA-k^nlBn1c~y^Qx`sNoR`8?GcX3lt_ozJgd>e~4yWu2hPH7*WXA{b z*bp&bK$85h04nz>*H~HRKSLF;U6Gg{T+WA>a5dJ>H<395B&XdS9P3C}TpE(ic{UUD z3-$k{a3d61S)q@}F6X`Q*`B}aZ%KFU0_TeWR&b`@?Xm|azW9G0jwb;73LtCFoTs~- z?ahm%B}M&?TK7~v16)GlcST|9-%oF4xuAwuFUbjY4O31O~a8vH6ZM*mEAJ!?nRd(jjDtm>XbcQ{6OK>5EZePBsOEY zg4Ude!t%nz0aV0*svm9~c?!7r(yZV|S^{VKQD>rZXys}|{%?gr7ED%?Y1TuCWAY*C zR=@Y4x|BWSDaM_+;?5AyjFBCF1J7$}71l~ThV9W%>gum{tew&N76Z6`Y{j4585-v4Zdf2h z?wa|F3rKGk+cYbu;esy@rthZHYBp|h2QQW?Q}+H@bE0Jp3juC<_7e-QgD}K}`LOw@k)Y|EkVdiH2>f|?CZg1L%Jo_exu4jK%H;VE^)gf!IrAOws@=_Id(SaH>f$PO*DMWuWq`=t!t=j#GCTG;wyXH>lIPmzXon$1#Q?89^WtHaUaHoq!3_D;)uIutww+agoD|-tzV(?170O_{T4lweBqn%c|>EAW}a(o zZq3I9FFy@KjC74CBa+_3M&brWBv}tL>7~x$56J`=Q_S!~Vb=gDG%tYdpFN5% zzqj&^<%0E&3@zxBu2A^*x4>!X?ydI%F)A-e7!MHgOKm!)?F{w1aPU8?iNM@#4+;RR zdjcvhgog)CVpaFPql2O?VQu`Y(7SD*^gSZ4|DF)Lz=QH5A7)V@Tu;$ z6(=P#4K#|SHmvo+(Hk%{l%p~v>)zH}ve!tzz&O5--5e)Nvigxi(*oyN;r8P9sa7uU$}$&os7*M_H@F^J8s2Q6)R2@)4HnQ(5-EpXVzxo{Dw%R0a#9a^~dqnObJK;6%FMq~=*OP+wQa8R) z<|f(uWt`ApVq)#iJj`QE#e_m_Jdwq?_bZD4%|c8}=}+ep1q9yfPdcy-`KFYh@3sFC z>tpB%ivr^LT=|dQN^Ph(1xE-ZT6WEzg6CYX*KOxtl2g18l9RK|x@R2>>SxjYU1oWU zQkFi~5h_MSIPC|U;pTl&tb4;^bFy-uH**MarZC>R%A5h;)%Q_uw~21N1qugh99Q}< zLc^lZsMb|lI&IefKa%wJ>HkBL&Zc3DgLw>i`>5F_fCupu!se^a~qU=eNkwMq7YK%LX(=EVmmPTC4P~ zqG0{#&1Yc@n^F$}wR-}o9`ql|=?#-`G3dIQ z&8_`tKaGoZLD9`lkd>ufCPHDXKl;%(ML1Y$qsPyIm{ZP23TH!>;UV;kLp#5dURWzI zjFtU>$gM+Q(ENtO{IN?8yrkgbnuN5do4Y@i#l0=-)%AcYF4=uMEqjgS=BSHQ{watQAa?cI)FRZi+(EMyR*u!g~vjVLlinYE{ok@aU0 zF_bp2^I^~sQCw}Nu*O3375#qzjzDq0oW9b!P?iW=E;W3u+|SIH(fe69N0vX!mN_}D z8Qey%tvBkPR2e?GM&~!v>@;5mYn-nVy6ct~!wjgQ*u3b(odmU_WDKKPunakMKk~)M z-F$eFPii{kN@(p-2V9=<_yaxW`tP?m|Iw%;@t^9=#&Z4lKAz?J?{fY3-*5fb8ZwLZ zQF~?d_q8VK^~iJTPF$}1dR~_+zsr^1<;pL6mMg#27DbjTzsr^1<;t)2ELVP)E5FN?-{s2h zzw^rP!q$9mw%S`|owvdY?{aPT-|SKAzuok17JvVvEdFn^<=+2WPvYhI-+OtM>%YtO z-*2}5tFPB?rKN{;_0?JmUM$tJm%Cr58Lt?xr_NRsmXQ<9eKs zb*}>wEwrjLQj;gk8Cf*iz)Ja4G^gcY(c_qD4tX>CuR5Jpe<*1haWNWkH}(h-q5)gA zf)L+|D~)u6g*}XmGHrli{mfc0s`=fl>~D~_CS(e-2)aHLm!XgB%g-&B#XAp|Ax`#T~+)5WQ(WF@Bon^XXtTn~lO3}DnY*loS_iix4Z%@V-#wag7 zutvCth`v22&J2=kt*t@F1C$Dr8{Jck+_4~g6D~{uad;eFGEbsrim&ZH*zt4&PolVd0_ck9GL#Wc7e5QJ))?JC> zI*Fssb+q;W{lDI1(2ZW_)6rnK9&HYX(PVIXMjJ)I_tq(f!@M_un30`Jh94HEAkyPt z6ivsMlWxwwbOxhrat(U=oD#!BKuy@+G1ZahY_RRJA#XLxCOO1$KOf8>auprlJ`Z{j z!U`fHE5ycU^cP1!0Lr>8saQCKQKU_nu>$B#W&@9i9|Mtg6z_TO#qy?MDBQ3TPO zgX3s_@Acj>1v@@iWre!gqJtOF>z%``UHZEDd~bj6`0uQ|7kkHVpsW|Pu+8Z0=Hc<) z*1P@9!|3h1!?y=VI}ucCd+%s#e{=8k&h|Pjot7Bw{Iv7t7~=fz@1wN@+KoCs-=Rcq zKHuNrCDB@L?;Y-J9Yb}BUt6^0D1G~@(b3zTtv&d$^L~d`X7ljxs{-fI&i{Q!foNj1 zz4?0cC9PYnq)BL>Y`r_&c?~qvb~t+X{OEY^_}%eN^zz_fn>F;&&f!mcTRTTjqy2*; z)>`k5c2;Q#$D6ERih?#3O{Tw}zdPDvjkfpZc<1o&-P_~6gEuR*=0DSBp)_vNtlO-0 z58kk<(iS>6{5v3pHeijv8vVSxL%$zFgR+*|geEwmEw**6gVFM610HL2jNa_L+~0e- z^JZ%YQV#&j&wEEZE3~injsRef7yI)jE%P0#GV~FpivQF&c9r#HwD%&~-2Q0~$QHn~ z?~nEbpRgv|+7-=B<(S$uhBNYYHalCaL$cacCj2%H1;Sq|9aUkw7qSsm+A}z@Qe^q~ z4_MK6Be)j^ZhbY12>ln+e+m7U(ti#5uSx&4=)X4ox3L-#3P&g$p>Tx45ei2d+II66 z&kJdQ58wd@X>h!dkCn9{@W%oNVPzC}5>ZwvXxR`r+8UiLfvYKKAsi>sFYq8DucW2U zaWFb0oe9SU_=#R`9ZxFqHU#Z0fg{%FBm!4k&?4$hk`F6S^}d*t^o68D)^9_ULo}M3 zW_z%@C05;=B2QA_VtE?{%@T)f4^|ej>dt@~S_NBzz-H073Q4RrG$*z|)E0TP#$p}Q zC>mGcNVJCL#A*b^qGjtEGT9m})q9FVBhfmXShF{#Ws<>36m7-G(@T=Pm1ynREYb{~ zrr#imHI?L7S;a=dQ>39aYfHcy{Xq&QP<^o>044LZH5f^Fi~ZIoxk{GPBC9N4$-FKT zZ3AV2O3G)W;C)rkxFA8blVBN+H?q2Z}EKUTke|K5w%MZnU3oZg0KV zf#0wPp^>&&<7_3{@eX-W|KMG-sJdE$dfY1?*(8A_wDPk_oC@X?FZPIg*418r)S%_6 z&PR7wr&bF$LCXir4=w;awOUOptk?yneVlKHy@OC}vbPYrTkTzR0iUJSAHQ)!BFo1~{fSI4v2=xOn4FB+BV8b*Wto;BC!*qgQlS12pO4+Y4X{Nvf zu#S<{^K1y$60b&G`maa-`;p#9Jr!v4y$A$}0?Yor`*qW&qTWVu-`c}jCPui6nW4rFf*sw7=48btsoj60g3sR!V zcs8ufR;SRd*ad-H zrcoytyD~+Lr7#uE*>&P&S2h4(x!KU*Zk@4J`JR5q7qcPR5eUn|g#Xa`?ecR9UC_)u zq^7&#Ji{(Oi_il&tVMRknT1_`svrlr424Ss96LF{MuZLumkKy`N}~gCT@;R;<}jMY zHfvvq``T`?Zw{`aSH=*$AOpX;^&Wa3uC7Nd4YnEP`Cv9Z9?zJ@<2Xm#GzZ^K_kGkx zu(Le-d4DFctINn3yi=LYUN5@fH`-fff+X{#Knd1l;{$AGq4Tl2ws}QC{3W6a$u>9? zCTg%2ppPTa4}fxG1yH3Rw34>K2|rL9c03Awvd$>&R9kD%in6M=JMi3 zwrdHw3l2^-fdsNE1NrGxbVu6-pLw}g1cup?Nw;pJBaE|40d({IcJsGJrRf_!Bim(D zv0db3okoe9u&d54?;6vq-MQygQKVrJtg-8zOqK6ZJmgyxc;||1(R!@0O;E9w!RjDG zO?8LkQCLB-Jstp6co*2Ke}4*3{^&3X&*$=*Ad{sU8`jv*uY6ku{8UuZ!TD-6x?YX` zf!!Tft6i~U?$_+U|5#B4es%D~VLTMkUnv?MTjO8wLb0hE=NxQFDK=8UD7F|$2VU)wAn_5hJ<6Z! zi=-CY2jw~ktvyf@pxPcX**S0%^gVP>ld{b|}9cTXoGY zeJ{F4-}{F2kOA!W5=}*V>btLe9oVyHO+qdYCEnd5_y0}LGICc30K@11TCJqzoc~K( z%kzKt@+|lNJ@kWicfGI03c;!s9QlH)9_?fkFWY&M0jqcC3%zKQ}#xmrVUDD^I)co$4OQ)%WDjd&~yPt>@d`K;IsmSsk% zkdO4X;)vwwEQ&B%iy#7@_}MOgl2rTM#Qd)sNwpCRqrn|7Y;K(pJfI!!CSZQoS_ViO z3`xeP`7IVoBd7m<#*ZG#R*UQ2R%1TpTCGFpY+XJHgr7Zzxqj8i_!fl{|2LdrD=VTy z+pA0e^*H8c-rLAK85W+WW&d!G4E&o~B8h`pbIqy($hI@83VETo=Hf zG&Xuk9@{QZh9Butke40;3nJFV{NE8PlJI?5e+t>h^e9%ku@ z&g@t)97cM{nK#{uk;Y+S-ILzMVG`Yo-os&1-GiRnFiY?EL-l^cL~*@89FHfuL;49D zsKs-uLRi$K0&|HI+wo!Fk^6d1Cn@U7{yn-%m;N=!QwHYqT&^{iA>>sv4RX_=25C!Q z+CqJ4tUoHa(eQ35JZPe8{D(aOpsLSI^Z&&09fg1j`+t%~%Q^p9Z!XV&-p})3<39mI zHkx-Gx=EDs@8c(O{6M<1hBk%auF-;o*zO;yEUGzx0MNk6-Z}Dnbpmxsy|Iz^+Thzs znyqfHQE#!|^;W&tBkXsdPX8Jk3GN)~_q+9aCt+TsX1mcQ4Z?q?{f%}%V+cBVKTGNV z=kN!= zMcZW1E7hzrv~vu*jCWAbGK*tRB#v+M==LA2)i=2RF>a^?YiIJ z+4entE!^NADzrs38B_ZoB4p@?-nAO+M%HDFugv8_xuBC5ICu(X0K=m`52kM?gY&#L zLam_b|4wFaq(2Z|D4g$v4ew4096y!6e|*L<$Pa-vq(9Y0(O(4Eig#T>sQ7+HIjekY zz3oSre!Iz~=?O!c6dP4hP-5 zR$mFtf|je}#_G6})MrTzEa{XbISb3o*i zW~X&(GAHa`=ZoX=3oHh~3VHMkj>&usOeA$M5!eo236q&GLDh><6H?S0J!xhFYt<&4 zSgqRRO5R{okysN`;$qsEv)VEre#;p=f^kGAJ{C1+*M^81J`QfI@a>Z5vd{pvJo;=L3r4$~Ac?2@5V9Hu2;n9QFow`(l7Yb>{GxYp)! zyT*fDB4{+{ULv4b%9aT9Ih(sg&}c4~2o}CXKzpU)5&_mZ<`Mzxpzz5jwe))T%LJPL zKlvu-f8w+mH{A0-&BoIIe;?0--T!gbOz-9LE>+HQt-xF>pbf*Y)4$sH_svw?RKp&SCm&x||HW^kG!rGF8}nO5hMD{9X+=pb~> z12xQKJPh`WP9?#gO|9~#W3jTyLjDD=P`{=C4QwuvfB8FLjVV4TCxLQS5a28BynSzd zzUH6*?pZLl ziBk8O3gLKoJsO`6=ukEOOx63#7qxihhv@2;HkE>_Uz+T{4ffv@)C`VNa5OKTpGNxy zjz$FzV0nlW7@nd0QL;2@DR}M)7Q>H>44k$c#0(<~C*WGt1AZxdInV=r^E) z2psDJk#{W{y?GIr{$sReWprCBfJwFWzrn25iKpa=m;? zO~0OY*%p<%sl0oGXEx@PGV{S`D7#6!?j)PQ4T2ERm`0!oPzEYf#rT~cbv%%>Z zSTaDO4`w+25(${{HLF7yV5c4#;D$1j1OAg6z3jJN1gQ3(Wp2tGvjz>>>j6wbhL`6f zRyjnhWD80&do?O7X%u+QIf-6|(M!b)#ZwSG()3il7lPf_U}-OU?NV=R9iw&*R+D4s zh2xVeAMM9ioY$VQ8u)=2vpr*^SKFg?Gd2jQ)uKizt5Oa6C1umY(3XnhD^h@yD&U;I z=#Nl83fO%G%la|M-qXtolPG?38?bsgm($7$T|o7hpiKpu5ao+#6TayU!?v%majn6z z?OWJhmt(tEp)yoqfIk(iREZuog{S&#@9=CKy&VKN8;X?oo|C8AD>voTd!TJ(SC{l% zfU_z{jM4Cls*n@_5NE(LeI}vz3uwPaV`I(P_<$QZ&kT2(PM5c`hht_Z21W>&e-}lR z`YnW*)ntXKG^pH6DrDW*P4r1jjpicVCnF5;et~%3hxqlJh)q{XQO!z@61}Q|A`Jy| zkhp|3(;Lv!bvuoUW}(fu3*~w?O>k^!tsgbe=PXUJ4Et~RmMpHSvFXD z)y>5q%4TfDWa#{l=+9%=^PEcWpyjy zh9gY5DwOS`t8Fz51sHpN6)JNbD~79{g^tQHQ%$p3R;rAb96@X$h#dsMRs>T8mdmOP z%g=Zfm5K5%K|cTRS4j+e4e5@dCN;-}2n9o`JHa)&lkItI z<6So&49z`s1UzvD{jd~fePD&NQgsX7XT8twaV*O7`|vc&P`L4QTXQZ? zo`y;|^K?`<^+Fa+5w66(Q;GeXR$||&#QuDhz`KgGt`M@>7&e1W2Knb4+0+V;;^_5@ z%juaU18X7#^0fl> zZxa74O_Dki|6>{d|6ZQo!Tw)6EL?-c_qHim28n|*e_ui3ZnS+@Bp2Is3RGxe)(r_7n(k*~_A1>j6LAFt#3PdXCO5gX_&} zHn-;vt_NAlOlMtZxW;pP8C-Ai=5xDha6PnhOcT0Y8eETpJfz@yzk^4!|DoaU-~LbH zIC0PaHRI;e{=bjscVPejq0j#<_Uzvso$9;!w16k6>Iy_3;=2i0?#CmpdF}$vc zkE>BOIlVm3M>FN8m7YrdgkeDsi%D1%VHHp9%ebAz)Bpwhve%+7c^p$Vbl_SfX{G4~ z3-=r+dB54{_H<*{$-|pm|8MVGcH~Hs#O?*mNk0(70hYz-s$_V)lQWzFpG^*% zO)jfn+D6YZ9v+oB%*xEk$f_c@hYOu_&{?|aB&?u=u+U8qAP54s|3p6^eS*x)Jt90J z+&!|2MRv~&Yj>KN>E>qU_Hy%gNiUA&LE&d!sYA@CSy*Igh;Ru@rbU+JR>b}^jB+o` zC_(pwBn$mShd7*;jIok9<G~TsE~Lo_c;okJS<`oMd`&^GL5v#OWcBIOuQE7XDpgV8MDhcD{?myH-&p)9y93r zbck~{%}OR1$jfNzMbp5FmD5GS`c>h=Vi^k|3o~Z^YAx2Z^2I zFwfi+SSG_S0#?F*v@RWi-zNnjPJG5fKeKZ@O?)20(3)JDM^RCxdIte)ITVwUi!AUx z=GtQgCP8sd4gzE0%wxXR+_Ey9#$_(=ndhYoHg83oM;r$5B^kb7q)AfdTB|6+G@i16 z5KnzKO=Hh43OCBr$PdMPiokv1=^cax-qf3l*#tLrdBkJ8D8SibH%%zG1X1C6WvO*( zk24e#i7d>$CSZNQ zQW0nKlDU4Qb&xb+X%q#-aRw6eUDqDnaxcgd&>zKFw@jvBRNCkkM|sFnlCc|wLB@T% zRTK>5kgzEsj(8b*Oxx!b(R2zU2hv3tMqxS~@w_r{xgQGIg)xL<*Gsi_3_&|}Maz6I z%LWS10P;pSS78TUaLuCQYkuoSxU5eEs9I1b2;i!$Lnn@)9z{UCF* zJfoIz=uLuT#N7NT%iTO9rQ~5g4Z*>+@t7A$ng$d$xgW43&F$tEX45=RgHrSikq<4_ zB90P|N2Lf>MU;72lG;T9l7NJTlY@ki+Czq=jTLc{hLJCN8ps%8uZ-+gkpy`XCro5Q ztOT!(wP7>K^Vs!-^1xLBf6DE-+tkf?S(d5DA|s!1Piqxv5JH6Iuvjh&d}le? z-;N9G>$K^IiyY!Ny*vDM=MaB0zP;EXeq1-(X)#Q*z-Bwj|6v!yAkUfddI`zT@_gzV z7Q?a(Je7;?7lJP2o!!*MLd1vMwuA^qL^upq6O3d!$TSSfGW5v{!jcux6YRQ96*8BH zo(Mi^!J&sL42xmY%nhSN7^DXt5#_Ahkq9djznBV}hoLFUp!3rcfuXLO7a|Q}J~$JL zrx#fayXvF%yWFu(aCn5oaE1CKdg)Mqhx#KjYW*eZk7&P*{ucE|fn&Tz{ZZ%`?@@n5 zSNG{JQhyXX`kT~61L>Z1?b#Pmz7XZZ4fa9?R9$;YRFp47xuLp8)jeZ%Zz0MJ)qSe& z8>{;ZQEsRnQ1!rAJy?ixL-mlVhsNsRLX;b-M^rsBR*x2<+)zEH>anqUyb$G@z05nl z9w013hddQV(Z9Nu&KU@U(ACO>E$C|H!VYw`a$y3xT7^)*u2vy5udBs{)^)YGP`IvE zDU_|NRSG@pY8?w5>uMbf_3CQPglcuQWr7GU z4o_aR8fCj_l(iaVJ86{7I?rm%>bEbH=P(xXg$zYVOiH*5MkhU{ib`vI(WpwFpwgYXUg&}1j@c~^E!n)_9PTB+`dpCU-Z+>w` zJ~@M@nai1cbOyiZ4>XH9!p9+_f;tOX2frLIEKk*71NKuyoe4VhITxQZ`Pp23LDi8; zCP>ofTzt;tXZwRU!~v3}z#{sObRiyZxFIf$NoVzYII^(wB2L|VC}pwz-5VNW?Kg-d z%~_Y`qC<1mrMXaP&UT^6L_4|c0>sHXE`onjKdLjUpM+8hgSHT9`gNIjbLV@7P+!QJiW=jH@ zEgBY0dH0sIHEY`pUf{q z(LA0}DSoY`__dCr-rD+4Lm5cYj7IJD1Zd=rCP(V1^oaYPs#&@<5Q?BEY<{5Gwk2Ix`>FUsoMy9JnlP9UJ4$Ykm-U`A$nv2;NrVf^2 zY68vX>UBKuDV*}$XbR-XMwWcR6H_K~Y{n+}=n z<58v_1wj%~HYCVef+U_y66{2RY@DDnSt$s56k>-2y_TRitNW#Wf>*-pI6-B4QxNo# zU@;`j1eHlwK`^3$#E@Xr5~S??SQ3m>g2&?om1$Z*Fh+v2A;GvMNW&!ACnLNq z33%rtMjxM?ySgXm7$*1f-B3hE7gG7|RX;kXC&PY{&(7UjEzkHy+>VathkWlan{P2e z!F$kg({{$o)rQMG)&s36N2-(sz3u87-@A%u?*3dKxKsITZc4fZ2H^!aeR;q8$3uL^ z6L}%?E_#R$tBf4t>+E$H9O8r0kB9iK`Vb##Ww%3oTIF;O@d*W45AliP;vWz3eUQKU z{2v%2SVqCC_izNzdj2nRgD~o!|6`FCd_4d6A^v`{=l}RJKg`mKM?tUPqzL<*0UY4M-Mt>*!o7G5@hfl<)WbtU0pRihR|N1Oz~k{6f2sib zP|<@z28B@OL{JIOkp%QwkqU^MKq2l(j}Q2sR9R@(Nt3tx#w`P${5l&@_BhX(ZGhsyaj!pgo{npbk;6b;93y zWb*Xnbdl1_YdGGjX7h6JXe4>T<1haH=+Wbc;+aa67$B#{ql6N)NU0{0uC!Dp)#*v= zC4nR={iD0jzJY;ex-8^#D{E4zc%nKfdyB^DiRZcp{jz!(EkHB? zUIzd`ya9->fDB6mwNyhO>=N)a1fnjJI*_>64h^BC!^jZDv`=M-B2__j09jvJLy){j zW&lw1n=%C93doQ`+2wLrJ+akhNv8?A`d%_Zz)!kO7#c;Nh{i4y5M6oHMWGW@tfCl7 zq06L>#3_w(X87Tja76SV~i8bV!ylxVhR;Z z9}1FDQLrwEP843!6NSb)61AnqXkoU`uuntNhp046k;1Huq)S0#6g>b9NZM(p#v=Oi z)^r|yDnpP$0nu1Qx1pNOqpwl**-HglpJjj(CxOe15k$fm(~L%erU+6Kadkw3E)gwE z*u|q|ChFqR!o)3%hKd?&wbiG65*j3Fzd7cFLlV*;$vcA802D2NF@OjbG?mM~R*ZR< zRhTRpX@%DUXiEJ)37u_pVDwbNE*@=bB862gK-?vym3h)Zq5+t;0LG-l=u26j19Kp; zx=PW}imrR<%hViCj25I0Ks2S@xS_i5>XdcnkCE@PpBu`v&2-VP4J{1Go> z!7hO<+#&3+$Qs>PyhB)G$qv5AraO2&OZ)B88qZh+W4SGav0^MN@V<_8KxHpNT_jau zZeR#TdX~M8RG2YE5x8~O1Et*6l!ra#3?ZV9&~!B74usAK2F7H_OwZ2Evq$*bF7;Kxj=Nu{S>IlxxgDDIb<5 ziCJ{h#3s75CmB=nVRnMNQ*KH+Y=*&m`qQYtC*P6bh`|WjV4#;V^Ev>=l*48TtP>MV zsfMksEONVz)qu1?!J2xT1kR>C62^2xZ&EB%8mVn&-f5q1tV_F!qM2mBC7+lcr>=LWF+{o>8J;?bR-P0Y%~V4d^8lWVl*Bx zZV7g*>_(%DP4hn49M%W6b->m;izn zzqUL~#+ne-5Qg~+tMMg?O@7lZaZ?guv5qXUX)jmBqpe@4_;vbM#iuDRyA*T^c1K)< zG1s-Kh&3_5Or!||ro6!@BNn#UO&mrlh@Qt-<!!4)XuA$8sBmm8)X!C|9 z=hKu&H3Abr+%l*sRduf8Z`$F{kTbL`)KJJ;2K6lD9ROX&Ve~z&Do2C5>CnKhpBqOSwCMLP3$%sy~#BQ~DGGaAFGNL)2 z*bTQ#Y-X?I0s1b%HR_es9&Z#ZYrNjnd{(=?5g>F&)XO4w#6no?+C|j#dqy>~sXL+u zmb!K`XPG-eX1|AA`#8y}x1`OGO)x+H}7iVn5(wH~m>C7KIVQPptt;uRx&ZL3rG5|$Z!}3BwJ1pf* zTZd(3N6NaET9w2SyOO-b&>}yvX(vc*?FkdR)kTTjGUCK6k0i0##WXS7bDG#ypCxu3 z=83_kio~uWp4e=vOzfuIrtb!6F*ag+%p37k=35Mq1y(<0;fO1;$hBJoi>*G_WUvO_ zr^cwAn!J@|BcYAumbl1@kr=}Gh|jXp8r-l)H!#kuro=p}(=va=FIh0+m@Kq-CW}U5 z4U0#E)rcpt>4=ZA)Di$#W{p}bw}uv0nEapdF&8eoq37aVx5h?lRs)v}O1(PO&~(}o zsjgbkBssd$(9rxypw#ryZOSw(O_T=cy6L9v!>XxbtT_cl!oQV}aGtSZH%$78(7J#n#Bc z607&Ksnr)*Y6w;=v$`A0ZP9@hMlWXE8aY_01c!_CsW@wtcp8L_aE9@?uBR*XMZIAl zmiRP9p}^;9`G}fAT@aR>==+(()$>1X+N}%0f=^vh)*#jJnNy*rpwQb1Z-l6+Q%WW@ zMfIYRvE`ze*<>nVJe&R{jBnGm{5`Mv}AE&lc5+>KHT$UC#GmFngOHhTvN#slm}Q|&EiAGLgTMI|-AHdzml_V`)AX)`VeL_~c^|r#2FzqV(+Iqk6Bw)3kb3 zIonyfbt=BVi@ETsF1)?KnJ?G%3n|Tw22bxC^&a|e4<^!MS@H`#I4Zx;XZhtot?0^M z1%UWcf5tBdN_+a8D;JL4e{dx3jB~`rFZMUx5W0ELO?**qNxAHkZuVOz@!qlec0Bm3 zxfK$At*@NKTgkLHP9hDVqAqT=K5YqSG-WMU$^etw!XZn693uv8DMFP=!(i4&fg3WYwq&BQ&s!~ z-yLL;Q=MjjL?eDEcmf5D3fk{xp)8LGNQkEXf=~K1-wa~HyGrOXHp!1(kX4Oc^75@j z`kiD-i`V{Y5m>|#-HLKsxdf%bYeFduDoC^jR@0?ZZdNB0U>11urJc>(qo7Tp)zYi=*8^kL^YYE%{6Y`Sp==xK#tvUP<*`8AAv$vTa z&vxf8pqp)5CU11O1T0uAc!iH%U|{%$hT{QQ-J=)SfcY}#4o~x$G&^Sw+FY*}b6%h> z(bxSYZUFH^q)M;Ob>+3*(ZTevJc$_Bt zc)Xl%=jlSd`l<`VU+1%QdCWh1(cTy=ZXScAt`z^*H)(wx@t!-4SmDo9=f!7g9gpbv z@^7~~iQo;W;Qw~yjp~H*PkU*z?P)`CeHeL^_$a)JKAUq2Lw1RO+I)i0nO=lx3`4aO z1MH>?yOFS3CLi*7wdIS(iuD*vYW!}gMPd)oC3dvpsx^o?kPt|2f8T~{OeCA33w@^> z=XIjd1niz8ZA_BtdD5b0qZ|+5UoMN4Q=O-4k$x=FYAcLk7{a%9mGzkID$M5iTa69V zW&0O(^?_?#nG0UV)h`oLMnacnM7DJxc^O3DCgj>x)(N?0oprhl=-$Qc=n>wHu9nQt z3XG(Bb!Z4$pd18jR#nxe>2&8ICB!r=6*ZcUsukRR-Cv!g)vJ!n*0#I9-!V~i z#JYF=eW&T@w1`C!LC0i&Pd3{tTeM}EQ3=cvs`k49+b=%bo$Za8?S-A~g@x_S4s2WR zSFh>|*2VP4Zda_2-A^uXZTai1dQ18J2S*c`pmnY(KXCH$Saa|EdXXX%fTWK_CS3b1 z9UY?P((~a&P4_-}DA!&_{{`K(eR#1cB2lR`QKbI#lbtT=lX#lG!tua{H={23HU^9h zVF))boc#zdL4^@2biKcUQPI@H5YT(+9&d533D&P`{QUN9$HVKJbp?U0;Mb1+HRSDV zvpRQ{{M>o4*{nAE*B>thZwkMMj*p_3S58;`=7_PRY{~((0^0-sPOk4Tf|AcU*GM~a zAo552wpt5k6ZcXV;9Y_%y!o|AH=6DmDl(xVA&F`+&-p%HG2G`$LVGH7Be%f$trmxK ztN$}z^J_ruYf(o#qs9x7weO*bxh@pMoG!u5`;W89ffBD!7U=rIaUX~<0vc~Fvz8@j zY;5rIP=m(102-~24mrH88^kBM4YsbOsSL>;E?P{H4U!qp6ek=6y7^Df$a zwgUxyq6CrP$}**&NKf2!NLSDwx416YE1P=7Zr|KMSzjY*p#EYXB&py3cpU}wHo<#% z{=@$MhsV6w9lZa+qWI(cA0Oh+`2NR-eE8$NJ{aYQHJJ2IFkIm`Od=mx82QdYRCh`mN zuNkPcs0DgCy9-@k<)oO9FWxvJju$$@YG);TGWqV-^7JI*o3{?V|48qj;Rm0F7S+UB z1z(lK8u+iSLbr0a=Ntmma(Ug#rS5HN@zhD4*o@$Mu1}Lhfg8G!+g*OCC5?Y`kd>Mr zVG9qCYkhtsU&7S9zfHy1+S?Ajyxk@;duC1Doo~qd>7iuAW(EMQngO`x@+k;6*1y#?45YN!o-a7T*$&COqj4; zjR_0JR1=0@#^Nu6jM}ek5!r!^>dPCL4z|C%*pGsNS-z{nt|;dGd1-7UjDl)GI#b8=d8c2&z#Z!lsYJPn84Th<1bb+6j^Kzc2%dL}9`FyGP z1`)N){p8gAL#n*J0kmbP#^y;I<0+hQ7kNBQ)XMJBK)g)n5<8$*?yf!VUD01SL&gAxdi_8$Cq^~qA0kIAT`c| zuG<(lDGj`W(4a}?t2K3!hQ6P`t!Zmx_T0%AtEFwEva3lGp1v*9k7iq@Vyi8ym?=vU z>^2+mwHpr!{u&wfH6fWH(mIw3e8VtX?|C#6pd*#_!n#OK3}hM?I`8<;s2iN`;sfW> zo* zasStc`TKs)ajxM$pli3BYht_c;UB7N2lz9d-Nh|eP!deogo$4ZUgeuP4RNsKcj;Mr zL_au?*=*7cbq@klvkkqPh`JcqmKD)@`uGd++iZ2h*Ie^U*GKUwc+bkHOGxwPzM_Tzu}fK!~j(Z2!1-%D1wR-&(9v-tv}vVK7R3{`FOX1#l9^Hy5CTAdpMv#k({J+()1h> z`qz_M2?bxnn4K^4IY(iAFT^MJ(zSY#(t@5gg+#s)GmM0Be;x?=yS=x2KeiM675~-o zU;g`EdVrDm@3VLi|HIJz82>-S-;W>v)6*>s8QX|aGxOjqT{>T_s*G=rM?*RX;4=x^ z1euRL%U@T|^06nm_+K6W?>+ncix-dYe)+}Y&p(}<6jw^a9{=4q@P_f91s~)8hxq#i zPMvKx^X!zaQ`q~3^XYu+JjAuLy*-+wsiT>*-mGYW@wDQV^DV?Srv$L?_Av}r-8i^B zn{)hL(&`;_1SjbdtjvM_VVTc(HF5Utubell(~ToeyjRXjEQP!*_!(cU)-Un2EPTX^ zp0>E43FWEtvgGOZbi;4{@}97t6IR2p;td=kry8!xLx!vG5eA{z4oiJK@W1 zb!%_$u!ez8=qLMi6=~!$3T>b!I86rm)t=&ctswTu|9$~9zr@3Vr$Jl7H z6f(kjo-Uj_&mTKD9V`}hm&X_x;fIRfA_9Ma#)(vUPgbsGDdc40N}cNsxtrqW>%XeO zW+!P5`CG`m0Voz70z8zp@FKGsz(NLfm{Adc?&T|Jrqi6qU9Ofn{IgECGx+ajewJ?e z6aMB`ILSPjOeFXWWORRijB)O^C9ZQ4hg zP`|~kGJuo5B>ty(j*xDM%NM7`P^36veTNSDHpdCurl*iO0wTI0meOK9m}n6~)=ge5 z_++s<-WRp@uRRrwywiL>F8FIv9|?!bA%L7p>@3b6jyl+$Sa-ZD-XjMJ+mprKuZ8F^*z?=h@YaEwtw66i z)h54v?INwk;q7mJeN)u`%?SG6P!lms$cq$s=b$Lq(>_EjXpa?4+LeH8N!MWly05*x zBMuH#_tt`0F>#TtR<9=W)y-m+S2u;sFx<*JNyJzIe|(O&H#l^C16Rr}5%ADTCHg({ z9TRty+a<1_ys5jP>jwcl6~yY!^@`^k$mQ|A9On7gZ%nqUBkF+mCHDKg#V$5r^)c)2 zni${}9m{GnKgR3mz7Px&zLsKx6?mO|xh<0$vJb9pR;_-6x?Qz3jiLU+c_y}XzN>H% ziguRVcE0_7Ufgon+XII_cyGVEgzSHJ^z3t`e@E0eKDZ7fC@=1dmJw6ybW`#DQGN6k z(!nJ(q7hURKt7w}AhC4BeFxPZ_Nq{*c>Zd`5xVztebI)d2!i_|#)E=34pcx{v#30=suGV~6RSQjh2{7ZYjW}>zvcOXXI@My~DY&PhNaEF3VmfPRM?q$Pf@JtG zFEdSTQMBDyiVlw#X#r`o31nqP%=64_C~0xHewA0TrZSe{t>mw#p3W4pcwViT%RHS# zWbrhf#ySmP@jvj*YAucs7$BBvIi(XX_=4jNCCk+o!y(2~vY+J?$G&Yf>k=;#xpCa&gKzUljE&X$e|5>RRQbrR47I-J!z@ryCfOrzOYCXpWn$ z@pz0FBZD=p=wO8NtslnPxy$Y(#Z8>-y9ux`2)c8&nnU8uGi0DXz9AuNj%(fke-!MF zKMHQt4RNs{v?~;E%U?RD>msGA)a!9Tw&Ce3{7_GJ;z*!cop5N~*&N1fG|VH3ilkny z<2f&%LcTiLq|0J;vVY?xj=-Ia^Cd`jy-0JAT=qstnn3E&gxKx}iUprNt0#n|LV?Od zoDo4Xz!oT^O+`-VdR8z8ny>^V5|7H1kIHV7ifgGjN2hpOf8{)W;4l|QEE$JZqdkG$ zrH~$dPSvC}_!A$6_+qtKWT1}&=Oz8}5+zE{2*5BBvBA%5GCgE3Ct|Mq1cpf1+S3Zf zD>zB36C(a$v$8{G?+oMh|e0x6r0qJgd3)i146S@DIefe<{NR)i%d?nk9t6b1ANen z%tG-iR;nBvRRX^mvUv9tGhn_(I$$709~+F{w`iC+obRhcJa_?u6wN-~r0W^ZVlLj0 z{DhSspa7_?BvYX%zFeIi&nAwHO0~Xoa-ziwI2A3s_u}yvkMG_2?4|Sa?w6mw#0vMH z;e9~Pmq!nrFCINUa=v=-;^^_S&wmc1Mzre#=XfRU9ef9(r^Nm9+R&hJ!rtqKrr?Pg zbpmpQryfQ%Iyi97p=oPz7ixVkS)HYWGCwX6cmC@29~$QW?dd#!b+k=4+fPsD1)rSH zU(K(8hIRcX@V#KL|1)4=_;LN`L;U?3b$n~P%5VPWXL~=xO!N@{z3q@K9HMZx4q1b9 zn+k3_xG@F%)VVExxJ`YF_|>^n-(gKR1xkS1&eQuLey1PsGxdk(fEB_Iy|;s_0nKdR z#CeP{hnOJ!Dcg)z ztK$XFaY`Q(%<61;bDJJlHz8);q^01S8)(bvnr05V^Nr=cv}}ony$<-#Gi9AKkez zk(g!jcCxCVU$0Q|b1=E0P9XSeP!jf=L#nmjz@{!}PM`|#jnzUi5n|?grLm7($(ha} z)#J1%2)|%rm~OWaYAfo&ig}eoLWLOw*hG_FUAek(`sCvJ?oObODBNolE_a-vn(&N@ z)JlmPE95w=IqxbeR(y+&E}bc@I`II$lA!U#63QLD4!iYqL(3f~F^owkm~F`&BDEIZ ziyWb4my%?6VMi-VY$vYug5Vao8wErFO_=MFha(r9^;hz9S-N5@?Fu)#+MX8A~nq0`f%s>?grN{c;<)(NJ0_qAg_PIUNjd zvSP5sT8K3&6gc?pn&&tcSO}wOtlIBbwO@yx^Z9Zqj&i5aah&nPHyr26Aw%ceIW1G+ zwgvHQpBN5yl5HWJ=9LF%2?oO`s4+mW5Rp-aNsdq2VN2eNI{iy2)8ECK{rZJIv2=JU zhf3l}8i7@uL?hM6XaR~oa6m-|4yhReBkG85Tcre};AMKcprLY8@RO9wf%Cm=syIM* zi}-zu;<_vXkjT3sK+}IW1fJx;&=# zV|>ESQPP>N`&M$tpTp-Adc|58WqHk`6P@cMItRZe&K;*chb^ye+3+>QB$}&8l?y49 zW8mNmU(X=Dc(XdCduSlc2)YMyisE#;I!U*3V4sUq(e?aPOOK{OMKAm17Y`4UiKh9_ zgtzwFkCbu8Bu=c=UAN@Hc_Vssjso7y^i_Ok&DcOR?}b-l`dYEo=R>JAMJ3 zE`as=f^)1URvLu}xh_$l_w zsL0b2I&9y|ymHEP#{REC5g4VVG<6EWkWHp77Ii92*ZFJAkmp;}189R@qyf{Y*IDJP zp2(fSKEI5wo>-A0Pbi@9@*V{o$YCpXi5w`j`Jw{qWy^_>cec-~Q!4|Eo`K!f!j1 ze8gYhcz;HXA?*1E@-2`yPVr(WLlb--J<_hRL2mj~Y=R!|5{A*<$5TsCq7|z?jomoU zaUOM?BJmwIR*5Dzv0CpA&~o5Fk;U{Qch_x z%CmCzvCa)K_jAH=5oBJS(Bz4snplU?SI*B$>FM_R0qFhsDEVy-b1AAlep9v6L5Lv8)pe{ffTQBe;&aqf&hVgcQ zF~mu#FdikvK}s1Xgk3e<)V7a9iX&7tVKFC~@jMmjc>O!zIu&VlDi1bMNG;|YND1L*x|pgP zKj|?pT6tY>R=BK;=0;1lVwsde>K&&_Ve~F1?hpx0-{34Dwg;bw7xU=Q*yA}K{OWQF z;a!Ap(Vv_yaln9vQ^~g%^Oe|;2Na6a99a-J@l=G`Y|LmmWU@5XBvI69Y%wp(c@Dy( zahI5~z4{J8>;c;$b3lRJHVq)<(k}Con@QJ1@u@;DxjUyvmzvtb`t~*MbU>7F%-=pv z2Uz{yqy;`*7)I}e7V7KJLcDt?v{1i6t3%9O*L_?Y&%2U2Xzj29LE&Pbabm;~Z_oAD z%EYgxwK6)@q71w56lXY@P$+w^@q`wgjiR#!GNt-*ax`%satI^o0^)`kv?1{G)+^h3 z4)mW}(X0ZStXEmE`)HZ)1t~@!X1d1Cbt6t*w$CR;6BS!_Vfc z(+azp6^xIOy>@;Z!+E=HT{I7kZGBoV-K8|qwZfn~2cx~H@k&0Ht8+RI0{x1dY0hw! zS8m)YPI-OBc6EYhXi!)vysJ0WW}ogQ4fg(38tnadG+0INlzc!pi=Vf%4F`eFPq;XD zgjdmtSFE>9ciO(~OmY_Y5;tZs$0bt0ch=}iYO20c7?uCiQ_k>l(|1>Tsb0@t+w?NEkF9=#e+Lfo#zm$%GF}N zl1sINwcWZK81x{%!)|)IUc~c0Sl=ObyI)e_LWWnTZHe#QRediw!2jIetk$id;nA98o}EUe7mjZ4j?{A;%|t?`;8plLwbIf_uRgS^yw> z7xl|zP1!y|n}^63=NoX|lAp^%RdPrr3;-9);p1v~OuIdohjM2pYHh*OSD=8l!%Z{X zBP#>=#QB=j)LOwye2+doPH}Nd#Az`;!h8fdO6B|Xw8M&SYj-fuL6mKlA{d&8TaQmx zFy5MD$WZ%+?ItbeVn2{vWB>?|++hLsPNs49O}!X=fUjuRx4FkrA{u`~Y_b9HHHsHE z1-xljJH&!?*G#b=LUr3G43*gm;g+zyUpn{h-opn~nq50L5Feh^zdX2i zm!=89p2kSY1~^qd<0lHy=XhLBNA|Hi?Iym}Ep5u^pq%*jcYL#w<}7~ry!|?uzv*lc z5eHScv&QrAba1-4YlUVfWwL!myGK-t;2I*`^;(INxnTz z#V}cf)rs?L)AXPcf4f;g?q62 zc^K?w(owkNh9+5~r^>$e`g(6~sR_rQi&`ltA-1t>}0nN>u zP8{$ooceAOr_;paUK*7lo&*j9o)^=oU}fQ!eh~y|n8aR^7kLr5c^G1A&N1=4kGMKZ{(e?>O-Ud=imJM=IRl-*9@{__?0@Nyne$c zc)Cfj>-6U5ea6^TbHX&Bv9XwIrk$EeiZWZJKfuCi6=u)r$^6f20C90US zeY;y1)!QZpD9o@2}~xHbRWt z-bSwKQ^OiodIL$cPM~P63niaV>0Q?&c~EJ*Jx~ddL#Y;oHGngn@er)wKv1yRigHCy zjZ&v$y3Y)(Q1MV&$yeGbQY&e>G8tT}K0aha6?cDSy^{&b9Vt4)ZWy}dXzW*M8tORT z_6=IwTE(L4hFh(=wOFl%^=#NYouJ?uHSWf2$4T}#F6fC?Lz-ICRZ*+e0%NIwe8;pPpb#ZGRyBjJO5*P8YSto&EMX>eeK}d{0z#I zG|7{)NJ{Seao`tza-x{)9I02;q2`jQ}sy40YiCk?&2Z6U6 z0?&xR-wlCpL=fzTATS~b`v^w2L*8~CLv1?Uo@Vm}E*z>GpT5S7Qx0OAg-xktk&ep3 zHtCiZkzw3-4uKimI&+w3@CDZtmw3A0ImGoW_@DSf(=7O(Tbj`590G(m?$NL<+b0;P zZRkfz`$r@HN(kt|rPh{lgBc#vskf^&^RVhUA@)X7n=AAR~&m3^92 zj~^Ci`N`{7k0DX%bZzp|G(D1bFhR7s!BS6NSVc|#5nn7;2WT0K;^!T@;&wno?H%Zv zyW=2o9<43bnoZ#ff8zR8#+d|MbuQsY3^EIvmiU8kZu( xqH)=hvFhtylICX*-i0dE*3j*Sryu*0oR5DW|33bG{QC?1`~O)yMGpXC2LLD$%ZmU2 literal 0 HcmV?d00001 diff --git a/cli/tests/testdata/npm/registry/crypto-js/registry.json b/cli/tests/testdata/npm/registry/crypto-js/registry.json new file mode 100644 index 0000000000..cbe46de2d4 --- /dev/null +++ b/cli/tests/testdata/npm/registry/crypto-js/registry.json @@ -0,0 +1 @@ +{"_id":"crypto-js","_rev":"221-af10126df372b774e62724586e0e4dad","name":"crypto-js","description":"JavaScript library of crypto standards.","dist-tags":{"latest":"4.1.1"},"versions":{"3.1.2":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"New BSD","url":"http://opensource.org/licenses/BSD-3-Clause"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2","dist":{"shasum":"b9fe778e8e0df6882e75dc4382f69b6e541872d1","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2.tgz","integrity":"sha512-egolhMvFgIelOG34Goj51J6MUEMr2X8mSam6+54pXiPxcOAfRU68CgsELFsEI5hXZLk0hvUwc7y1VuHi+5RMIQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCy1n0eSyBIyaIbr9gWtCJXz7co8tDTPSzrOFPCdnMihQIgW2kHDf3qn1p7sOQWlTwSH/0f0CXdhD/u70krFOjivgw="}]},"scripts":{},"_npmVersion":"1.1.63","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-1":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2-1","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"New BSD","url":"http://opensource.org/licenses/BSD-3-Clause"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2-1","dist":{"shasum":"fd16cb4e290447c481652821c271384a6cc32a45","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-1.tgz","integrity":"sha512-ENPx5g9llQKrlpt0VOcsvyIgoNc20wBAsUVa2kHDyaae1O6jazOgAuk+59QF2U5wM9m9Ay6e+HFd+PVicj7Lww==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDK+K+tM1qbLkvyd1gZrsnEsflj/juEuASkgnOTYpmouAIgXFU+KweOzQiWxxcfggcFTLuxN4qaujvaYU5JhMwbEEo="}]},"scripts":{},"_npmVersion":"1.1.63","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-2":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2-2","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"New BSD","url":"http://opensource.org/licenses/BSD-3-Clause"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2-2","dist":{"shasum":"93274f1748eca82e444074536e833c223c28f0e9","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-2.tgz","integrity":"sha512-K9dzJnk9aLRPrbl7A6wjOTObTmCZJjKmPbPQZ9dNC+FbKpE73qO8U5ADkV5PbtysW2qdSZVy950ZnNBT85PxeQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDCAM5XUssah94VBmXYlqTEsv6+dupZa2BhbRlvl1Xf8wIhAJg4tiRGqqmbJFCYl3gf6OUzFEUcqt1SJKQCCRJYRyDM"}]},"scripts":{},"_npmVersion":"1.1.63","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-3":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2-3","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"New BSD","url":"http://opensource.org/licenses/BSD-3-Clause"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2-3","dist":{"shasum":"d41bb0cbae7997762335b0805ff27b07a87785b4","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-3.tgz","integrity":"sha512-+ArHI0lIwpomN8ibDuALviEOi2S+BlG8l2edBS1l/s5eWKNi+5Xh79gzOkSyADwo6CDe5A9aFpdrrQHh7apsFA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZmo/VHzBUEp7afgWT5vZGmlh8ycBUbn5xNvJJMd7t3AIhAI8S5HNAODIc7v49MHmDRVk0Xkhx8G1J76qpqn/fAKXI"}]},"_resolved":"build/crypto-js-npm.tar.gz","_from":"build/crypto-js-npm.tar.gz","scripts":{},"_npmVersion":"1.4.3","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-4":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2-4","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"New BSD","url":"http://opensource.org/licenses/BSD-3-Clause"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2-4","dist":{"shasum":"dbcd4fd36b7d9f6a0ffee4e41b3d04ca27b8a086","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-4.tgz","integrity":"sha512-7UIpz0FY50mIR1JCgkCYyVgOAWYm2wkNot+i8zJNfBHp/bpA7lGlrF6pjgQH8HfDxJiefRBM6EThk2GjRZzAUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCen6qvFj9nqX823euzuWvip8oA+5ffPiy7HfdWnPLqUAIgCQo0SBJJRXG4c/9cOJrL5XxaZzbkPJNCuhA3asbw6Rs="}]},"_resolved":"crypto-js-npm.tar.gz","_from":"crypto-js-npm.tar.gz","scripts":{},"_npmVersion":"1.4.3","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-5":{"name":"crypto-js","title":"crypto-js","description":"Modularized port of googlecode project crypto-js.","version":"3.1.2-5","homepage":"http://github.com/evanvosberg/crypto-js","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"bugs":{"url":"http://github.com/evanvosberg/crypto-js/issues"},"licenses":[{"type":"MIT","url":"http://opensource.org/licenses/MIT"}],"dependencies":{},"devDependencies":{"underscore":"~1.4.4","handlebars":"~1.0.10","uglify-js":"~2.2.5","js-yaml":"~2.0.4","fs.extra":"~1.2.0","tar.gz":"~0.1.1","fmd":"~0.0.1"},"keywords":["Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"_id":"crypto-js@3.1.2-5","dist":{"shasum":"8bda4cdadd27f36b1b8ee08989700195c9ab2a0a","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-5.tgz","integrity":"sha512-OQ6DfxkBQ/uHdLoJpkcs7T3NWTRDKJqiO44CsMMV4yZJ8LYfWvbqu0XdbxBeyKx6dh8xjCjzsdAdJx0ouYhiBg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDjxgzhlcCbQuarXNyKxdwdfquBbFsSo4h33bQIUlxZzQIhANL4/tekAUNSvs01LDqnPSPae8mISkLxKFFNokmnr/ox"}]},"_resolved":"build/crypto-js-npm.tar.gz","_from":"build/crypto-js-npm.tar.gz","scripts":{},"_npmVersion":"1.4.3","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"directories":{}},"3.1.2-6":{"name":"crypto-js","version":"3.1.2-6","description":"Modularized port of googlecode project crypto-js.","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/evanvosberg/crypto-js","repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"ce1f4dbaa0ec5ae17674c1d8e81224eec5adfa8e","bugs":{"url":"https://github.com/evanvosberg/crypto-js/issues"},"_id":"crypto-js@3.1.2-6","scripts":{},"_shasum":"ce86640409e498bacc4de72478685cd6b153bfe6","_from":".","_npmVersion":"1.4.28","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"ce86640409e498bacc4de72478685cd6b153bfe6","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.2-6.tgz","integrity":"sha512-wrZe5rRBoVtWkZhdugcIeBpavOoPUOX1Ka9XtASJ6/axipN3LBe65QgWZZMkKpfl5azKECAtNyxyl9l8fQogUA==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGCJCePhI0hE7PV4B/BbEZSAzVUaPGrJOE4xvC/APVmSAiEAvCTTBMPvv0xvrWxaaT5kojzmZK9kLFeq4yrJ2UVuE24="}]},"directories":{}},"3.1.4":{"name":"crypto-js","version":"3.1.4","description":"Modularized port of googlecode project crypto-js.","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/evanvosberg/crypto-js","repository":{"type":"git","url":"http://github.com/evanvosberg/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"7ed8a08ceac45093aacbcc5aed11e28bcbb7c58e","bugs":{"url":"https://github.com/evanvosberg/crypto-js/issues"},"_id":"crypto-js@3.1.4","scripts":{},"_shasum":"2164f16de2f291510b652d746bce37d3649830ad","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"2164f16de2f291510b652d746bce37d3649830ad","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.4.tgz","integrity":"sha512-IcCHDxrYPdd7aG7tavEPoVww4WU0rQ2CPuzgbOLW/9Gkwbz7k65D2rkGyaD+xvK0AWkPSQCFQy5i1jBqLn0pUw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCHu1q3rfq0Zhnr6n9/cqxvMa3YnKIAmxg9ij2/U4FzCQIgZE1UJ/WNwqCYFUm6Bb5ufDjlZRPWtYbu3xfEmRPxj3o="}]},"directories":{}},"3.1.5":{"name":"crypto-js","version":"3.1.5","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"http://github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"a94ba57c7a77edfff50ff037498b83f1cd3cb3eb","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.1.5","scripts":{},"_shasum":"da75cf3b2ac19a7b791703ebb95d0a2c932a98d8","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"da75cf3b2ac19a7b791703ebb95d0a2c932a98d8","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.5.tgz","integrity":"sha512-r/KFzWQTBqZVRwTbqUlHxBlwSDibi+BFsVgSeXTgUzBE+V3QKPlnbBdCJm+9vnFIeiIIiQ/Pu+s9iPIYYPt+dQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAEz4LONzHWb2Sdan/O2rb8XKuzdguIngoq2P0aaPUjiAiEAhAGMhXzP8Vw1Y6DumQEawJ/YdibLMmLjyYIOeDVV5D8="}]},"directories":{}},"3.1.6":{"name":"crypto-js","version":"3.1.6","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"http://github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"6362ada6faea779c3eb1f814257d885bb888e776","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.1.6","scripts":{},"_shasum":"6142651b232dbb8ebdfa9716a70a2888359da6c9","_from":".","_npmVersion":"2.5.1","_nodeVersion":"0.12.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"6142651b232dbb8ebdfa9716a70a2888359da6c9","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.6.tgz","integrity":"sha512-bUIpkL7AVHTH8341o+F2RwNjM3UbH8Yp01fOGXp3kS5Ra+v/G0bIYYOOexA15uGwn6Bim4KxPXpFULpUMxJrkg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDXgIPU1SRPonPcwqW5KeQF/Q8j3osPnv5ov7Zot27t9wIgC6hwrwzPNw5EOoqC0xIuqzFq2NLaSb0JCeI36/oSAC4="}]},"directories":{}},"3.1.7":{"name":"crypto-js","version":"3.1.7","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"67d2e996e25e00f66118b3b8ab7f7fc8eae6e8d6","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.1.7","scripts":{},"_shasum":"ad29d364401d2dbafc271cbbe4ca3304b477c777","_from":".","_npmVersion":"3.6.0","_nodeVersion":"5.7.0","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"ad29d364401d2dbafc271cbbe4ca3304b477c777","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.7.tgz","integrity":"sha512-LFWbCa6tSRh0oilbS+BpS1ecZEeFjLPHaD4nPrjATBm62XtZ+CEpPnLTtcVw61d4oZCjCb0SdDsp2vwfDQgqcg==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCfWrWCCAzXwfOcE07wzykPhJKkoqY8wvLouq/neycSfQIgB92l6mlNSNTv8LTvL5Yk1kQ9VJp23NdXxQnP06Zw/zY="}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/crypto-js-3.1.7.tgz_1475872409527_0.5406671592500061"},"directories":{}},"3.1.8":{"name":"crypto-js","version":"3.1.8","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"be8d44d18736f438ca480664d7d8bea46f117b5a","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.1.8","scripts":{},"_shasum":"715f070bf6014f2ae992a98b3929258b713f08d5","_from":".","_npmVersion":"3.6.0","_nodeVersion":"5.7.0","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@inext.me"}],"dist":{"shasum":"715f070bf6014f2ae992a98b3929258b713f08d5","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.8.tgz","integrity":"sha512-4E+PJNbUbBrzQLB9Vw86eaF5xZ8MB6dw4aaZ67YhLNduTmqJ5AziuLrYikPWHJkC59DYZp+cyj+qg3vBE8OnOQ==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIE+cvXycr7rEPVHJab/uNrsJvEmPr+g55I6BRGxsZSHkAiBoBrHjdfhAak5DkeIYt+OHjvIDUyeOwu8JytlUaxtSHw=="}]},"_npmOperationalInternal":{"host":"packages-18-east.internal.npmjs.com","tmp":"tmp/crypto-js-3.1.8.tgz_1477571728581_0.9875451645348221"},"directories":{}},"3.1.9-1":{"name":"crypto-js","version":"3.1.9-1","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.1.9-1","scripts":{},"_shasum":"fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@inext.me"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"dist":{"shasum":"fda19e761fc077e01ffbfdc6e9fdfc59e8806cd8","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.1.9-1.tgz","integrity":"sha512-W93aKztssqf29OvUlqfikzGyYbD1rpkXvGP9IQ1JchLY3bxaLXZSWYbwrtib2vk8DobrDzX7PIXcDWHp0B6Ymw==","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCpYIruvBCcNeIGSJ7qMt2+526dGoLJgutNqY1BJTvELgIhAPG5vAYIsX7WpSAcrgxtsvKQWPlJcMMlgKzS0XLovSwR"}]},"_npmOperationalInternal":{"host":"packages-12-west.internal.npmjs.com","tmp":"tmp/crypto-js-3.1.9-1.tgz_1481717192265_0.6456991981249303"},"directories":{}},"3.2.0":{"name":"crypto-js","version":"3.2.0","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"6a6d99aa844b13faf6f2ae50fdaf4c9131aaa20b","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.2.0","scripts":{},"_shasum":"abe124867e49d2695e20fea091728276a9f761c0","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"dist":{"shasum":"abe124867e49d2695e20fea091728276a9f761c0","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.2.0.tgz","integrity":"sha512-J6LOZ2Iha4akgCwqTrZsCLdA5y/kJ1MxRoGzs/xtIfFSaLSs1gENHznVjYEzWZfunzt9yiViXq8bO1RyT1euhg==","fileCount":54,"unpackedSize":431743,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQajFCRA9TVsSAnZWagAAWwQP/0nQ1//cgnJPu+9ORNxs\ne6S2ka1PagYOTCPGpsJQw+6fPyYK2n4C66RtpLO4nifguHORK+4Zj1SrW4aY\nJWXNtPFilnEnv1YlRmFdgMfq8q3mQlWbMkmD6+e9KGFu3ErIE/wgiVAvhgho\ngc9nDjDacf8+/66grAxXAFKTcIAn9BZTSb7rH41x7UljNXdL82GSk6oaw1Pn\nHZ98jaO0bQNiC/BzSsoDbApNI1mo+E0MSK+isSKU1iXi9Idp+t/rZvXBSIty\nvycmZHIT+bfBf5c6q8bgytn1repHLzmD1lnrpsoarrxOW7XgUjxIroVW/4KU\nkkGjX75q3jvT8up2LjVWpsgGIZ1x8xAY6yM8Aby4PfCmItlgBHYBJF9qiJ9J\nrUDXpTD1mW7TjWCu4CsA29dg0/sJGPFUA/R55Xy1EHDtiZIdYAncclnDplyM\nDKKlOBeSkJ6KoEl4Nh+Vz8fbjAcD+bF3gfdLIS+WFB6J4jSpGbdfrLymqQ9P\nlQvm8MQpqgzJoZ4sdi5z9tkYoR23fj5vG9GVZHSNk4XPTT1sJVqMib+qHfO/\nC8AV+86FO88Y++JPtWJvouYeMI8Vm5Z4xMVgFm5nURo8Kk62KYdIqjL9agnb\nTpFtIHHo9liCHw0gKj8h2jVYJs5/BVHWht+TuaKy37DChbLU+XxGq52neff8\nUI2H\r\n=5khL\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFNKnzpb7O7zD23bLp81MUIjsY7SkTdHWIymv6lc6x36AiAVaIcJEzM+gX5bXJq02TPWacHfvw+dL0XabqS8FynEpw=="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_3.2.0_1581361348917_0.4132067314218202"},"_hasShrinkwrap":false,"deprecated":"Critical"},"3.2.1":{"name":"crypto-js","version":"3.2.1","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"79209bcc62ee74b0a5055243068015e35a01938c","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.2.1","scripts":{},"_shasum":"9408ed6695905ae97e05e8a6ca11937819b216a7","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"dist":{"shasum":"9408ed6695905ae97e05e8a6ca11937819b216a7","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.2.1.tgz","integrity":"sha512-fIEXOyiXnmPbPk2+q8t97VYDSo8naqvI+2v0AJeLraQzhuL/GZ2qgcRpEadVQ7r8pXwBOHVjwOdyAXYYb3DWiQ==","fileCount":54,"unpackedSize":433777,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQyQFCRA9TVsSAnZWagAAJrEP/Ayl8vkVKoBRL2PgoibM\nHASDSV+k7NvPG40P3LJnO1BTH6TBYLsBWox0Epf8EsQUAy7tmKc/hU0xl06S\ny8c6HFQafkwCwEy2H70c9bEdqjv4/cBeodxtOfxSUgBZIQV/TXkbfD7RWq+w\nB2XKTe7hB9M+175cUSm05nv21qdG9oTB/+coeuw7+0sMG9WG68MNVW4s6cXO\naFkQ9XACxps1LhpSiRciWfutW+jZCZwFGt55BF6xvqbpjMNgxwHX/oa7AShh\nXBq03NQ0QZxqnZrTr5KceCo11JGdmYHWmjd5VMCCh4Vdx3wg2g8f3O9nyVWu\nJ37Di6vr2X/ps5KKsgodl0ABJ2+UG7NpXrz/tskzyWzqDz6GVAvIdIwO1pBK\nD0FR4hjd8J04vMwcNFIK3PQoc2gOrHWVMrh+hTgIxHYtn8oO/vJZ9FGXrkQI\nuNJA6EYRh7moFz8BedLgVBABcm/iEpZnLraMYoPAuILPvKEm55EfzE299pXr\njJHaoIT7ENFcByg9s9tyloeXTZEKFNFHLWbukFzRIpEQDO1yLQ5aje3qId7+\nLIWrYvBJ9ZignnXvxvV6oDRjAZhooszS+hH6g52nJC3RHjmZ+DZ/9d2F5WNx\nu+coaCIdJOPwO8/Ah9ZuWL4/p1I+X4GVo/kJuHI+J3IBBorFs5OWMp2lOik3\nxqmo\r\n=C2aH\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHjMtE4hTrKq91+cbzzCYnRi+F0B/+kfQ3fOdihJnvEYAiBfR2+s5Nc3CnajDUM8SkcARyeBxRP9Xr1AmNV4SY1/6w=="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_3.2.1_1581458436658_0.4572879666808578"},"_hasShrinkwrap":false},"3.3.0":{"name":"crypto-js","version":"3.3.0","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"4db30e7ac677715fd11163efa382780176731352","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@3.3.0","scripts":{},"_shasum":"846dd1cce2f68aacfa156c8578f926a609b7976b","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"dist":{"shasum":"846dd1cce2f68aacfa156c8578f926a609b7976b","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-3.3.0.tgz","integrity":"sha512-DIT51nX0dCfKltpRiXV+/TVZq+Qq2NgF4644+K7Ttnla7zEzqc+kjJyiB96BHNyUTBxyjzRcZYpUdZa+QAqi6Q==","fileCount":54,"unpackedSize":430350,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQ+KiCRA9TVsSAnZWagAAGU8P/jDnsG1W4gUAaIA+tuWg\n7054WpI/HM5hKe7KVTj3YKjG8otTcjzOZJrrL9EN4Ew3ScGhA0WhnpZsTLm4\nU1Dzm81ZKQvjXS+WVPzruEWzCcmRc1QN3Zv3ZEmtL+bi5x9FHCyFaD8ynaOP\nEC5YGSNdZ659i5skdCsZzHCxk0Q7uQECHx76VhVon1OnH3cNgiS7sECyZj6l\nXNOec1Zjm5nlK3pg6YjHSAkZTgOQmTUplIKJx+Dhg6uscWb6FKAHphO4t1xg\nvA+4JYRDkiLT6j8Oqe+toa0Gz3xqKnNiz7if7asPsxuLUV9B+v6mJrfFNv59\nOw3tatw0D5FuI6HDHLcKtyY/pd4xr1LREFJRGNYMPG5FxkaQULFSKCiok+2A\nwYq9gqeothZiZzHNKuO6vICSs7/eKLluFPbOvR/ZptSOdKWIx6FK4Z6qXffu\nhT774iYWlx/z+r8lbOiV+hBlLltmLArOqY2xwvpASGaflCKXMF7m5F39U5Jm\nm1kybTGuF0I5YPVu8dTBzryIuljNyQixi4zv5auNgkBuvTUi+wKBgev5ICLh\nNWugi7fQ8teZ2F85kepBTCguX9Hed2/SRKQt7KDwo6hkt+Htv3MM3G0xpidR\nRjoqNIvk6vE88EhxLmHin3dAUjz0KdC+78LGwUwnBKKPrp/YTkJNDzP9QhC1\nJ+Se\r\n=2hm0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEoFrpikVHlsVxI392F6W3SgtEtM4t+JTBwhaKpk+kLkAiAnQim7tJ3/RruiLy20Hm2r3RUlnMpOAsTujwDLvLQBDQ=="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_3.3.0_1581507233736_0.08976566124450325"},"_hasShrinkwrap":false},"4.0.0":{"name":"crypto-js","version":"4.0.0","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64"],"main":"index.js","dependencies":{},"gitHead":"31d00127a7c87066c51abe56e7b8be3a32141cae","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@4.0.0","scripts":{},"_shasum":"2904ab2677a9d042856a2ea2ef80de92e4a36dcc","_from":".","_npmVersion":"3.10.8","_nodeVersion":"6.9.1","_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"dist":{"shasum":"2904ab2677a9d042856a2ea2ef80de92e4a36dcc","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-4.0.0.tgz","integrity":"sha512-bzHZN8Pn+gS7DQA6n+iUmBfl0hO5DJq++QP3U6uTucDtk/0iGpXd/Gg7CGR0p8tJhofJyaKoWBuJI4eAO00BBg==","fileCount":54,"unpackedSize":434322,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeQ+hDCRA9TVsSAnZWagAA9/UP/jbXwjmsosEUQWojrLA0\nlUUV+L+7AqOikCSp0+WcitD5idjEPAmOE3smvgOQfG+HP5kT8fYbEtPHh1z5\nLC87XruP1F/naPZmhT5VYJqPfl2YVwN6pJZWNBkZW4pX9B0ou6YMJwf0ML4r\nL1qvfV28Wc4BJ/gWBvcixQ4LcjSfF3v1cPltI4XdhMbUgEaNJ8cZx7TrXp/x\nCe/CbD1KkJXwI/sEnjiVLyPqjdd2vIw3sMjflVIB4Frz62tKC8cc1acBNExU\nhegxQk8F6WVIHNJlKV8OLSM18uD1EX0U5jIfQX6V7qrx38uJe4rE2AYH7Sr4\nWo+Ct4kmbwzyii43LFCvdzVp/1iEByzXXNsf07rktHxl8ozUHiXb4xEzoiCW\n89GkGBoNgzJsbUbRQw/AFXTS4nWDG8l6djxuVAVQBrOP5rmOrOX+/6XPR5TC\nx/dmfbj4ZbJ0KhlhB/ZXke4BAHClgwpPdi4aL84iOTZBzIZILTeyf7wTj/Yz\nJA40HQI4FRBz61fL8kdXCGi3NszWgb/iqDBbwklKAXmVmhDDgtD3l/O65cw2\nqY5PhjJpeMrcVO2uMw3NMxRUw5/OePurLb8yg0Af1GLjkx58/3dcsj3HtJiT\nJp5RwClSFCS4gFumZwruG3cu8cT9EvMRxEKtUTEWtMeTdBJdHhNGqWTpe9Vd\nblNM\r\n=rqQJ\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD6Mff0mjyeZ/i2DCkvcnl0osTvMBOWcF67VDx6S8qVAAIgTIGi0TETWvQ3CToPM5uwjhffvCNHpLGv15m0A8UgAc8="}]},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_4.0.0_1581508675479_0.0433805305729702"},"_hasShrinkwrap":false},"4.1.0":{"name":"crypto-js","version":"4.1.0","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64","Base64url"],"main":"index.js","dependencies":{},"gitHead":"d97e5d9f66e1997d2af6ca09dc797a057be0bc5e","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@4.1.0","_nodeVersion":"12.18.3","_npmVersion":"6.14.6","dist":{"integrity":"sha512-yNL+QMHnQU9/G6UtkXfscd+pLbdr6R7fvtWwXZJjWBmBiynuj1mdKT5E2o4gt1uvzt3Roe4YA+KkETLgGUu3wA==","shasum":"244dcca923b7f92dde2532bf5bf444e3f3f886dd","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-4.1.0.tgz","fileCount":55,"unpackedSize":443678,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+TWVCRA9TVsSAnZWagAAbT8P/A7yACxWe6HKr/bDU+rl\nzvHX7VIzXkLxlY/lQTu0A1tgUVDpkzwD6dossmywSmeQ5J1Z1LPEscZ5CVqG\n/W93ythHMCiT91v7FAeINMcoCmORRmYqfCqteEZL9p0bd3FJ6zITF5BUJIik\n1bExtZyi/M+RNv4/wxk4MBr8Ej72N0LzSPW2fk9AnZSkjpj1VpyNm5f6bMAd\nsgSvPtltF4ovNCZI33awzRZGCRuDiGjyyhRm/mWiJd96bIaN4GX7xfMYRePP\nYchkVlB1HQ+1mNbf4ON1WezWDpRCqaKHnLEBUd6KxFjuMURwMMBuYcfueGui\nVEzKcGlAtf6tfc4g2K19h3RXAlw9P8I7uf2r0+rWZ0KS7PsgGssUOfbwVpS+\neYjCRuv08a2xCyGNPyWm62IaCUe0l505U1rFPaUNLj7vRvmFCCr0g0B7Uw5l\nkmi4LpMXNN3FL0ING7ZxCzvWjNkoAKhIUk398o2WaqRwOLJnWkwK+ek/rRdR\neM+05cuQbqlvD9BFbzukFF76AabZ1B1zf2xE2/ZhjgifQGQDzhfXJdMfSYcV\nmTaxO+51mzS1idIoOC8LA5kyZ787v5KzQaboygBw1nXpsro52+/aCfnqPvea\nwCBSVHSwvWp0Qq5KJaS1gYv3oPdfBQKNGlbw307ddSKA3hZYu9KsDne+Be8m\n73pS\r\n=TLTw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNNIWFhF96Aty2oRm2VKncBh/bDPhU2Ch4hyd9uO/2XAIgYTNJQYLQ620WaJhFG81vmD2Bvhvi8RdmVazOhHoZ4VI="}]},"_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"directories":{},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_4.1.0_1626944917507_0.8307670047400892"},"_hasShrinkwrap":false},"4.1.1":{"name":"crypto-js","version":"4.1.1","description":"JavaScript library of crypto standards.","license":"MIT","author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"homepage":"http://github.com/brix/crypto-js","repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64","Base64url"],"main":"index.js","dependencies":{},"browser":{"crypto":false},"gitHead":"7c26cc72a618053c294309c22c95a895af39b7b7","bugs":{"url":"https://github.com/brix/crypto-js/issues"},"_id":"crypto-js@4.1.1","_nodeVersion":"12.18.3","_npmVersion":"6.14.6","dist":{"integrity":"sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==","shasum":"9e485bcf03521041bd85844786b83fb7619736cf","tarball":"http://localhost:4545/npm/registry/crypto-js/crypto-js-4.1.1.tgz","fileCount":55,"unpackedSize":443864,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg+VyvCRA9TVsSAnZWagAARZYQAJlADGhjvGRce4dYK7dc\nbtY5w4EXXZ1LyK1XATNYxwcVmA2LhIer7GKkarr0q7A7idN6CvPrJ2BtiQhZ\nxbP7gbyuWJ62S2DvMmC5xBLK225i2f3BnMD7L0C/mjYnjy9WzVnUMNr0x7OP\nTbEu92yXZiYI1BlpbaBOAhxBgc6XZtPXlOwchh0kSZirNvWS9+BLOPWBfAD+\nzoFD7XMMIySxdZa0CL3Y6h/Y7Yo3iFFVygwYJfj8JdkJk7HLrUHEXq9zjZ5m\nUOKrOldl2rrIui28uF/GIR3ObXXHTA/oqhr/GdvXcdCHJWBqytojdevJ4ijE\n8hit0d6BRfMqA6sK4Mb6QqPlTn3m7XQd6WqEtpMEI9ah3JO5yA+KklP3HyES\nI5E2djCz9J9d4x+yM0wFlfP2ZP2z/xNFFl7OdVk+0rgeDJZ/aiLp8v6b84z/\nAoWBUsjRXcNdnEMrM9YhVEtYULDokz/rqb+qxrVgYJZykGpNzhV02jnNxeka\nWGYpS/vJWDsuBlntX52swAaOsygEVcCVqi4p6Cj+xsh3thPZEUqIQej5g8+3\nsvTbwh/q3ay2jlRDCbN1S0nXxlZgtYs6ONB+NUkA+xVqrXm+ZuSGa+HvqFU5\nGp4SmDwtQTvphUd6NE4ZtZ01E7h8gqvveQ789fzd98OkMNen4qtYqFspua+z\nBwlP\r\n=kt9s\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIFkpEFcFkddoirHN3vTnn/BPJA1RT5bDPbTCrS8og0B0AiAiSY0ISuuKUJowa5hCUEINK1GuvR6X6tcKOPxCBzB+vA=="}]},"_npmUser":{"name":"evanvosberg","email":"evanvosberg@urban.to"},"directories":{},"maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/crypto-js_4.1.1_1626954926964_0.7421795429508942"},"_hasShrinkwrap":false}},"readme":"# crypto-js [![Build Status](https://travis-ci.org/brix/crypto-js.svg?branch=develop)](https://travis-ci.org/brix/crypto-js)\n\nJavaScript library of crypto standards.\n\n## Node.js (Install)\n\nRequirements:\n\n- Node.js\n- npm (Node.js package manager)\n\n```bash\nnpm install crypto-js\n```\n\n### Usage\n\nES6 import for typical API call signing use case:\n\n```javascript\nimport sha256 from 'crypto-js/sha256';\nimport hmacSHA512 from 'crypto-js/hmac-sha512';\nimport Base64 from 'crypto-js/enc-base64';\n\nconst message, nonce, path, privateKey; // ...\nconst hashDigest = sha256(nonce + message);\nconst hmacDigest = Base64.stringify(hmacSHA512(path + hashDigest, privateKey));\n```\n\nModular include:\n\n```javascript\nvar AES = require(\"crypto-js/aes\");\nvar SHA256 = require(\"crypto-js/sha256\");\n...\nconsole.log(SHA256(\"Message\"));\n```\n\nIncluding all libraries, for access to extra methods:\n\n```javascript\nvar CryptoJS = require(\"crypto-js\");\nconsole.log(CryptoJS.HmacSHA1(\"Message\", \"Key\"));\n```\n\n## Client (browser)\n\nRequirements:\n\n- Node.js\n- Bower (package manager for frontend)\n\n```bash\nbower install crypto-js\n```\n\n### Usage\n\nModular include:\n\n```javascript\nrequire.config({\n packages: [\n {\n name: 'crypto-js',\n location: 'path-to/bower_components/crypto-js',\n main: 'index'\n }\n ]\n});\n\nrequire([\"crypto-js/aes\", \"crypto-js/sha256\"], function (AES, SHA256) {\n console.log(SHA256(\"Message\"));\n});\n```\n\nIncluding all libraries, for access to extra methods:\n\n```javascript\n// Above-mentioned will work or use this simple form\nrequire.config({\n paths: {\n 'crypto-js': 'path-to/bower_components/crypto-js/crypto-js'\n }\n});\n\nrequire([\"crypto-js\"], function (CryptoJS) {\n console.log(CryptoJS.HmacSHA1(\"Message\", \"Key\"));\n});\n```\n\n### Usage without RequireJS\n\n```html\n\n\n```\n\n## API\n\nSee: https://cryptojs.gitbook.io/docs/\n\n### AES Encryption\n\n#### Plain text encryption\n\n```javascript\nvar CryptoJS = require(\"crypto-js\");\n\n// Encrypt\nvar ciphertext = CryptoJS.AES.encrypt('my message', 'secret key 123').toString();\n\n// Decrypt\nvar bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');\nvar originalText = bytes.toString(CryptoJS.enc.Utf8);\n\nconsole.log(originalText); // 'my message'\n```\n\n#### Object encryption\n\n```javascript\nvar CryptoJS = require(\"crypto-js\");\n\nvar data = [{id: 1}, {id: 2}]\n\n// Encrypt\nvar ciphertext = CryptoJS.AES.encrypt(JSON.stringify(data), 'secret key 123').toString();\n\n// Decrypt\nvar bytes = CryptoJS.AES.decrypt(ciphertext, 'secret key 123');\nvar decryptedData = JSON.parse(bytes.toString(CryptoJS.enc.Utf8));\n\nconsole.log(decryptedData); // [{id: 1}, {id: 2}]\n```\n\n### List of modules\n\n\n- ```crypto-js/core```\n- ```crypto-js/x64-core```\n- ```crypto-js/lib-typedarrays```\n\n---\n\n- ```crypto-js/md5```\n- ```crypto-js/sha1```\n- ```crypto-js/sha256```\n- ```crypto-js/sha224```\n- ```crypto-js/sha512```\n- ```crypto-js/sha384```\n- ```crypto-js/sha3```\n- ```crypto-js/ripemd160```\n\n---\n\n- ```crypto-js/hmac-md5```\n- ```crypto-js/hmac-sha1```\n- ```crypto-js/hmac-sha256```\n- ```crypto-js/hmac-sha224```\n- ```crypto-js/hmac-sha512```\n- ```crypto-js/hmac-sha384```\n- ```crypto-js/hmac-sha3```\n- ```crypto-js/hmac-ripemd160```\n\n---\n\n- ```crypto-js/pbkdf2```\n\n---\n\n- ```crypto-js/aes```\n- ```crypto-js/tripledes```\n- ```crypto-js/rc4```\n- ```crypto-js/rabbit```\n- ```crypto-js/rabbit-legacy```\n- ```crypto-js/evpkdf```\n\n---\n\n- ```crypto-js/format-openssl```\n- ```crypto-js/format-hex```\n\n---\n\n- ```crypto-js/enc-latin1```\n- ```crypto-js/enc-utf8```\n- ```crypto-js/enc-hex```\n- ```crypto-js/enc-utf16```\n- ```crypto-js/enc-base64```\n\n---\n\n- ```crypto-js/mode-cfb```\n- ```crypto-js/mode-ctr```\n- ```crypto-js/mode-ctr-gladman```\n- ```crypto-js/mode-ofb```\n- ```crypto-js/mode-ecb```\n\n---\n\n- ```crypto-js/pad-pkcs7```\n- ```crypto-js/pad-ansix923```\n- ```crypto-js/pad-iso10126```\n- ```crypto-js/pad-iso97971```\n- ```crypto-js/pad-zeropadding```\n- ```crypto-js/pad-nopadding```\n\n\n## Release notes\n\n### 4.1.1\n\nFix module order in bundled release.\n\nInclude the browser field in the released package.json.\n\n### 4.1.0\n\nAdded url safe variant of base64 encoding. [357](https://github.com/brix/crypto-js/pull/357)\n\nAvoid webpack to add crypto-browser package. [364](https://github.com/brix/crypto-js/pull/364)\n\n### 4.0.0\n\nThis is an update including breaking changes for some environments.\n\nIn this version `Math.random()` has been replaced by the random methods of the native crypto module.\n\nFor this reason CryptoJS might not run in some JavaScript environments without native crypto module. Such as IE 10 or before or React Native.\n\n### 3.3.0\n\nRollback, `3.3.0` is the same as `3.1.9-1`.\n\nThe move of using native secure crypto module will be shifted to a new `4.x.x` version. As it is a breaking change the impact is too big for a minor release.\n\n### 3.2.1\n\nThe usage of the native crypto module has been fixed. The import and access of the native crypto module has been improved.\n\n### 3.2.0\n\nIn this version `Math.random()` has been replaced by the random methods of the native crypto module.\n\nFor this reason CryptoJS might does not run in some JavaScript environments without native crypto module. Such as IE 10 or before.\n\nIf it's absolute required to run CryptoJS in such an environment, stay with `3.1.x` version. Encrypting and decrypting stays compatible. But keep in mind `3.1.x` versions still use `Math.random()` which is cryptographically not secure, as it's not random enough. \n\nThis version came along with `CRITICAL` `BUG`. \n\nDO NOT USE THIS VERSION! Please, go for a newer version!\n\n### 3.1.x\n\nThe `3.1.x` are based on the original CryptoJS, wrapped in CommonJS modules.\n\n\n","maintainers":[{"name":"evanvosberg","email":"evanvosberg@urban.to"}],"time":{"modified":"2022-06-14T04:03:18.461Z","created":"2013-05-07T22:32:59.356Z","3.1.2":"2013-05-07T22:33:01.482Z","3.1.2-1":"2013-07-23T14:23:58.138Z","3.1.2-2":"2013-11-22T20:36:39.273Z","3.1.2-3":"2014-03-22T11:15:21.431Z","3.1.2-4":"2014-06-19T02:48:38.815Z","3.1.2-5":"2014-07-02T19:36:11.146Z","3.1.2-6":"2015-03-21T03:41:39.323Z","3.1.3":"2015-03-21T04:05:57.692Z","3.1.4":"2015-04-01T13:18:56.632Z","3.1.5":"2015-05-28T20:22:21.694Z","3.1.6":"2016-01-04T07:36:49.464Z","3.1.7":"2016-10-07T20:33:31.151Z","3.1.8":"2016-10-27T12:35:31.143Z","3.1.9":"2016-12-14T11:49:01.175Z","3.1.9-0":"2016-12-14T12:03:01.044Z","3.1.9-1":"2016-12-14T12:06:34.381Z","3.2.0":"2020-02-10T19:02:29.034Z","3.2.1":"2020-02-11T22:00:36.773Z","3.3.0":"2020-02-12T11:33:53.934Z","4.0.0":"2020-02-12T11:57:55.651Z","4.1.0":"2021-07-22T09:08:37.665Z","4.1.1":"2021-07-22T11:55:27.092Z"},"author":{"name":"Evan Vosberg","url":"http://github.com/evanvosberg"},"repository":{"type":"git","url":"git+ssh://git@github.com/brix/crypto-js.git"},"homepage":"http://github.com/brix/crypto-js","keywords":["security","crypto","Hash","MD5","SHA1","SHA-1","SHA256","SHA-256","RC4","Rabbit","AES","DES","PBKDF2","HMAC","OFB","CFB","CTR","CBC","Base64","Base64url"],"bugs":{"url":"https://github.com/brix/crypto-js/issues"},"readmeFilename":"README.md","users":{"trusktr":true,"pcac":true,"naohta":true,"robermac":true,"amovah":true,"itonyyo":true,"junjiansyu":true,"piecioshka":true,"aahz":true,"26medias":true,"ugarz":true,"enuobear":true,"alectic":true,"elpipso":true,"jimmyking":true,"nickeljew":true,"roman.kirian":true,"stany":true,"m80126colin":true,"makay":true,"dpjayasekara":true,"jonabasque":true,"silva23":true,"zguillez":true,"cami":true,"ubuntu.noads":true,"marcoleung":true,"mattkelley":true,"wenhsiaoyi":true,"koslun":true,"annesrinivas":true,"hybridpenguin":true,"serifx":true,"cascadejs":true,"ahme-t":true,"jaekyll":true,"karlpokus":true,"mrbgit":true,"grahamjpark":true,"freddieridell":true,"lapchan":true,"kaapex":true,"slavqa":true,"zwxajh":true,"rrpf":true,"dylanh724":true,"widemos":true,"zdying":true,"jeanremidelteil":true,"shekharreddy":true,"goatandsheep":true,"mecal":true,"shooteram":true,"samersm":true,"gerst20051":true,"cdata":true,"fchienvuhoang":true,"steve3d3d":true,"wangnan0610":true,"jmsherry":true,"nuer":true,"pawal":true,"hugojosefson":true,"ahvonenj":true,"sansgumen":true,"hiltond2":true,"zenanyoo":true,"leondacosta":true,"davequick":true,"jsmootiv":true,"guerrerocarlos":true,"miadzadfallah":true,"kaerimichi":true,"i3fox":true,"pr-anoop":true,"tenpenny":true,"8code":true,"cxueqin":true,"azevedo":true,"vchouhan":true,"shuoshubao":true,"paraself":true,"ilia.ivanov":true,"wujr5":true,"shadowlong":true,"josemarjobs":true,"allendale":true,"f124275809":true,"xinwangwang":true,"shentengtu":true,"hugovila":true,"jolg42":true,"karzanosman984":true,"heartnett":true,"kodekracker":true,"moorerc7":true,"cslasher":true,"chengfubei":true,"valentinog":true,"zuizuihao":true,"jshaw3":true,"nauhil":true,"cathay":true,"maciej.litwiniec":true,"bak258":true,"antixrist":true,"itcorp":true,"amin-mousavi":true,"tomgao365":true,"liupengbo":true,"waldrupm":true,"trixden":true,"duooduo":true,"gzg1500521074":true,"david2000":true,"serge-nikitin":true,"rocket0191":true,"redstrike":true,"leor":true,"zason":true,"aidenzou":true,"sidhanthsur":true,"dgolovin":true,"gurpreetbirdi":true,"three":true,"bluelover":true,"timeh":true,"yama-dev":true,"sternelee":true,"trackds":true,"budasnorbi":true,"lepetitcrack":true,"ethanliew":true,"zylove":true,"shide":true,"wangxb":true,"thelife":true,"paulodouglas":true,"hoanganh25991":true,"zuojiang":true,"2286252881qq.com":true,"codeinpixel":true,"hairmot":true,"syzer":true,"allen_l_liu":true,"france193":true,"danielgray.me":true,"maxblock":true,"yanghcc":true,"liu1125":true,"ljq2731":true},"license":"MIT"} \ No newline at end of file