From 0f6fd6e2c32cafd6b071d0b59aafaffb8e8440ed Mon Sep 17 00:00:00 2001 From: iamqizhao Date: Tue, 3 Feb 2015 17:26:15 -0800 Subject: [PATCH] Support import_prefix cmdline param --- rpc/compiler/go_generator.cc | 16 +++++++++++++--- rpc/compiler/go_generator.h | 6 +++++- rpc/compiler/go_generator.o | Bin 0 -> 229208 bytes rpc/compiler/go_plugin | Bin 0 -> 132164 bytes rpc/compiler/go_plugin.cc | 4 +++- rpc/compiler/go_plugin.o | Bin 0 -> 41872 bytes 6 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 rpc/compiler/go_generator.o create mode 100755 rpc/compiler/go_plugin create mode 100644 rpc/compiler/go_plugin.o diff --git a/rpc/compiler/go_generator.cc b/rpc/compiler/go_generator.cc index bbc5a562..91259a75 100644 --- a/rpc/compiler/go_generator.cc +++ b/rpc/compiler/go_generator.cc @@ -547,6 +547,7 @@ void PrintMessageImports( google::protobuf::io::Printer* printer, const google::protobuf::FileDescriptor* file, map* vars, + const string& import_prefix, set* imports, map* import_alias) { set descs; @@ -581,14 +582,15 @@ void PrintMessageImports( if (import_alias->find(import) != import_alias->end()) { import_path += (*import_alias)[import] + " "; } - import_path += "\"" + import + "\""; + import_path += "\"" + import_prefix + import + "\""; printer->Print(import_path.c_str()); printer->Print("\n"); } printer->Print("\n"); } -string GetServices(const google::protobuf::FileDescriptor* file) { +string GetServices(const google::protobuf::FileDescriptor* file, + vector >& options) { string output; google::protobuf::io::StringOutputStream output_stream(&output); google::protobuf::io::Printer printer(&output_stream, '$'); @@ -612,7 +614,15 @@ string GetServices(const google::protobuf::FileDescriptor* file) { "\tproto \"github.com/golang/protobuf/proto\"\n" ")\n\n"); - PrintMessageImports(&printer, file, &vars, &imports, &import_alias); + // TODO(zhaoq): Support other command line parameters supported by + // the protoc-gen-go plugin. + string import_prefix = ""; + for (auto& p : options) { + if (p.first == "import_prefix") { + import_prefix = p.second; + } + } + PrintMessageImports(&printer, file, &vars, import_prefix, &imports, &import_alias); // $Package$ is used to fully qualify method names. vars["Package"] = file->package(); diff --git a/rpc/compiler/go_generator.h b/rpc/compiler/go_generator.h index 5744345b..e421968e 100644 --- a/rpc/compiler/go_generator.h +++ b/rpc/compiler/go_generator.h @@ -35,6 +35,9 @@ #define NET_GRPC_COMPILER_GO_GENERATOR_H_ #include +#include + +using namespace std; namespace google { namespace protobuf { @@ -44,7 +47,8 @@ class FileDescriptor; namespace grpc_go_generator { -std::string GetServices(const google::protobuf::FileDescriptor* file); +string GetServices(const google::protobuf::FileDescriptor* file, + vector >& options); } // namespace grpc_go_generator diff --git a/rpc/compiler/go_generator.o b/rpc/compiler/go_generator.o new file mode 100644 index 0000000000000000000000000000000000000000..68718af6a37a9afec80f67a150a579004b9dd056 GIT binary patch literal 229208 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 literal 0 HcmV?d00001 diff --git a/rpc/compiler/go_plugin b/rpc/compiler/go_plugin new file mode 100755 index 0000000000000000000000000000000000000000..17e2a556252d2a0d8a1694ab3989078955fb59ff GIT binary patch literal 132164 zcmeFaeSB2K^*?^|1OXyMOBE4y#Ylr<2#6RFba_}s}@F0s8HC5E8sHsJ}0cxWn=A&qS?{jA6-npB-0o%{#`}?Qs z3*UFnnK|donKNhR&b_<2&67DfHYUbUpIGBkgGx<9+)NVxH;j@vtB%{qFnSqo<4j|a z(F3&-@K4oq%PWN)vYEm})TK`x{>9^8Ml6*G-2^5M;*tRk;-j<^l0NI>mX`wOd@YI! z4a3C*YDcyrCS&kPH-)>nOy*I$uxuBW?Gz?U`xUDGkvRG{OY&#Mx>2IC zo4}aF|F=-8H?lqrFz=vzspzX7&+ug{s|EXh(J)?F-~aIHcb)Z1emD`l3HZmp0RFNfCjRM!8573dVbo>!h#B9@Wt;_H z_cC0GF;h28c2Qjq{!PWdO#I8jKl)sSe{=ZCFy;cUk=NG(ufxCV@$Uxwn~#4zp1-lE zWP9%c1v}4t_DJck794o%UwvEu{>=po{S8xH;cqTzsQseviK8ETBmR?*|I~8x+(8v< zf4}m|eZ`|*`1`%f&;47)Z&KoqJbd(Dk98b+E9HY_Q*YWl!SnW^%ML%*anr3!kN#`O zA5y+~?bMth*_U7c+uRplp7_uw*QS0k**o}wm&W$3I{mZC-+glJ(55q=g&9#ldA$td zq$r$v2l|7ElW6s?=pCKj4rfNIf3<_0B@Xoa9OU1M!Hy>Xv=gG!3(?nT^{;T~@7oUc zyxudqoN@>Hs-)=k_dEC}4U;aKoe2*8y28QEn;rUfnnV4~4*opqAjjj--`$v`(d>T( z6E7P5*AD)9*}*?II>f_J2RZLL(0}V7=W&Pn9S-)_JNR>n!#MuLVI1c<=uL8hCrGkuLw4+**?8@n-IsDA5O zL7ylY^~eJhi^)R-U6PG|In@7}<@Yfv2HWeuBJG@XyPz*ZKj||P@k4qq&2e*i3jZH# zKgJ~){Y{tsm1Lt#%GnapuPL!Y&Ye=u4%y%;DaVKtep7OWA)lNG`B_pvy2+oQgFVl~ z|72&;gKn;;{M=LO%~&bue%Y^}8s7-NUCQ>H+NEDZ+0R|&UjsWy@0ZsK`BkjlFfNt# zAG})7&yjk6A?4hJRr}S-@X9u`s8s%wJ~srp}t?%k!5?@~mkS z3yX{VvvTGa`UNjK=i2F`7Zw*UEc9n6l_Lv^FUl${D1z)sBRq=@-?h_c1~Pmz=KBJr ze*e_0E4s88F=}!_p?{LUEVs0vBv4%HnK{ZgGjOqQYM#F+P!L!)6=l!Nz^FohS(&)b zVen-5ruqD(Ic0uN*37_&3zQCDQE{H1YmoA8?7NWd^vt+oX5fNFIVDqPmf=68r_3`G zY67E5atcbPUO_C6$CGtMuISKl)}J(zJuov+QaCjiHjc>6&nbl?atZ=vQ*%i}uE#TT z{?u8%S?Ru6BYaRW6aBbi=4g!4@z`z}q}yrwy==rt-%MX_aZy>Iv^+O3HH)-Ck#FV* zQbO8i21ceYC@x)+Q<~>1z?kJ=0DOU*g^}YXe4`Hv9Ax(u95iY{K~Ww#6ai%)clNC2 zOE@FlH`8C}&kc+y3rw9kQX697dQdzgFUAlr^ap$eMP+`(Za(75S6)EAB-ya-?69rh=aurqc-BAiHOO(E6W2V<$;-)2sw)~t}cbYXXGrw zm@j7Yx{1_@BRpBt(U+0w*ZNC~Cl;41(?xj@l;~nW^znE@Q%=rEtra}MB{InikXjL3lhV36(r74VULK`x5o zc~#p!xqtLj#)utgMFUZO%Ewju z5^TiLmAud(ks!?=mWr47=I7-3ataHJb9v{1h3LXu%3xw6g5rpgv_$!^>k0UZ7tn&f zNJ-=6QC}M)ttj;`$jb@j$W2XINv65dbro!i9T`51rzqDypY}KA9*Xxj=xCWAYx#_soG53O$!I}EBw*o-!s3Mmx!56<7MJoq0SP+? zLYXQ0Hae%I#E%tQZ6nHPZeEeAxfzCDM6)EP6uT_B`zgzrX}d;sUhe@H@|qz%L_-CE zVh>n`XpyewU5Qv+O8q5*kG7-B$`Kf)o<&s6*5QI8gvBE429a)~IzskF>=HbSq@lX) z(neczORSAd+edbGxGV_c9^P-qmC5p`bMN(pfhk&7pwgjhih@tA1j~j#PTzjc>JI0QEl8<^j}Yjs!TV>;yTX85hb#fxbz|X2=~Nv z|LVfOtRc&AC!c7{!F?=!h`$kMABtZ-umC3pJ&hYQ{&!k?!H?JY@y5frS627Oc^$t( zcX}8%^0|OvRNpofiO}KN9GkzhtI;ul<|kXD_cp19k+0Da5ay>uqhr|3 z&r*#phl+U>8ojSs+b~vY^nMz>PNS=sA@*90PS4iVXT3((&-*uO^lVibSg+CP%u{_D zG&()oQ=cY{{!>K+?$+ohYxHJ~eu_qK(dhIHQGHr9`l*Tt3~O|C7DeoKjeeR|zeA%B z(&$Ev6}P8r^hAw*hDJ};=x1v50UF(<(Onw-ERCM3(Fbevbd7$tM$gdbDH`3a(a+K7 zUX4CPqi1RKpK0{D8a-8`XKVDK8a-d5tFupHmuU3!wE9am`Y?@Nq0!Sc`bv#HT%*@% z^mL8BR-=#5=<7B5NR7TxqhFxW>oxi)jozTqFVyHw8eKdI7tGxn-K*7a*68#sLw#B_ z`bCNeY}M!&YxJ;2AEVLRHToqQy+fmq)#!%I=aeJ$^&(NDU#8Vh*641HK0u?7*XZ8L zLy6v+ghd~^3~zN)AR&AZ+1^{ZGjWHg)Oq22usYAl!~gr8>Bbe6^NHEk+KJCO*HW35 zl(uFr&!93bC2dVyzMRUmgtXOjc>1bQebNK-(Q|fKY;_|&zrj*;} z=JH)src~RO&gDC(Jc!CJF5g1s)2W=ytvM=kf$9Q;KX`&*d>xrqtM0$K{b!rj*!L!R2$QOsTM~ zgv*1eOewG}o67^KOsTIei_0fbnNnVxo6EhaOsTFdoy)OQrWDua;_|m2pnN`+lezpQ zl_}M=8C*U{X)EFKBUH|yayFMApfaVNwk$5+OXV?Cc60eI zDpRUyOXu<(R31xZ7ng6L@;E9dbGektmr~i_@{Lrc6w}uJ9gjbi-BfNxdBi`b2LF14 zH~5LSa({c)tf`@<^oQJrH?*zkL4wdDtKCNU7if2QLBBI68AiiJNJO)}=hJgSZ)Hbc zZ}8J4vDfctfILn>hp&H$Se>o?&a5C>1C><$Z5?r_?+tGEZaZ+9H>TP9*N$>D-a-|< z)o%t4U+)d>674^c?JLIp680M9C(cI8@U1Z9`dtaPf)w-B4$5cV%5ihwL508>rV0IL zztsADwt@Pc&DXd698LP2X|$CANd^*TvNyP*!&~F&@CHNSZxC9Q?J-qNfq{y2#3c1> zpu~7Efn~q4BU<}Eqq5%k`5)8x7PImxO8GJ&?>ID%6E)42mvz_Dg+7Nvo(^=!IOq>~ zj`GEYHM7YP;ov*uig^%FGyAA0EW;EeVj}#8{z-c#S9*@d*c$x|ji}y5sDFv)XupS= zs+!6-R(d*ONHB3eWKM_RRBNuBiLn?!c6o#4t=^j1_(v_+mPy}sb}9iGn8#v>E+SGR znNEV&{||zOwCN=d)=Hk%jGi}P*uvQf_)++m|-inf(au9a~I2TCp}`#UC! zH`qd#Ud$_Mgk^TXb=PxLP*+mX74XZOL!LwI-SIWE520SO?9vwA!eKzkA8QkHTBc5Dj(gts&GCDpu}Hjb@Rs zA{0(Tp7n;dV@Nw2DJ4>G#;_NtH!H%OfuX8u990eOVyQK=F)V)-(-bXIVama&-dfK; zsQu++Snce8P|e1zlsrJZkcLlI=!I+HN=fKojqJ+r#W33qzx~i!w(Z5Gu+tlSj`j`S z;F^4fTG};uYpMk?6#fmC7Ro5Ko(k!VAF%A9f~Xz}f5d_8X@!jyCYilfB{+59fa|G~ z?L#1ARNx6yNs3fbQ!Py5<_~|<+1WM&2?7<_DD?X+yD~xM+V=_0dZ}!^RJK(pyHQj2 zXDpr+c*0&yL>f=EZ7{Wd%Zu#j*U8sou^6H`TUI-*-Wz=18)U|PV4!mzkV4_J;qD4A_=%0?jtF;K`+S!T}hj|GSd^fFGH)y`ipjOMESZNSQq42#3 za~6o}JH<5whr+jr>k7Iq!u3I{PH=|k#q~rOEeI?nlL%N$ zYhrS2ayK3V%@(YmAI2z%Mdd5%t`)`sttz`?2UR8SW6ZDSx|~3_+MA7wY_>{k=CYbq z(`Dt({NoMx-{6Kovu+MGj|}(mtcq806?E&d&-Vs7+;hLO?EjT8ii7VU(Pg+#VJ%&P z>@!*~WVr7WO6=htV%fHEA3~a~Ap7)77Qq@%724UWi!`fZh%PO812;rb!hN1*$qd~R z74GA@TC$E(sb$G^nkDxL?QF^41)axt3DKn`Ubvd#>=8ZAjECJYkE8e!t}Ekjg+)JG zr?0i>eT3|W#x|yf!gqba${HHKlZ0i8(DxD25(?)l!by^FwIZZQ!ekKIhQ*?z(&|jM zI-1)eevM8au)(Z9UZ=0L=tDtodnm>-<_?S$GKSw& z>ixYb6+3__0^q#o6E{ zY9*sKhqcgNvQ;jVvuU=}dO{>WM<@-U+}zkIm1YX1v>8`P@5!@at2NP&0cs87kKA_i+Nm+w&FJ6---?odGX~Q-d93 z>cv=`Dm}aD7ObAi51{rXp55XW?9ZS!G^TJUhQc*uo|=sVo*-AUYWA0+&$Z}(f!QI? z9%a%V%cLpYnzRO~v(mH2G^r<>v`3nBaK0E__&pR}3Kc5$*li)QQH1Fp@|qP0)3mBQ zNb7{RSx!3F)j!t#J=9W%d&0j-DuKm1>M&NSp;hwDzx(~UZGiaBGIKK9}gtM zyI4}FSu$U@M6Gwzx?1v-%Vx<Z6F;{?tV) zZr5m4*&X{2fG@*ksnzU5zBF%cZisC52d&w7tJ$M;`6I%8>i`;lQ_T`;9vSZQS(Po^ zx8ayshI>_;Wq*S(ii0nSuI13usdtnh>nXA^yWxAG#2)TpmTe37DWus7_Z~t!YaAoA zv$(r8s|IV9w4V~yk`*F7bJH^25*6+@bhYF~S~Dz5mWSC7Y)QS)&f?-VOV-l0^hp6+ zP1}UGkx2p&}?za}+`C2tA6RmX%Q;*mi_txTD&RFx#?V30oj7OZP^Mh=yXl-c%9yC)gP+UH7}e9dSuEv0W@36n)exkL8Po4l4B)> zPry-CIiyEWRhhD0wwj%5Z}wzlvu{7On%!+R`-(2@Da(rknB6#lX~F?a10oa{3ZIBa zZ^EjNskn!l)z1Ey3^5O0{>&;kRp9`K4_;2@1&&wd_x4)`oWRXJEGmau)p&L{-uw*t zJ`^sYiZ#sir+CCDb9Kw#sfpN{Byn@$fNbus=73_Vs2s4{ z>S%~7c6GqhN`P`e8U)xJ@LSZdIp7ef5Dxf)TH76v-`x@1pYYID_?E+QJ2kJJO-n~> zqq-;f19#Q7XeIF~#F6mEC)7kZB95DjGqtNlzs2!V*y{HipocuoYVS*%ez_gLf^ETR zdDQKA5O>3so@R6J+XuBT@ia%b*+!UQ2Z|o@G1V34G6Y z0((u>b*O!bXRoPR=D7+>(*ZaoRW{RM_=S=g@?fq z@n8tHX#5wMA8E^@Y|B2=mTJ_x#IsM>@(|mSAyqGiYFpfX3gcAVagxR*(ML2h*s5TgHW_W{m)>1>y zTSDPkT*mXT6NtWDij}kLZABB!W8Xf|(OYo%B?9-7X$PjnB z2eBZba>TRNepR>A@N+L~vtoj4sJq_UHR%A{Xa?U6U)qPvsCHZQMz@@QTget-AxEMZ z+%!rtwQIP6pcL&RnL-52yzC<`k_xgqos0BbFceM^tZd1eh8K1qiX3YCk^|@@FyN!= z2QWmYe{i(J$2+0$B6d=>i`q%jtsG|6q_pjGF*eMG(%*4yoF`Q$vtHJ4;|HWuoXhlO zt0;oG4~>&#|BrCLM4eaZx~5wAAr!uu)luNDVWEn{veSeuS==oa%a_7gSAmIfx-M$V zH@PLAEplLO$z(%#<>6#oyM{fdT+Pa!d5=0`2I6)x7A5SOHIz;or_1itv$ru2(&pM) zt|eBse^TNgf7DK^*dki6-a$Otrf+1Fj%B67Gg-n*Jie1O?eP4CqUdI~hr;iW&x4d* zMDAnzfB8N;mMD!`($W<~Q@sp@Kj*QMqZbN)EQ)G)*U?r~L^Rq6Dof4*gM#P_dO#|4 zni@`H4I;CS>y3O$YdUXZ%rIUGHFB}xu%h_QvuGlqXM)g1Q%r1uFl|HOhamglJRyw7 z3$*j7;l)~|fsvAWSp@Te_tzvzJXST$`kU}gvh?YjRu$2k;$CD-3mGy5BE7for1eHy zepb@#2)?+IrdIH|3WhaH32LeZF%-_E@vT|IMVn9WUs!hoFPN=6Yk;~ zqM1Eq*_Tjqu3e)g%BzJou8QuZve0U!W0~-ks2>XV7F=OdDEu9B#akBA&o@}f;5E@U z9p*MJmWE9wZI)AOF!o3@{b3|mtB}lS=cg9kD1gi(o2-Gk%#%*$QT#OVe8y+Pqpusra~NgOftQugVPt@1jL2wE192Wrg?#irBV5972GK5S!+@lmdS-}8kA#bd3m~h zCoO1leZ%{IF5L8W;JB(CJLs^N-kGbJ*6!ukOnHqu5$fbSr0V_C&^8PgWN+s?Ic$o* z{G&Ix+xtzkw=x_f-YhhQ)_B_O6j_q*vj)o#Z^4cU^TN|nGwtyB;O^&h@M26O{SXY| zgB64aibwPvb~B`)nuOb)cF{|`<)=R1gfy}x3*s8{A>^eE_+R*oX6k#wwWwq_g!@0Kxz?3Aw7dTZQ?_Bu80{4VxX)WKYhYWB)oLcPju_6D21F-`PB z^tRS`Z_I90R}O9XdYXpx)@|i>oQUyGV>w9CUr6qcT}gCKEK+}T&McEN(|h}&M6plf z8~5OIVji!dZ8FXWXg*~IYx4nEE$6-*4!mrhY@q zoBIu2(drG>@)VbQ@7k<>4IHP4aP;^Ex)yJie)E<0rlw@?(4F33tGBYLpLbh0o*fe8 zy>+NM6-r&G9;zOOt8`o;H6~;2<_WEK?bR7zVu7XF*hvcA&yo4wniqMR*Ki){Yz|fr z;;PlB5g-%Zh6t|_L<~xe*wWXIjm2WZRcfA-?S*Up>J5HN%|?qGStaGvH;_V37l~2P z5 zO?d@`;UAsg@P?>CxOe>vh$nI==%H{QjtEcv_^p@=2s1upS}$AlMbELD8-u|B39B9? zObx!Q+Sa1@0ynFfR)IPXW(E()+mt83>T*=_fv0Leh|}0E>nLj=nNW+<9P424&txiD zSUc?@u$sIz<;_!(1MzNlHZnBX@;+4w!Y*msU@BKOB_8ZsMSAL}&dS#ynGP(+&l`We z7#8*ZdKeCB#rj3@*9uiAvy+~C6-~r>uOiKd6x$o}+xD0-K7=%gH{{j(=qhx~kaL-V zX)c#$Y=8C_5`|3-4+HMo>AMg8Uw9sSZ0hF~Ep)avJ#K@i8GU7N*#>iZFqJkXr1f{bey{XhB9g|H5 za`tdp2}x+sUAQdbV>~NdzM^~Gh;X@v2E!gMVn)&A69L145(>XTgM^OhVkW+bByLU~J3?QOD7T#|!ir=BtrNM=GDm zOy$fugU>bf_}WMgk?racHd=-QRm)*cr7jUk(HIKv>=J@>Dy$r{3EY00DRXwL%t|yf zdO94eR)l7fQesL0ndieEF@Q8@!-$4fFW;k11Cn0eclxOjXZ_hK-jNQI)r2Iug|Nlc zYU3=oILFTNx>PJN5Ik-->Bi0_7)zbAdy|$Se9u*tt)7a`%@Aq&J|y0+59~x zdaf1KJChyrfHUU_9$-BWj3SEkx0VO=2#0A^j=G#V;V!yLope$Bh&xGZ+xLQ~jBTIl zy{v`N;JI(Ee!nzpQaI9B4q$owWjm3O@8T*0(9u@%^v}77z2T02YnqU3>Dz5Wi*-*2 zC7h?cK?Zw9WfwnZ^Fe8=GxBCd3uF zZ3To$IVxBYgm_~FuWV3{+PD?1NL(!BA|BJz-ib)q!sFXg_}&&X@B~&?TtS`)dRoOA zEjHdN8`OY@rF{tM@?=Qix)eMJ<7rLOvX`&}#ICNdl6W3!9gL?oRUaJeQ}sa|sr`Y% zUp%9={492}?P9MEx2St&v9gd)B1if(vH-5?&J!oHm8K^eXm5a9$u6GwF2WPVwEuPR zL<0BG@6Dd?LbME&=pIyhtk6 zS2%eUp&74MC4GKb(aGmJ<{bM5-coVwxIUWqSyqj%qbp~aeLh7iiM>}A%oUMN??wfu z)#J-)8xaE=DXg%t$bD8l6`$a>kcJ*LL*ZI3V(2})GlPGV6JU-QcC31ovhffc_vQS= z3<1q^g3~qaq$n7~2^ZoJKRJP~O;cLOZ9~m8YR(hwA~Zkf14mML8Qo7ZY3^EgG*fT} zj5f^&FTlPr{1EQa}_(Nl}QJ?oOkd5mtCc=3+q9N*ePim%DU9Q->PpKsGmF8N4RVLluHm!$CX-B zjAK9VW-CJB)r7Jqk4f6|jCzk=$6hE}k8E48U!qyGN@BA`hfy3X=9cXPqQLg3d$!|< z-~>E56?Y08!F1CvZY(&0|H5}(5fQwLpJ3C;iHP7|(Ed7zp4uX~gY({TL~uEpcZpzr zd&M5X)$|b1jNlI`T*Y2xa3fuY!UwjHD{K>i-ZTl9QdJef_OXQ zxC6q$I{5)wF)Xpdv`{#Jmtv#r#3{XDsLSio0&fPG`F4a#OO(nusXQY(V@pYyyF72u zOFA4onH)RVIH)Wovf%&FYX?EB;QY$qG@!ZF7%hB-96h_^;AqH-%vvF`qH8)M7qju@>CM}o$e1j;YlmwQ{-NI z8+TPixol5|SaNL@C+l!JwkUM68JyO9a3&<66bk>D%ns6R1@!_WJiSR6iyhurj| zFsR7O3O9)32AD$+S;J_<1{+FX8;@(l0IWrtkcAx^t^t%s%2IUd#u&SyU4 zGi!HZRkq*T%{HZ4y%rut1d(M(LiRI$HS=kR_?+B4cmI(d8{Q+D$C?j2dThMNw3^3G zmlUzeM0)H3y5n&4*d+G0?lBK2%43ebjC%X~J?~p+V~pqsg*T{eg_?ru?(iQ}&wi(1 z##XYKQ^~750eBqm+uYf?EqtcP2;vH?}>dx6Q0T8pV%XONCAPv5c-v#epL^Pxa0x( zlxpMVCqq@;P6XQ7gu;`tcNHn60W)o*Oes&}wxY|UpQZr)q7h5Ho%L_`%2)5Pgi#i0 zm94AAe!3L`!)=f95+%OyD@X2mv~IgwEL|KT+c=iRf=pj05P9ufHlknEiMVlxV$`G~ z539qi95j3Y#J@~5PFWWs2A}M+u?<|LU!sA5>gQ%o*KLd?TlhXN6kaE#!Z+u#S(I*d z-`v;EzF7b=GH@vTJ>32dxdi#y?v^5QH6>_r%RSU7dMd`R|Cp}3Q?GLqciiT> zTd^5$n`t@(KSuLiwDJ2Fz8gqU5Np=7yKWnwN?5Kl2bP~G1f2%)|o-D(!zUmc07S(kqPR z7`FCxSE8Q>f2N6tXxw30t*_NuBah6rzaS%yuQ0~%!tJyjvR1wo7un!asTUJnr;J;kH58+SgbIQXP{3dqVzMU{HdWzL(olVTb~>)T7_zEQ2pkoG2T z=CDeLY&)DhU|%%OWf#y!;g~B%j<}I+fnM(ITmQ7J7}c0k+KTaOaD{8wcV4z6V#Roo zBUr5%KY5y3w2&j`@?|LOVsF^)WS2ouc;g>Y)mkxBo=;ZG2Fc*(R7mb2H=Zz3zmexd zZmitq^#JYKrCq0**AVj%Y*Z@=*80fPlPK@`s5@4*JJ!ZyHFww?kNZ@S*B~C)yIEb7 zTdQa*AdPU>6$sR=I#plAvdo1@E&_LB)Z}K9BRYdj!q%VeXAfQlr(rxO+ldp7Va!!I z9#O!vcLJy@J#SR3c*Ee+XC6Y@!5mCd4MUWv#h$hWDT9Abt`+gzEF<$D$Z_0$7Fw_& zeC8U&uCf;HvMLUNF65xIKt_AcGVRigx5aAEjtK8Kc#CL*-xVX1WtOKCSZkeB=2zk% z(m~`Mx=2bvVGfO2dh*E$OzD328}yI&z}6E_YiHOlqDGuTxg)cTcnyS8%?!xk>GBM% zN0e&Z${+OSTQR-lBYaK<_(q|K87uAZ(`+7;KR`m{>W{QTj{)TT{XG(sxIKhQ7Ic|7 zlBJ9pnVZ6hstFsplhJY${6Wc_rQjzf$m6Z%Gl#pLM7zqJZaz7Ua`!;Q&~VJr44`g|DpC6^uM1ON1KFmgVO4tI8T znGfUW6;X3OoQ~3un-3!>BD&6p64>VuywT^wPe_iO5Bs>YYHw68=g|@z#5jmN?)ebH z-2@K_A52A#`H!Cuv|qE&2N!JrG4tW!&$w5S%dj>dhVhC;gQ@02Ke6ID&4-b{=T83U z`EU!(qvM?qY8Byt#&;)p9sQ42wGXi-{%5P2wC5cNqRI9juCkB+$M&e4fgJE4+hne? zFQ_7$%qeOYtCPng>Bu8t^Q?x?&AXiUyregv#6vNGMi>yDm-?=2HVIMe8ezy(2hu!V@|Kr&v+W*{`-|%_J!iMX^2O z)%xJysfgIei4{6F4e!GS-=lg#inq$0>00hq5ve?mch0v619{=uZrNx%^GwDP(Jq&W z?X>h*2QD_J=*gaT!S)@OEd3wthWZ~QH}KILZ$hSXN^sf@{fZAoBC~%6zMS19`#+6a z6f67RLpLnl?1p{^wf5bR_`X<|-O!Q0Ii~99*}qb(%^U*B+_}i?zsyh*d!TD`7Oq_@QBEXDKPtb#TNq3|8J zHqXy3TQFIPi-%~DToLgI;!qf`1xc>h)ur2#NW|QGywx`MuH(r@hiN?biouOK_jb^^ zXY{#8zJL`;)|>aT_fC134s*E?9{UhlWm_HsOPg=#Z^T$R%=x=vsXZ^*PQz^pvx-l1 z^@K?jtu^UTJGvU$$syPB$@0DG-ELc6u|3D4-#bMM^H~ac#k84ZwMU*(>oFpt@P&t> zMVGDQvjiFmQPD zKX6hwnT8P3Ha>vw2EHrSp4~*)EX14$$*efy<@2UM@0VQoLRk2+-*5~xaXk^^wc^$Z z`xH7f!!PeZtU)r%Xg&mahG80o!WTd(DxvK(=;Xagoe+n%w0Ywxb2`_eVkjJgYcbt^ z!G`n1-6Q+3`qwOubgH&rpniA|@zrkLwt3-QpVQqcrc@|=l+LU#@wD@A?Bh@ABnurF zU;XP@sQ3*uiBLF>O>X&^ zHkjrX?>MZkde3I{=zTV;F9$d3B3a(WYFKQ}si^kf2rt`bal{5)&N6K!l(W*5Yi1n# z{=5#xm@_s~H-}jIhq52GFKTYk+d0T?(Cb8%ebYzLWbd)sS)Q@39Cp%^*V=ppkMJKR z(OgowqQfx1&_zo^hPmX`iY4zZXhsOMU=lX39E3;bJmGF7YUCTJ4YS23K`0o1_4qlC z=h5=L!v>z?cuh?_wXCP&NG|Sz(v4Ic!NpK!jlU@~_}NS8NEG3L^jbKM?5jTr{3J8@ zKbgTVGlQRdgCB?g2)hoRcJNe)LuI1GplW82hb;tmu+j7drtvq7_x(saYu>Thc@4+9 zX=jkRb~{V){f*g ze7_kFT_c8FG)LtXTV!vwqOWT^w&6312hD~gM;pGxBirt0SHTD5G~_m$4QnkMthmRO z*csxSfM)m5?MS*>c!OpyVdE$XYB8o}a1DYCW~n?cX0Oa3#1`+u;x~pd$dnL?_8giJ zKCgU6l6ZDpjyGw|K5DY0m7>xwEsfTS-om?0`pQIb8rD2dONbUmF#)X|P>c2qgs#;y zkR~!GW-prv38C;m-V&~~&UF`((Q^0t0&!_-*Jios=y%e}yp%+qcVUvg`ZHsY<)g}-~-vhye1+sS{p!Dc6~cMS`~r-vADwckaU%NKfh#~lji zV(7)n3f;S2N~Qd=r3o}Vr|%=bRrVE)fwo(vxQmdlGF_^fK*bkdxPSMzaOOY`!*R}M zLdP7^A#&IWGJEZZ8hiGdh)Oam^r9(6HdtT3L`F!5I?<)t*|;fGXI_~piQ0=!E{voZ zkH^)bPH&+_F!tfFkpq$*#Nj~AypHxzuAPD~mgfxJw_$!{xuVaqe?#tg8aO&=sN9Z~ zltb22*Ja|#`JH&wiSxQO52M8hfyP9duH6E~Dht?PG#;>!{??AJ+a!@7MqW*RhlcrNE zapybUu7l?)^)qCY;BUUE^VEp+j9!tOsaE}SZUnPEQ(GJnWufo~u!w)W0<)MN*l>~` z4Oc|>@E?_Ya-ms^e$`+%TmIr)_V0693~Rg$wQc}@+#rKWHPwQL-;8VIZz?_5gj=lM zeEZdQ2`!K6_jGW!4db*1Z@h>i6o+V}Dm!{C#&^0+Y0nZ<{_U+k=sH!LP8I2m1+&&F zDWZx+;3pFB{aM>n5_$*aLF$UtX0B|LMQv*5eyg#@F$=$nBY)ZJJ@HcuP@T(_={MQ< z$Jn-<#3u25*(2LY4!$I>I?8KdY%Nj6*N@+!ek+;iFBipo2+ttl96SRikTV-yvZLjw z!S}Xp2gr8%K7CEKa6Svaa1{jBh@Tq6xld&ivJ9%pKlUYm@(;$n+u1CZmpZw;@P0-9 zK+ehZ4bLDgKB&ZE&mgh2p7lautr%GDWB#8c2d)?Z<2dNo)0jL!{lse{kYb+xOs+BS zzab2j-WJY)o>2Hbp#&D;w|+Q2geSIfPtD)!c?3;@Ep2yl7}6B0pa!czRliG9!oi5W z3DKrdT#)Igw9u*~j;j_xrEDdB^2QInicn8YCP9son=R$KAV$vJYP!6AC(Q}-JAM%} zm3~Dh`W(yRdwx1;@9@@m#YrYcOWf3tC#IaH@7lI{M73|?RF1IrfyxGL$MzRkA7O{! zawgbHeUtk*oI|63!Y(oXc(fP2Z9DlWm)pwqEZNlI;!H+5#JMMDe@_?LH*#ySgFLkh zcO@u7Vzf+;-C-#Fo9Xz*EkslGrH<8W2DVoua;qE{>~mGU2+r%r;BdB9J;JS|xV79vRtB+9(fWxK zZ$>g#?m)Ee{a;!Q-zA%C6#V@f8C?@~1p=3T+R2OvTf6k=oEkT3$vJ`FCZhWn@3xM3 zlP0E#7$=YL00;1G>~XOQMs`0U5^Z-K7g}aSHnW-gAC7f2uSNKUW=iFXb|Y{KMzx*B zpSDl{zI8>$j;Jq#@BvDMblv?%^pz+(1dPvOv^M41{bbsL89=Y1;Ojyo%{=mWg&SCt|K%{4z@GkEJ*8jW)-v={P)0dwiE0eKWA$2$oSb)gKv+Y zm05dE#|TiruhT;#d*dI|IOw8vH-BGq`0WeZy3E&1S=&qH?Y)| zTU-?IFAbzk6gbRPP~Pn?bLL_SW zOG}GOhvE$de2yXCQDDkUf9c|aTz`sB891@9z+V)wOFyRkMaO6Uv9&EIFUobL=0cn_ zY-XUeJU5UctQzW4R{pQM(e?A*Mz7-XfNRV+SCM~7s^w_*a4$HUSTrJ2ixwB( zEuu2JAC>S9v!b#TuzDLS@K(xy=BIx<9AIZJ1in9K5nHG{GTpyK3=l>OJmDJA<6}99 zOkt07aY!%KbJHJihoTKp-j?y9TrSM`xv+7?F!E(@@>gJ4iQlE#L}6k^U@Ib=G&>1_95LQY zyUYuFzlXZmczrfX^I5zIucc}FSfx>mEXsMQi-szzk6&LmP9c?xqD?0?(wI&WwvaSs z%O&>d(QPy!8r48kGQ{UUn;*IZyUE5*@uZR`c|b(s|6j9ZDf$2S=1OnpVbMe6xQ0dM zwypy_v9P$z&oMgmxCF_Jh(sGPzP5SQ{e12wM4hMHkC4yZu~u(0UvOW?7v=q1`j2>83QbH4wWo2qKL?zTYC;dE+Z2Bl-~kUH28oup%;clzBp^+OerEh<#o} z45KwLG}+DkD{qWcfY>%{!s%*IMBdlCqvF@5SI#rLr4jqJXhM{qQ=Ru~qM2>KW;dUD zrdB`f(J1nTq-zp3Z)VI49BuEe@7De=;_(>0 z5CNTbJl11=@ya0w;usN*e*L&0N1WK=&DzHZKObkDQ_9x|M#VB^iXSN-+ZEnX==u3S znoq|Ymo$k@%Wy6M5hC+0&M9?8ujCSkAJPVD#<`a*;!e5- zcRdP$1C`%q;SPKZonT1`j9AW7F%m;jO$%xOCz0rNfK-f#H&aI=r-_hAxUK zTZfHYV{q@GrZK*fQvZU2rOJE`2K;Y+PFX>&JbN57#y8UkB}iy=fIw%E*oX#Pi*pJK z=#&%3v$p{%@Q<$PLuL9@P=PK8>4VdM13$!L;4jn|bd9HOMtsCIihR0Cyrx~}^FOLX zpX4EKMmC3*NbHY?xWtj_m@(Wt>}SS|;ggo4oWe0@M!eS6{_C~!ETW{Bbf|Tc z(7>0o7Xn?ta-bVn52T+NZv<8V+kxwWJ${S!zyZKk;JH8pKW;D<=mJg$x`DR>vw?NM z3g9Ea^}tQQCg3h$E3gGwznQ&A>;1?ZEee1MnyE!oUpR z5#U^4{G*+nOM%mYYk^My8-P23Ex?a}9YEtTv_IJ}Qh^!3alpAiKX55909*@f1U3Ns z;<0!Oa4xU|SPC3)iean>O>w)hBn}Oc~+kt(aMEv2;5|0L^18)Up0Vg~Ky}%oQYk@0)4ZzGl zKre7H&=_bK>wqp`BhU@p3(N-o0IUGI{s_B)V}VV;%Ym)Hxj+Noi(deA0arW?yMe2K z`M_s^D}kQ_Hv-S7@9f+S90m*n#{d%t8O9aBRG=T|1qOimz$V~I;HSWiz*C<=dtfRs z40Jz>e&bhguLY(91Hdd`3$O%u09Xg?0M-M0;9ZqwpcmKMi}{1Vs!9JmGXI@mDY1A2k<<-mMk$_wy2Fdw)PxB<8uc=}7w3%ned ze70dEH6hM{nZUVJ-iCI-BH%{gQs8djUBEDK9WXJ)F!ljcfd_zIU>e?&$_K97f%d>Z z0yhF1@CJA@@J(Pl@E|bx9K<~^9eC->=r8c8UFa{c5m*P@9YUM~KLNG?C+$XmfzyEl zh8RXRFauZ$oD19wTnhXMxE9zBYyif-g7&}(zz$#;aKO(D;~`)M@EPD-;7;ID;5)#z zz;A&Kz{FS49vA=`c#ZZ!pbNMQ=mxd`vw;VI6~GSQdf?c~73%h|8z>UDifxChI z-$uLu&j2Q;Ax{9)fir+vz&v0Ha51nB_yDjT_$II!cm&uEOnV3IhZ{x)FdaAnm<7xO zmH?Lk>wxq{hkD>nU^B1<*bc0C7j~y(p0}VKFaRt8J_W1;b^z;v>F=Q(a15{=I0u+K z0(yYyz;a*~unt%P+y|@!#=ejCz$bt$z!@JPPDUaQfG*&(Kre6?FdsN(AN&j~1U3L4 z1hxR_ujFNNfOCNzzzX0=A0fVg!+=e|2Y_{>uucHODEI#uaf0#~ zU@9;G^a39M<^vl)fnHz>umyP9-(l~C*e?NHzzm=pI02Xq%m!8f*8$f9cLJM$C-29+ z0L}*{j>aEH2Brdk4fF#41k4A%23!dY12+Q4e+oYXuLQOO3xLTN;csF9(}52Hvw&NH zCBS!pb-;FDJ<$Cb>;_H;b^wtcE)6CF#a;q`ZRVv3ue==CwjQG@DtWMi!2anUz&jOx7zOn|0?i*rOS`Kmn+a5rccZ*S(%&>dd3+;+(w+p3u2z9fWHy#{{oEP z+3q&yu%|LEcAL;cb%w=b@1ED$c`vSQbykWxM5cNH{Cf`do(IOi6Cv+uOWr#0CnFzK zV|?PaG9)ku5-P8sMq%vtQFLcarSy~f3*4$5B`J8MSR3xWv>@oEA&#F zB=s`ejx zbMOb_+Vsoymft3U-wr-*IV^s*#m@u(NH_AUWP2z18^He(?R)F;J(m2P;O_(fRGmM| z;_nCl9q_SbwCpRi`0-e%>93nav!B-NNr-Fe|2gF6D>Xk)t&Lk1Uzrehitsgwr*R3O z{@?HJ?3|D5_#CZ1<&(LV-sRAHI`XR1y1owlKHyIw!7A^?PGA8vE?dDL>A)wukHU^? z!KXLR<8RjNP<9Wt+nv-4^|20C>H4OuimQx|mDyVCcSfP!X4G?vms#M~JMhUrs}ryX z1Rq;M#JOfyneYv%r~a*joGqy5iTo7_}L167<{L7eINKAcGLbS z_@9FBwPb!FTfCI`C(J z@8qAY;Lifz$v^wRp9g+4|4vhy~vU3vnyB+wX zrwV$ugU|84R?`y^@2eo^O$Rv?k57TW$AM3J4nfZ@rDvV9p2Lvy4(dhAcciEP3CO45 z55=`PFY+vZi~|2t@W<+W_^cFFsQoPPWADX%lg_`+Y9EmN6Lr3JzpxtouORmks;1K08EH9yd}K5xl63OU@DcU>vX%hHkAJkZW)b3C7z@Og@zY6>;2R`|EC+6{`;GaV4*iOyQyf(%4 zp;e4*+XFf0uXeWM5cq?@ck**mGVVjcAFKCci4_mSz`qpybe(^b#m@wPdN=wD!5`ZV ze--%Wg6}jho&x_g@SXC|9`JwKjr>F4$Ah1#+aEiHJ3#(Rg5q@Wo%}Nl{0qS!rMEBE z`Van82mLgTt1#a(z~^z?|CQUEa}ndX8gf$CIQMfC_=CIQ?**TpQReA(#`?^D9tJ-f z{F8LPcHYt-j2YlN#q%ie-QDnKfu9Ec1YQ0L%TEFDv%r5<=f}Qm+P50~Z^3t(Z=1kB z0)Di-L~ZthZ`|+9KMZ~^@SXbC|0jm=4dgrVM}hwt_)h(s1%4vrJM}LB{f?_?!OyypKMMTTZuqmnf4>|30r1cGm9zfU z;3tFcIR4-#f$uavd%^z}`bX&f)9!Z;%l3}_$3pT0+SlssW5po{*)$6Lo1lM~&ezT} zXMw*Ie5d#ffPV-0PV3ET@TvSjJ(44FY{0@ajo-x>vHhFgq&#mSF&v@I`}R4FX1{q{;-uV<^5ai zGa{!beS07;2z^d*aR~gS;5(fYC!K&pKy^QKtChEgf#2ZJp8S#t{$B8x;XKZ4 z55L3}$C-vw`~*<%oORLtPjXg+KN9@yxYp&wHke}Azgtm{e%H^f*OTXtn0ez;}wLt>C-5;qL?gq;B*d z1%FmI`Ul~il}o#kKNkG-Zus-S9}K=5F=57=7SGGUp8&qoI<*e`nczF+>8;@Vy3xN6 z{Hwa*9|fQM@8sV>2shQAa1o!!Xa5B_HGo%|b*cbl5P2Uz2Ljg{9^z-V;f z(>PB8pX@uu^e+c{z$anHX65i2@ zMSG_>8V3Ghw0D}1nc!3ZhUoU^SoRl!-vfN7ec>wblfie|7d{34N#Hxh$sX_rf*;L3 z8mA-#^APaw#&vwQme*7 z!2bbqoZ?|C_^xi+?*o4z_)hJQfN&;VFff|Ij}{lCClmbljzdoX^#(oWyzZ|CzX$jL%kSEG+$Jy*!FQUcd%^z}b~y15 zgMX+Se*d$@JHphbXzSi6@IOKO44p5}vT41T1wQF_Y99dqhi=-h2LI%4{IdysdUv_E zu3tQs;B|Q~_y-{0$$y8zr~c#i!0O+0ZT`dXkHL5H-zf0^3jP?qJ#t71L~#GXC;7O| zw&Y(aQUJ<_I|7WPSl@^{&M}-yRT3B_dSyBG9KTrWobNFBN5OX*zy3G??7z{u{V4F=;5)US1wOqa?le9D@aeCRk*%hE+PV8` z@Gk}5DKBjTe;D{U#(Ws-dcS59G`R^27dtfPX6hS1#A-dsAjd7&$Hn= zV-)z8ga4S$7yG*3h*1;If#;##tH-EE_EeF)$D_v!>DvJQrQqA_jdI?w2leJV$f3AP zLfp>*KY;7_eOer;^91?M57<192K@~8tEfMc2(H z_y_|_zTAJ2ok7<{6wLk z1*qqgzXRZ3?VyL+uLl3BZupzPzoHxdUhpS_kL{)9NA10v!{ATqrhR`T%S#>jN)vgIr!7TcN*_?;FF)6+HVEl1HRLE?*sp`Zum#R zzqlLzp!1Ony5WxnpW-@Q_p|mqbRPKR$8kDezDY#myd3;_-N;`D{v7Z}>Fu@Wja$LL z5qzh7xexr3ZsZ@8?R)F;wSDBEG>kRcJMAOKf=~8cq_?M+AW)|M%>%y(d?)$K!Kd$( z_0`*J&&}6?PjQTCYsIm4F0>W=Ebya^|0FcoC*}L8{e-^B_r!Yo4!Aqc)7MoS@9CSm zD#6<~{mvfVz8RH0r}cFg_RSdIH+_8H)CqlE6Z#H7{Rw>&`F;A7;rMO`^u&@J?SnTo z`<|JAoN~>hF~$oqxB{i$4Zz!D5?03;k4w_|lR#RuC+7Wllg9H zI@0xGOu~+MqdBJkv+>4nVqZ5!|9b{)NQCJ75>12NV1pVhgYN7_27OHieJ%{@=T2yi zF=i&e5o7!!rcC&>D=FEV@T&yKzB9qNKjt^_T`FN0;XcNyo(W*o_e}V(j}h*9O+%9Lc4ETkeT>e;1YED{m9Qbn z*wiZlf8YAmUI}+38Ebl<3VKZ+YSo@3tSvncI4R-T6O8!@51wG$oN(6(#)^a^Nk%Xx z;nO6eEhb@al5t0D0>0<_o7jX+eTDm$$y}nXop=xIgivsw87&FF&}io*=X)e;$K@`EzW-Yq7?s6c7}OX9EMS zRk6kwG03Q(BoSqF!Z>4wt;Vlnjia&#)jDAqxYLK-nZM^cgOFH>FrMV zI>y)#GmksmyTmHRof>oE07#sgurOvm@Q#>-S<32jRfDq>8p^|qA~rzB(f%J1?`^@s-k(2x1Q-J(@>!?6Ccx37{NymI zd&&V)Fh4T^r>CrSip2auZoX3V_R~aJ*}YWO>m^a?|DjX#$1Ur3$};Yl_|q=SiwC+T z<^K(YrT-(fZ654q(k_YbNc>FV5s5v{b{q6LS>h0hqa{w3I7i|FiHjxPDe-=Zk4oGu zahJq*Bz`9Gh{PT#QoqC@5=Tp%EOCy+1rirayi?-+5+9YgS>i5@h^@mpDY?Xo-_0&XKr4;$n$+ zO1xjOd)IAW+E;4rRi*`h$sd|;qd zV7|KI-(xE=((t=+{FsDZpHDGV5C1^A6OBaQz4g^{)Z1@MaVasoL0wg-h1|BHK>_>j-k4YQHwt&6Vk|s?w)JfSK=A zUX^5HIxZ-;tM)4Y*U5zLm5H|p>QLWR`vJJ7&m8=ts;a$OPg>-Hrq&OtOP@&p-2fWp zZq;7p>&0?G+r_P{^-9%KcoX=v7O1jX58QHrte5S{e)65NUy_YmBwe*v>rcCEzf@LK z>!oV1`d<~%Uae>OGH}%TNA1Zak?rpWjeJ7((Whdtn*hjQuIr*C`k<}}gZQVnUq9Fl zieapm?OhQ8gRctlN8xIe^!80d+{|wp!eEpt2Z*Af+R38v050_QYQHk-AyGrE+p2zq zImUX~UisfG_d9Oce)q|$r9hXxXlz88^sDxXo84R^aWjKKzrm<~BK1=>z5U#6ZmvFe zn`l*tGjjc-#!u0jaG|%SpP8V~&UOal-Ux*eMdM9W>x+MKx*2MJ*ZjR`AE__0{1K}4 z)7q>3U(0c}KY+GmztZ0-_b;u-+5TT>OR=lktNl+{wojG=qvBiHui~g9LVrhRHYmtj zoebuD5hZK>C^@7?x8E>wWL2UXhD!y8q^fobd!U-$-X(v((-kY)D?4TLF7_m$8p%@q zSHJ(6F55S$h7w&7Ls42f(maR32X!eZ>|?sRuVv^$+j zQk|{sYC;IYO?7p3r$}{GQB~bph#|5sVT+(a7FnV&f=^|@L39+w;peDN8T~nraTo^? z`HhGpGEX0GobkQ?cfRl3d+xcXs&6mxXDR9Kf1Uf?bI(4NLu_+R+)Ka3v+dERY8>i4;cc?m7A%`fLdqG&lB#@~|A@->Vfjx!&- zO-TJd7u==gq50+9#F3D1uJ%Xy@+;i_Xx}dl<8Mu9c@xIpme6t}jK3XnVUr1|-{&f? zH0!_@VEw!BcP8{YH7}Y=hk#li;^Ko7zZGc|d`Y@|P9oZW^3xB(yu5l!chDHWEfW0r zQ^Rb58*t$qXr?D0?N$UxxR{QmW@3ion1>bGq&j@~ng&zjt zNc69<@Rfq^vGD5zzuCgSEBLJzei#Oj=hp8_OZR=Vg=;=M)WSE&ynk45JdXNo z6MU0}?-P8p;JTlW3tqACX9eG8(b4?2+iI`J^BSwY9?v}%{<4hQ%@(f5bDu>Y-EofR z5ir2!K%PHo$?bP3JSxX%kX-X}hH4*`&+WkJ^m$t@r3BY@Ew!T021Vx`_${mc*8h}% zp9nd&Yp`2EIt^U^SKOp$d3mETH-=YRh@XzdJ{9M6* zD)?&|#*Y+y9vDFXE|B_hDsZ~*DR*)Ev*pX2;3>K9Lc#Y5{@L@neV5>`3*L7-<78*i z$Ae)-^fzALt^U@1xLfc;Z)W@f^)2QW0b6Rnb2H<^g6|UiDrlSAcL~07Gvk{6NnjYFbF0wN{aGvcAFk#0 zTZGQ3aH^>NDbjy5Q=b9BuM|2OzgqAwZSPj?Xpbp<&cpx`ouA&(t^U^i*(i9ojHe#A z?ZEY1s|)0xZ%g}wH-+iE6Al2;9~fu+o6`P1!RKGYxE`PX5`6R3VLHd+rmp+GA0W}c zQ07-Z?`FZDT+ej$cz#Oogz%Mq-rotnbT7AWP4Fj;%^F1C=Buv@{%#o`ecyK-&Fz1( zgXxgHMW0K79|=063%k|d?^FMxqD~c=fjb}p!@z&)|Xz7pAg)B-lqh&<;;tM zKYIn!KSl0)!rSDzKFqithb_P{6p_#M(%v4Qe--@4)_S?*?M(j$k%yZ83xXdm>q7JM z{qJx;@97x8!xIY~5BDF#s6HPNymUF^T3-D?@a5++p5*2U+LKLm*2_4Y zFL*CHO!(H1aeLkWdjwAiofD<~4+ZZpaQp8FKK7SP=OP)O(**yH;OE}K?KS<5W4Qen zWWBGF_Ow@*`t$ToZm-wx++!I(dV+EO7iX>uzJEI-dQQI}_~zRg*YfH(3>4A-y~vH0 z1b?~(x8=`*cX9i}WZe3s{a(T6%Q!3*{1xCwKyLTTJVLFg&w}Hbjy*mTf?so8w`!-y z?OVW)2S3<;(+{Nm2eRCLg}Mso)Cs;%XSx$n<`>$wm}{dhAva02MR`WUyza!{Xl0jGIccqQYy zpQD1m{1L{p+&uC3g4_1PQSW9tFMHfx_p?Lr7q>F5pZ7k&pW6~{|BB!jSnHzqB=>Vw zfK&gExsB;)Iee|)Ln4>-eSa&sJ#KHrg|2ZssR4c#aJuiSWxlVLt2YRK=^n;4%`XXl z@;KvXCirs<1SZkhP-0y3;ReBfe<$O5z1$C6(-acw$3IJZ+b;URsZ9U*-AqScyGL-_ z&ioN@(j%WcmD}^bIM-(()7dZ2tNDCFaNDl9NATC~VhVbEo&m1=kT5h{7Xz4F~4 z2870Ey^Mn%pUVZ`bRpB%{PvLGH=iHI-;D)AbiN^Ubo;Lh{(OepA0hYs6>u7d`)*}? zSnyY+eL~iIm*6*@!Ss(4IjqO$_ktf@4AZ#)3_$(aD|}uOI^Pw1{Vr~=$Ex)`-2NpC zzZSS|BP7(1hZR0A@oSmKv*k-V%$@GLbA;*Zex9_5@zO0}{C2^YU&6RL3jwtLUGT>T z7@rS}J}17H>DcyOzu>dw0}3m_i=x;eCQM0 zmNPp9f8{c65AmWt4+vi0%Q%Kheg0GMM=U*iYzO!AnRj!0X`W~YPUHU>v9DnEsLw5e zKO+3B$Nw>*qp#OL={*)iC-Kp41?lHHxs&m0ZeaXDx!@7OkK4q!mOrlu{?khthniEL z9yD-`^98`^zQ>Jmd)?-4!T(G84|T6T&o!VkX9?4>?VnSDYnnnr{TOb5-!F7_Z|zp? z^tH#okLh202jiL#pAg)(Z%;Xk+wYfkx-XcH&Rmo1mF5bT88cGN?_ z$=-YBF{ZDd{TskZuRYSq_-_v4`)>XK)43|c_z?^zJ}&rwmKoRU=GM$9@BU%q$FZgS_xxL1JCis2VGmd4Y zKG$O5Q-6+@@yQB4XBp#5Mc*AG_^{wMpWiF^r#E%0mS7w8`Geqg+~E9_d%m_c!1n{E ze*Su-ThWEMR-YfM_VW@ydQZ3dTl3Y<0@@C$?w zVJ4~1@|8^IZsCWM=PD2kg7*zEuE*_d zFd*r5!C!|fr))#o1tfBFK(`vsq~hR1X8gN)CS=eh+r-Pe}G zPY9k7{?z>Q3&Cx>_t3RW=b%fNzSh4R1g{qv*JJfpf)C~x*Yo~6!FR~`gI(3<3zTT zzPhxx;aaPZ)GRS6>5s8*qBAlZAiueIF9sj(h*N;E&$O_r>y2pAVkHbnJNY zW57x8+w~G(mG*-ZOh@a-;q^?%&L2G?xE;5A`?>DtJsmhbm!03aMeto7-&gb1HwE99 zVf;w-R5-V}0sVy=nEuh1huhyQxE<&JqTqHs?FHcaUUEzIl5IE7X z?bSm+%=iPA{=HN1yVvvco+xy_EqLW(#?KOb&IL^8c!;~7=Nqa4+(D1*VzzIG!Cy;xV@g2 z3BijZKlS+EFSu>@{)6DJZDu-}-xdzhb4Ba576GUGZW8{~`tcUQZ9nmE1h@TyBXZ2Q zb5G~{?oIIL{lJNStHnQC1i$_cZvRec{};pD{n=-c+jWrEvz^WO;m>|K0cJ^qJmrhH2Da}02zf5IrY*L-!M;FpycKT$5d zLhwhnFs}LPDZz_-7(Ytd|C8W$KbIHyzP6wEsNiEGOh@DlNyhba?Y@ZV*m1DK zw=iz|an}g`>eWo=IO*s21utIDxSp@oMW$ohT@MQWLyOMe32w)q&m3bqwq3VM@Q=xJ z>F2#i@JBrEPnY!bWx;pJ{I&~zT8ZiJ7dgpS;r&vAckf~3P-*{?;C5cmE4%x-OYl1{ zWI79l&Zh;pg=SZ2y9%+BA z;LnR*)9db4!R+%05xa}`|Xb01=?T7t>@4S(pt4sPhdcfsOUz%!_$TBB{|fwYtgpn}tRVd3MWJKIZC37L`kU@% zI(i%`g8zOCGJU(=V6Wizd=2d8_TLiutow7X;C4OOR|L27 z8ZQWL*AaDnlRJweTyWbD z`kvr@L)`utbyXrU?{cR9$Gwbuf_DghkkHrTcAMbqWq!3D`8&Y}M84_vhg`w*_gv2O zp-=5!p7yMw6Gw%`lM_=(RG#^FS1 z|FYnRT)=b|3f{Jd>0Fg%{3*d}f>*9!{B*(pH*h`I0;wM>p}2{k?fm}V0w?`@(kiAy z@8+e?DK~Qa{kM0kzjc2u0Z#3ol=YZb-{Kr{Y5(*-Zm-AZ5y6u}XTG#Q=_YqS&jL>U z+?8WGCrkSsg4^=yXM)>tyyI_XIvsnM&Y?nQSnvmAz38#}s^GTW_%q=2yh|4|9eTGk zeRki%^k2NGTm7y3d57S3ebg@mx7Xd0y-eqV0j8t-(RE`QcZB+x5f8e2njF+vkIV+wq471-I)e3%4>IJMVvu;CB7+Ukkp`vQOT68`GID z>+}eDuCoQ-C;X=Q>O#T4zdJl`j{-kZt~G!BK-wQX$n7=#H+-D$J0|N+^XC9?7oC!{ zf5Eb&o)X;7BOC$4hWL5Mg?wK#6sXizwJE6 zSI8F^DjYJ-YQJ02nV0xx3%B2WFki6ncBW&;IX^D=`c2$k^Z7Rfx8qU275uJixxF64 zm7iq#b{_u)!R>s_ygRtPt!Fy~xBb)Ig5N#H_k~zfpBDwU*W;o)nZC`pYk<>wU*E%Y z9zTfbydv%Gb#&}qOvkQ2>=1mt@bi0_Okz}UyT0X9fARcn zyHTDuDebF*pK>*~?-BfGg7;m@xNd*!roy7F^UDVKA@}lq?K;5Sg6|Uh>Lj7{E8xc)boH-q zx{vADcKZo}+w}?819$cFera#}BhLtK*Sns2zne}Ea9Z!SJ$$j?ZxcC_mIru1@Xfor z6{7n#Z@-Ms5aUm&Zxe|N1plJ&+ZMqWf11}t%cr>gL4v1%Q-AC_nX2H+KFaNNyybrh zZtqX&{0!5v?eklJ>psgZ)sN3hds{v{tJ=>?e0mw*_tH1=RhK@%^lf|KDZ%Zy#~%dW zxrynV#$*yFJ;-$IxXSB-AC%?xTEF!E6}N96VO;b7^@7`VDea%-_J_(k<*QJKAh=!k z_%*?8J9*ASOy`RAOhN0-Qw6u<4?6_6`}s}5Z9nS`4>NtcZu2q+}(_KCipW7{CN4@{4pWz|3l=qrt_rWwp=~&^Gv@i{nYKx5d6iPx)u488wTOZvbxNWz;B)Gkj`)l?JZpSl!2VBpE+0PRmVLIQs ztXsjFAJz(fMu~AfU;72O{pcqIfAxHBugC4Qzh?S&ooZ2VJ6`v}N4dQn&;PODw*Fo8 znESc44G@35fHcLcZfP9j&W*XrXVBa3ng z&+F?Q@K&cYgPxZd&R6rJg<3sd_3C3@u2?SRYY7MBdBbIIv{)X>7QNwmxmxqG{g0iELM~7YUK~)|OpQ>(8@L^ZO<6~pnaf$JlM`vV(nvUY8`BJ`` z#Vr@*(D#j*`s(D8N+F-iZ!OgFUanlinO@_$x_s4^Ef&i;Y7RQ140aSoOXX@Fe{5Xa zF8XxIWCxMl+#n#Rh`Fd)sQs17bR|}=lo?cQCzfEr!pFQe3@c3uv~rj%85{*X;X3smb>p?ai;p_l>Skwrm-1 z-UDgTsA0caomBCzltB`E`{#&XTKn^mDARBfq9R zoDcueu=}wIG<=56cs-cpL0Y@iQ0OP=Rs6#LHtc(|YZ`S|n9Oyb<~{V6`|8%tEo%y; zm008X>UuuLZ+W@8x-eADR<}DD%(%A0b*)+=xk)Zo=}Wc6r`teKUz5FPp0uCh}foBGuXwMR61%gk+^SK3XWTgj@?rg<}i7+_r72Ta%E< z`H}2+vF<@GZt*JRVj)M*=Pe)TS(EZoYnPE2Qz}7zUv}Qwo;B%SfFW@_90qFjY!yOx z#p-oSdschvmM_nw2ED~m;nRkcW18uY|Ri&eT$=Wv#j+?Uihy zidL;bE2VrqC3QgQk_02^Xq}3iBxLcpto+YMMlZKXPg0}d-Tz0p?eij zqk&pwD>i$WJ1g1Tmh5O=9;a4Wof=q`sdaa+Se;(lyJ3UZwy0f3ywzKu&yfaIV~*+J zC$Hi8XnvBoanf&7fCbRYvz4ir^64BNKAGE`g*{Qt7V5QhjxNfjQbV}iP#Qea;thgC z|Ef%zj6s(kt9b0v?q%vry!0@Pi9&rlv(2BLg)j%1#U4+mnt)KJVohVNNK??>fD`n% zW0Hswdz0xjTGv~X4&%oIdoQk!!xlp$H9?s!FP#R17%Y;hADDse!eYV-sO3}rjx_`} zWwr`#P7f3sEn+M^gUn;_7an${@IN0E3!N<9A|J z^r_WLmxlA(JQ<-4wF;OJ7iN~B8U58tf1#U$QBl%GHZBBKHQCk+p|C<*qw-YAq&G<8 z?$J6>o$BkKf;d9wY+;6FfzIGL=_&dkpJ05F%%G*Nqz0~mgx6xlgRz?*Emyav`*SIh zmy7*xWC3DClAS)Nn-lA`3hQasp@D^PNv#75i7bdbUV2s@&k(?!5h+02!7_*E91qpv zWgzNv^<=G{Mz?Ktq4{fF0zMqg*P*p)`D)$U3>(-RFBL8xhwdyBhc%JhAVBM;;X}*F zK*Xo*>A;wWSbG{>2NSLFpre%9ajqit&t64wL<~46ywI>3{gp<)i@Fs79#yw3;Dy@i zAuKg8WTqB~JIqN(;A#n{5xJ-q4Gjob8_O{h_-!P=`{D?;z5$x}RA#A{?gNz+G5eBy zi4I2g3L{v?)wNhGWH|XgA#{APlCMJP^g$S?CBJwgTO5ZHOtshH%V5$Md;OV}w74?q zhST4trk{AWo-IIVGpA(gog?My)@*ecBSR~6fX1(*njb5}T&w0s;98e*Fe7kdzT1JE zLM)Lrn)TU+LT6l72&SFnw9m7O>6EI^EQevD2foWVxl#LDUz?T?v`i; zuREA64P$^1OUPn?h8lIJ#T&?Y4gtSYCNXR*C8Z%@l@%BmnIVcHe#J<|kUh!v zVDQOwY&gO_;I`-rajfo`Pd2IGsIlB|E=(5oJcYH6Y^9Pf4Z|+WjXB2Lq35t@LBUuR zTAj3wWh*i@V%f7&4-IT8)sDarS>VbH#Hh5wZGrffHB0&(%MSXT*16|phlyoI(zJ~A z+J&WQYTpgebfg_b@$+gk6$#nR1GF4TfJ|;mkh2a7_W{9}q@`&Y> z>{yepZ!Q~wC`ByraFcDN{8rD`L^1SFut$8auegp_0)2<@PzLzy zSg2vCLz=x!xep%fPAUXpqB!VC(j%tXp`A$;%ED4wTQ#7sza4(E~L zC?nFb7#uc%5o@T0SZ=_Y_kEcet>_MRrJ#pZkiuMJe5cu2BrFI?cew1;u+>n4&3>RG zN6C)Bnqvo28`KgBb9WSqZiv*a%ub8;J?qtIRH5<0c8CQP5x}JOv#CU~$Py<|8B;L| z8r{Q)i>?x-FcZe@61AL9jrFe*Pa$M!$A|)j+!|)O27FR$Xms}mZcXU+A?_T|o>h2$UwL7XH2;Va5Q(70#i7g;ES#NVJ&Z zhBCFs&!J2bH*r0FZ5yOwc>H=<&(H#H8vKXsjz<6Wja`B-7Qf(@h|6?%R$jqQ2KcF~ zWLut6+#VDPEN&fCO3t>df-B(5s+lgi#X~4iC_#;qUPi}N+6kGV8dw=2Ph_2->>wE^ z$uPNMTnGD`TE){g`HOvRV?=v!vqoX~X6_c^y4u}Jufu~37fRlEEswk!<+)-y&Dzq} z5mJg1=p>aAj2^Ov<*kV4AaO{E#R=Q`9!w_}uPCp8Gv>##n+!-SF63caEShho6CMfI zba1%F2sZ^OIF+c2)k(@6K=MEw86r)YM-)Q}1u9@%`YA2ni5qZ4ZercI8BZ(;c!HQ< zrbFk4+#JCaQl3+frnH5kDK*gTA+ADn9eH!INpiCEY&KgP;W9mcQ!y#x4RBx~cZMuv z5wB{As1zk~;#p706H1%pHg|U;^NH90dC5g>Y8loF+fvc+7uNesXQpdQemerwW0iVgH!im69lRvuEn8JhSB8dEU-X(;113((xQtJTrsue z+VXTFYBT5XWU^S^iZa5X^0*4?`q{K_0f&)MLI&N)C^Zuc#zJOgH!?`LAWJQT7h=NvSRUcw|vO~5jNqJm*UK`PO)4Hb@W z<|u0*SoCouAkdmBfilcN}F_YW{YE(emRTHqA`ZKmC~(7 zsfUiVp~{1-T+E%}t*Mw?%+x%Dz@(*b;u(axJ)1&0qzEYCW2hCsF4CANq)kzoy^TG3 zXjJ7A_b)H>L+c>!M)@X8oi~y7im3BP1;c1+43Xp=A|oSAA*n5+LPzIyZ3cpx@Es-i zYJv7=TE z4494yRreX@IWiuQDOQ5FA?ajGzp6l91Ld14^!MkmB47hKYvyWLL9|RG9;3n3Q_t%9 zwJ17{Nw-i%D3S}A)PU$j+1NxOmrt=zLEVIW4E1tRl51pLdDu8I0I>(ZusP5zajqoY zZbp;wx7)-c(U^mJs7n#E6bd^`ULs+HLZYiXsNp$a!p`9S=uR59`$s_s;;jY+-n4S2 z#7JP0U{V^c0J2f^qHjjtC9G9kPFI%eLQH>=vDuQUNMyj0kh$C2Ov!WXo{gPb>Dr zxEUi3$CD*nshrF!W?|!$M^aNOVnb+B5(6P-DwH5eso0|dkA-vt^~2VWkYL)hpG0iY z*2V)SW#hOdc<^We-c+Ihu7VboxmH!_*oQhA!FJw#V2d&Q=P0Kf@Se)vssQIY|5qCVph=3Uz)&3DqvZQh!kt`55&y+b#^lr zi2-ATeF29_H$9;X89`+dgPF*HsZoqpP`0+Hz(EFvYrd*0B}ZT%+5BY)A~3Kr&7+l- zka97zkcj1IlcL8X-h>e~fbwzbX4KA(+)0P($WJfUV{aM5o+i41<#WZ*HHPL66@UY$ zn)yP#kS+S9T1|#-u^Md*ppw>8u@&N&_<@1x=t8m!K_5hX%tS~7Z69YqB3=S}ODY-` zusNGK$S><%hLAyaG@mY%4I)9+nJuqprE&#@4lryF#P%C|G^Ug*qCI4=&Qs2@L&#DO zUZ#!>Vhwjknp-0=q#d5IKQc~KN<@16n<)C~PFPb$xC~S5sKSfKzfJbQATg_pAI!Ts z&2vkw#iRbpW9JXu+n-CFIWYOH*dV=dt24B!o zEn(>5K%Qb7F?5k(_8XxobOZWEr2=S6@!E_Beudjt9mB~azH_a%8N(CS_1BHN6=w#h z8pPRgL{QXY*E*|tiXPbkIsP&Tj7sGog}u?gZYO?p^IE>0JBW0A+s#pw`8v;r`ii#sqY(y+53BKd5S3 zI(UfbnV+Fb5uaEPQsEUI(?moe&49ZGFot~+3JW%K$>OeFEI6lLqZlYZmjApIFp1Gc zN0B&gqL!)%F82-Tj0jyMPUTeQR#+-$#6}p@4fqv}c=#4A60~%q9M1GQZRVC7q9eJ4 zJ&76Q7;W>=>54Q6-6}KEbji7*FzQfPJDEDmd~%Ln2RgAX*-f04VOKJ1=Ot41Cwmex zkyB-M+zgjMJRup!xj0E9AZSL6VaxjIxG|2H+$7-&m1$|ji1dho(w%%KU982Ha#j87 z8Q~QIZOSFhs9Sq-^bokH6pgOr$NAhOFf#$A9 z456^)8~As&KZX4sin)WuB1tYtxllBX0xH}TgB~2~z!IuKR1>5cRY_qXA)FEpnOp97 z=n>GJ7_nw66g+c+esN-acW9mEa>Xniink;zPoi)3JPB)IwfZhNWiMUn_r`{>Hn_1` zNR7d3z`}8h4!`Kf%C+ist*Yxo6CdIV*?6kT3I^9lVpWY|p`xg525&X05c~=@1c=oF zA$u`?1)ARFZSUfgGom==6=%vZmXRZ^#0`tN^I%w#E{1$|xH)mWBrpOdQn?Gm#eN4* zuoc4lLaKSBAswnJ!e@FPg+r(&y9}YaQk64Q54=Qe7LrtA$UH?XC_=R*Xebh**&8lN zlOP0EgCE+UAViEBBIF4;yEa$}_O5I5Wy+Rl;7*64n+C%*S@pG)W;Nu{+LSq3L8Uqh zOt7IYmjMuA2UmD9TBa@93rm5{LrD)nsH~&mi5`#wf0hSOGnJ(Q;#lJi#z1>u#xk0` zv;@-6WyIKmXSR}1RFMon#BtP9u-Pe`UJXf8#oUvgj-*Z~3Dt#=bf4@nF&3h9Ocv*L z$YKaanu9k+h!fMReV?Wrr*^Gj!MY-iU=wSfoGH}Fma|U;A*O1!H@}foSKE$DTcg`O z)QFnmVs;K4q@8-^iE**BEu_lHV2nCKk<3c6rBI@Sq*T;SUF2GrLLIZ@44P@{!I{z|%frv7#SAs5MP8_7i=}Zrnb9o)Y}TlaAnL3MRdG1m=f@E% zI-=*`Sv9`V#Usb__~+L#f1|M$g>mM*LxmozkM8K|DNpHO}W53BJbkmbd=Gkjs=9ypERZ8bSYa`W@~XvwXHygws36`8(M=@ z)ijldiR@*n)TS*jtkg-)hkR11@aTgZX;gTSDheJtT6V!3O!b+m zvAkD!vFxXU@pvmzbSbr<{!GrdM&JkKv<<{;CxyjO85%TCwxVzr=MrH{-*}1Z+3@@! zrj22>OvgHjvz!q@50^=Ga+#D$I*?r!G3kPQzV=-FFp4%K?P*lC8X~WJztiOobgZU* zVZGT}UWQS{!#DyGj98rKikk`RgaRt&M<&_a!E6-h1zP)*$(`IRqRfJ$&T>jdW_V49 zA_T~CV_YXS&N!|^#e2|FqsZ7k}YPQ9E5XLnIY6EH9;YxZG$xO z@P*Y5gn+^jO-Vqd!vabhwv&X+Sm5yN@(9V>rpdYrY>%!5T@ zTYIon4Wn#LQ<}x0A9ro~u{pApLV7{PDw%)42-*Oe%A$(X&!F1dC94)M%?=Ni&%tTI z)mjekj7YIf9911rm0%V%`Dc;MPMIPPl~F)Rz%*Q*Rh$pc)bkf3`)tPkQJxvv;;3{v zwxv@X0LQ1|U?8#Rhf*CVaa2dA(sAC1E73HX=Y0cG8&2sMV?Y1yw2H$buz`iFy#)$r zqVNj*;mVw2K;l{jU{o`J?G3K!)u-T7ZCR8j*$GxG$%cf%lGBaJso<(U|2%rj+1Y+e zVjRUec&Q^40($wA^bqCMh_Hr+hwS))Cj>b-c{JXYAvm#!2j(;5%zvAyAT zwI*h1gnhxAZud{~aOeuEttFGAPkExVzekqbYl+5iKwtTDeG}NF$1nWpMXh`dZ~L*z zzjUZqxkAmfhH;)vbZuTC|yU;umHy%ldHwoo0)Km{EZ&gBR4nIaBlv7}~Ku$x5Ll zr_zv)Qxj~R%qN=ry@(j~Q|XRX=Yo}QJHx7+VahSDV31-dLn?j`ZKg^}l;A)uj96zU zVu{jdOm&rr>j>5po!2Cw6lb;5n|#QEaVvD^VSZ7TfzuiEtBEC1)4M%ltb?F%W=TgigLfa1St*+*o!jG zHF1?zsMIo07@Se#C4kBZNEv#IS9Yi{k)(Hj)e3k+BaAlXfMMgxNEs!>p%ct}2AZuC zVM&&U_U=tnxQpwluJ+#s!H*lVifPrw+j2(U1w2f9&l!0ble>cKoLB+k_z5{VY#YZ#buaou}sivfwp1xIAqTznVM@Bp zMR|N!fAGxAlYb4F^5>_N90S^BZi>XNInIgdoe+Pz>dq-hA!t!QVhkbSA4bY=XsBU{ zfO!mWFffCs=B1lF@8T>w9~oDj85VoU=K&twV0oZA5h){WxG;3&$Lz`UL_k9c8c&C* z*$c{RW=3no;I< zdUcoNv<+&pq7LErR~Vvapy_#PW*mxay#o;|Q!n1MV`X0Wbnuy5TElweGPT7yDy?y3 z%_H_-aL#&r4_^M3h4#Uo?f!Z-*|H*EUt3lnZ6$29AtBkCuA!E1Bt2FsSCPMVyb;ME zqZ4$37`rPov@hYVHjHAkTjKiz*zs5^k61zGe!K;bwbfc>ZWuDeW$YVqok&anSaa}^ zzmR724Y5|NE3nK>H_Ue@+`>7|4DnlmA$zP-`a$tPOFP-LJQZo@N9Q6hPOzk1XkMT` zV+8Z@I%=+aUW-$OqLt5~)B{*C*s#+4TrO5f7*4ycN!58zy*9~ugtILs+$OrH(a!;aZ=#?{Hxg*Dq3yK=qby{}c$?!yKFf0rv^Z9e~b&yQU)6bOw`U+v;X;e>%lj zdT2!YhYAJbRyfiL0(eSadRQfnK|qVNrjcx+FYLt_YdB2qj%l0O&l!5qxbIT*r6ljO znH4D+s>;fx%r|mEG4Z*Hc4ekxH6_dAb#qIJH&m-(X~}Dt3VF-t7eQy0rCM2{U~~I5=RhbUfLjD1ZUT9if^$nl=E`6adp%l-=twbD5oa@MkDA1 zX+EQOW1s3AW-*=B4vi-a-D)ul~FFUi13_nV$QlBY$AteV&dx}Wb z4R23l4?><_CC(+E7$3`+fq2GQNmL0sgi26sHXDTCKwMQXIEOK-Oe~B@re?>Er%`P* zO?_=j`d0rX@|IQmr}fV%Tx*)xvtxRCgX5KA-cv@7dfT~SoJX<(`iL6Z4^zic??`IP zj=ibKq&ON78~elW<&L_OMsnTU(Gi?gukC$yIb8La_$DMD!M-u#M2Ir3;dc^^m34Fs zzLUH)E~1m7J+~4ANm$cr*P^jU(a;ePRW7HI+^8lR!$?u7r~~p2&NnGy0Ql60ShF(u zxe)w{a6PQeylqtWxV&x0!9~qumo=%iiNER8edkyMfFz>1CuM2^Db^jtsPaa)ZSyMF z+*B^1$^a6MMP?(4|TOZH^1Dcw`rc)bHqx3pa>{_l`XT}HldEc6fnem?_A*Q@w zh>d8L#W`UOim_e0CAb=!LersILt_&;7He3i^Dc60he5cB+M%q}zOmDiH4CUYW3_t! zsu8OV4dOK9dJx|YQHl``ja6R;!3Mfe6k;b^j}=QekewJYB<-<8NpfK5I~KFp+T@Yq zjZ#jI_!HXNcJK9pV6d5824JLYMlYhMnvFUL9efr5zc*?sCJQOsfIVF5INtQRQ)LnZ znNo*B{2e()V6kivh;eQyb7P3(L$t8~wqXj?Jl+9kbyT@*>fVGbYHVi?`g!{;vW_DmGa)4o3;-!c2o*Y;dSYC3zpGc$`^8f|= z=ro6rS=><@AEKh1F-JDNrceIF>ko4g!`TdK##vsmgOWC{>X++^uXw=jt7|H#YK1ay z=|S4pQ7yO;ub4WgaS~)u-D67o~bmX)C>{X&_%4 zAIoEUdV9ULMJ=jtuDp%K)>>eKZKHMw>A|U&dxYO{Pmu+Z{t?D$CP+iMdfpun-;h>u z3p#+5=O;7^(-4~R_Dj$7E)wY%PaU%{-EY(l26$S=HVPBB0zrpH?u;m>t@m;@}!|v zZ-&l9&NNcl*t7`y*0I&4saav}r3sj6dQq$y7Q_czig;BwFiv28G)r<)NYnS=Rv9Bd z%@j53RTxeBC{xQ9r3feWck(zEZ&Wl*f$0r%WYc>*nQ0HNOHZ3)XLU4=Nf2w3ug<4O zO=4NzhQlsLBe_h2IPxy=Sz)F&+!10ffl&BIAJT!@jbZ!;=Yr|2w93|Q!ZuWW6q9X2 zHoF*cS{gP9*}@GBl6*#58;lpYpM&co9ZTA?zZocRoVoRE1oQZCiOZ}FxwLmptu8h5;`!lyl} z#qUkaQk8Ly(+=y^@^8l|z~ZNk`X<>t>sZhSq=zU=?>uCT#i6Nu#ZfS22rhL5tKz7prfJQth>o;pCf+TAU~Xu1LPLm0 zh@oE^+R;;4le4%pAH9x-Tbv%%bkaW1EcABhYJMbb#>xW4vMuKCj wBKBjKK6!-_ws!6^Y5Unkw4d_2!P&4KLZDpjEtl%~ZFHQk#FVx58wz3me^9~>u>b%7 literal 0 HcmV?d00001 diff --git a/rpc/compiler/go_plugin.cc b/rpc/compiler/go_plugin.cc index 79423164..33f18c5e 100644 --- a/rpc/compiler/go_plugin.cc +++ b/rpc/compiler/go_plugin.cc @@ -73,10 +73,12 @@ class GoGrpcGenerator : public google::protobuf::compiler::CodeGenerator { return false; } + vector > options; + google::protobuf::compiler::ParseGeneratorParameter(parameter, &options); unique_ptr output( context->Open(file_name)); google::protobuf::io::CodedOutputStream coded_out(output.get()); - string code = grpc_go_generator::GetServices(file); + string code = grpc_go_generator::GetServices(file, options); coded_out.WriteRaw(code.data(), code.size()); return true; } diff --git a/rpc/compiler/go_plugin.o b/rpc/compiler/go_plugin.o new file mode 100644 index 0000000000000000000000000000000000000000..1462cd9a112d50c99faf7636001c1b66d1942e0e GIT binary patch literal 41872 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 literal 0 HcmV?d00001