From 479f50fb76ebb2454e6cecf43b1a78175aa9bd97 Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 2 Sep 2015 22:59:06 +0300 Subject: [PATCH] Update Factory method injections docs --- .../providers/factory_method_injections.png | Bin 35252 -> 32165 bytes docs/providers/factory.rst | 4 ++-- .../providers/factory_method_injections.py | 15 +++++++-------- 3 files changed, 9 insertions(+), 10 deletions(-) diff --git a/docs/images/providers/factory_method_injections.png b/docs/images/providers/factory_method_injections.png index a30cf299c07774a96598e630de0f490d86608812..0b0362b4ef783c7a50d74bb79e3893b379082765 100644 GIT binary patch literal 32165 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�KDy2+t2$+a|jUedNShPjW3Q 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 literal 35252 zcmd42WmKEr(*Ot*r?`~j4nYdExDzZm1a~i#;!xa*I|&3SF2P+&DO%i%m14!EXp!Q& z;rEyKJ!kjq?zdeIoN#Y)XXef`K9gt-H3eL33Tz}KBwR(1EEow174e61h4~DzG&H3py(hSQQD$mjwwaI1CBt2C)^qgM{>f z2MKA<90^Gz9SP}$OIC}f7y>GRhKjb_71)1Zn z@8VSJ#%c^yS$lhXi;9ZQ&d!9C0RhEE!%Kq(1_mYpvQhQnd!x2zGY)%udtgVglmW+` zFJdLG_1fbEb#?~|^aTzPwU zzj|;i5K++oYqP3%6os5F^mBjd$n4qG4V_QANlv3#?&mK*mNC@rkdRS;F@=juOOc*p zKU+;l>kVlsa2Go*DpHgwnK>L%D#E`^2UZSznmSGW{wHbhw^d{o(9jN#m`v5)_d|Y* zzE3Q_qBfh5RNS}a*P%J?6&)g>I^toP@8FHoTl>8eKhVTAkZ}poq;!I;X;y0mR_2Gc zItBc{N! zipuuLYmRPP;8Osxzs=@mN1A>Gx=Bqd=J+@+U*O9RT&G;0$yuGJWNn7y-LZ+naDuiz|0AFOZO zXx@i}^1w>4*!5@G@V($M;?N{ZSlZIcPic#}gIn9jNxhMWbu+|4o6B9B_kOFQL}RSM zgY~V8B5WwNM>l$plZiq56*fVCLl4bu=S_U)7j_>LWZkj9>3ez^VKCoR?$O>~?bkf( zCkfuEZ#}C|AsHVa#sc3#TfZ`Bq70Bo4=?A?_5HI`@s&t3@N5y;DuzxDvJOQBJe1BF ze`2GgeA=U_BQl6K$TCXGf5 zKw^31Lr%SCtGVIQcK;Cd8bb>&F~Ka`%0u+H!dc;6(VnMBw&p+?y+P7s=oaJFm!P}z zS;>cXW{;sSucTwlI?)96UTBhN1=>a&?O7MpNb)JzWt3^=Lc8^&6M)0J6BQi{TMC_z z=d)&yn-$C#qkI{+aMC``if{ZW(93< zl@N}90e0w-y-f07d%Y_O4pjHg(c6iq??Yju)2{TU`iSDK4S$a2O$_pphOMdiU>tox zQWN;Dwz~N&hjwlL=XM85Kb8ZPY0rQ}&$Ak86EoT}s`M5`RFTEDh-8_Tu)XXACkzS3 zEfiXg=m8saOt%f}D|l8Tv_78I+hS3$*beUh*T}Bm?vLKcpHI%Z&Nu*JK24(Nq)+M- znw)yUK$JImpOQ>2tkmwffHG0tp~0aq5+SUZDareVs=mS(&zqKM14Cpe0j#;pL1Br1 zP*`g}hyVJzT}Yhbi&^W_EN8wDcA3AtyW_da4Nd|Q z+AK_~T2(Dr2~DmQvj}2{lq&62|vac@8w#x}o#ZhUi|kp}DOdU0>|nrGdkg#mdJ}q8hv3 znUzUNB8}@O`ug}qZG`aA!z<$+dQr(pD~Ow0n`;vqW%ZBCW2ao8Hf=-Ex(M|=UTPey z-Ti#VbloOHUJbg0vRVkO$9R11xfgVidy9Ua@)!T_7{N7!9b`~i{pHJ4Wbg)e{DR(wcokKm{h1JDJWO>I<>(hkcsYct%~SSS`z)*NKM$81 zZd^L+XFPD_6T><*Ix~~t`}OzhfS5%0TKAOiS6`;MGO@=(u9|k~7v*Ir zU7r>lb^Wunbc|g{8>Z9h&%nXSleNix!B_$~Do682IypXR(=c;G2T{ZtfSUZz8a2lF zUuzBc)0*hJ$Q3qN==~E6>*@Ga4p62OCIT;$Q7D?3^a6zngdu}&{u|#F5!{fKw}@gpDu7O z>dW|qBu`LJI)<)~5#g&eCo(Jkf~Lza!v03jraOrR45Y3J%EdKEJ80m6)zdsK`#6wx-9k7#yz zUmwo!)BbfK7#+RMA=##px#}pdOuNoB-``YHMVGFW#>|_{{V%yeWIV-~Pr%=G;5q0g zE8)s1by1`kL{BNuF+cW8PtO{6-rot^sSrL9GZl+x%rCwR?13bOPJ+tP-;(DOQGSH= z8htVOHAWhJ`ZpIX4nZ7(B;QFLt{rNhEhph$<%6+l9w=Z4$^!h7_;^|qyFXqAzr3%8`oSRd<02T%w;FG+VS z+WbT#SAhhHvW32qCndDrjIx#&i+EuP6Zq`_CV&(~hp1dX{QYgldAslR`Pq|15TDcc z)jr$)JO(9QZ z@stg&D70j5de50Iv_c{_KXzUspeZ2GaqAPD&hR8ga0$4zDg{$tV!_f(*-^%~#;%@p z3K@PraQR8suJwnvwRILHWOQA#O63X5?`XlWA947pag%kYP0ty!fJz^!07@LMG70`N zY`qXKK#l#^bIn-2I-^HB3~wXF5(V)_&=n2)sOs5&|ilB;wi> zLFBY%HX6{+N4^|hJttrW{r3>obhBa#i?KXoxL7g+H+P*@h1dePTRk**S~NQfM%2v& zeKSNHQ`=xQrBirHHe0IU9v}@v;+6YH!MIyW)_}c8;6X8-cQJwj6o56CnJ{2?O3d5% z=w%|)5$Ueiz9rl&Pz-2NA=+pATA?m0A%g(=P6w&ca2UNT7M>RBlj8ARa6ce{-F$*w z_%)G~>6ryk0erhgD!of(SRBtuZ||u`K8RoePGrM$J2mCRUfN7d39^;qIIAE%-tiQm zM*N$NW6>ZLeF9+9P_5W}UC9QF(x1yGqF$Ql4yPxYh~!@yIke~+{b^a!l%tESfUWp0 zwlhn4IUn@TU1;d~JhVyRaYX(P53QOjU0y3eIeL<}yESe0|1x2xNPyHr`x*bjz@ct5 ztF}xt|A#y7`;pEZ8A;aiyZ%B?x+e)K_##AqONRD13@W~R+o;Z`*m<)%F7Y_}@3)@} zXNcruO@jIGm%qel=NyUsp8qvINRJE0pQxFJYksp1_xIOGJ}zV;fMOAWJFd4YY$Ute z5Jr#Dp<2c^7Rt8Lv4?Zl_j}wlZUP$|5)KoroTZcN^Q`!8ythT*a+Bx zy&Uau&~&HnhUpR8SZ(~Zvt;^014B02E6;d?IAa|Z-u>71xN~vigHsy6aYB;Qc zO-5f1);JRPR*4SUt>Vhti&OAq2fL=`1fd2^Xx+*i#1V(i*2H+=dKs5Isr4W<`q-~mxXE^I3R9+e7=*0n;-8RZ zDV2^=FO_oo(mU5Bh0q!(v@Il29Aj@Xg(X{d=^($hxMhtDN52wNUW$zsr;sqB;C2UB5ZPgqz_*AMx2N zxwLm&=1E@0z-Y9@7@pEABF=MqW(#t8tYaBJLBdnJaClHlh%IL6A94SH;o+7FO+1q}^oLHhbj zO@xdoLDoO^8v<=CBDW?E2FT8CjrKF zYY2Scfbs@Tq$scx&n!m z6r6Mq$WD~e+D<3JqH*4p!9JX{;Hl3eFPz*!J%faN#c>T_mfCZ!Ub+9(x~ljjt9g8Z z{gEwBsb41Rnr}0|HWR+;wL9idtNkXev@$18#xC5U+qIlCR`HUN^p{93$c|ko)@Dc; zds=$Q)0p#q#$LP*s4ETjXwUo#3X zeAT9BB;-|YL*;VX{0ptTU&ymC2>86IUFOZHF3DSGU*5;6(?GH@i>^9L2G<$ki#1+; zea;cCFFk3}?c>N}d(v{}jjCQ%nLU%oIwdIAnzCk+ub`XrJ}ov5V#Q~U@;9JJfszOnebxpC6pzcw^KIW*tj zKfnDmx_e;l=cEMv*74@?F|mWDrFvv0YbKw$o4y^VpaBJI5A+mDEOU|FwEEmVV6)Kbfdt-0il`Qh z>5T-2`TQF%@x((MMUScB{YCD;#VK>5cuAJ z6J|aFyZQYYinH3Lf24=OE|D@7j=rEnPBjrm)}ZZ)pZ(kAV%ZG=@nOUlp&;4;VTnx7 zG6WaGp{F1JCOa}FB+~U^aQVF{KA%(>JCFP163|`)smD4x{=2jEa)CCIl5$`c54`+U zIUr9s$7&8(u`Qm-e#D=->6cvt|2^PgKOq=Jj7DyYtO95SG~9YQYvHY1$;3 zU{7+E@|4y5uWY5UdE0k=XNkl9pVZ(fPeBND4IRB4*=8)uf772`Q6fZ=_GR( zD*ih=TV=HQSKSYJF6dqouJF(C9ngH(p^X=!VwkyHfgSTt&Lsi{BDIeEnI4&Og51#{ z62YX91Xw&*@L~35{q1=@?AJW{+-cp4D#B{=Nq`MEj#s;ZDTvxSXnpt^4qVk6t~Hs68F zdYG&?)i03@BzP?5?|&(@W5J_P3O@jcYyVirE0xiSGiV&NMu5tWKmJpO)YYsABY8iZ zkmE9Jqrf0%!1wl%>p7+j6O9)nX}^f2UTupJH&>7yK|Wa(F&LAWjJ%E~jM4w?x;KsY&}8Xa64S&27UjGh?#ZKbRNI*Fw`P4`G~a0!C3Zzs#?5MJAk zepSKKV`T!=RVdbbHA=p9HOKh%J_nxxt)`a*-0dMnhW((PjwSQTbaQR-&VI}Z2Q1rQ zrvtH^OFrA)>BxtG-4YN{N55n&HzXQ{`5cI`U)!`eXT(^O;(0k{n zdcj8pY@#AhEim=il1~VS9<;;*Frkc=l&UR1|qA zORq$|Jtv?jE)55-+8ve#1@?1x(7MXRrDN*cH#y5 zK59T-=TrYkTPjMcl81=p>Hw8iG6$ohNT*$u%YEwA-Q;+da8#djyx>UXp|3cIl^sR6 zcQqb1!r1dxK@TqQ@H+`@<%kaa7lKOVo&n`O3>t**^`ZJf(Dc9uP}@=a?>58tC6J^B zZ2`AX1~t{<&&SBj|Mt69&?GJ?q0yi%fVa4mVtCR4<e1ed9!LQjz_5>9_+Y=(8pwI%&U32s}S5Xk7tSVT0?7-$fuxo~7GG zw|ZpVP~YdXHn&N|4BazVh$T?@DU$xV4}WZHXz0nJej8KherFl2`gT;G}%@?zEO$v$nUFV^7*xI%dVb$?(HDZ~I=AuKNk- z`cFx&sKiN^kI9F( zbdBHw6h|Wg&_zS?_g!eGuWC;zDaVj2)nzoGX~PM+35j zcyzgs?#I9~Zz&pSMdByDk?hJ6Tjkq#VP)b81}xKtqth2b3Y}N;zsDtSIqkA8e7q7)M3 zqx!+m@kfN3A~DyP*Gufd(hP3&FvjxT2M4@88TvpuL!C%sQzS;D_lH8gWpv{;^fa>b z;qLnHmzC=&jL3I3P@s0%aRRxgAax>43|B=X>XsLzsT;G1I@BNu{=8Ja{H`;_@+-u$ zo|(9=3bwpE;eDrX6P8nla>3XPT~`h+J(nF8Pg+|`C2PH`^7U!Lr@(d0tF?D1C(xwX ztIBB4@;d&SAwjp*>P*NcX|_$dToD6fzu#4pqBmXtZm;eB98tSl8+$ex5ECyQW(*et7^v%FhdN0Pv)5ZWR)mR61fu07vFi-;Ew{!)GrT+)7a_ZwhKqCUn_w6biDe%U8GC*bg#0Fg zR#=byr<3NP@Iv^+;JMo2OWHOcXk|1FxLzYq3@w8Rn=*R2EaPNXu4SgHfl;bM^Lay` z3TEqodxiHHkHzH4)hrQ!x>4{dZ{8dqgDa729SwkdXp4eN{hV%VvdL}`_O9vc#4|>; z#QpKS5l#YtSzrRouzK3>zY~mki|5Woeoc#CD>DWn|R|fN&9XYYU;l8$Bhd$#K z5<-(g;nOd%B-{(jK#|?hTa#W9+(eIz!3e(_@4U;iKa}JAw%)p5rR-A0S~24|gM55(8PMqRm~KY0*pTJ2!7g zdHWp+J7u}>0A>N@~Yc4J|_GTD*l$2vhJJYmy!kr>U@5wj6 z&9PGGdOT8eBSuNtDSf-yTGRQk&D}XkkoT9a$bLSqG#wWpmhoB(>LMiwFkZEE zK0sf2-2S{|PM>`i5vi}4Jy0zE*G7pIH^%FhlQ;WV}V`@(No{EwaPJWeKaZi69Nfw_= z9eIayzi|D+%wz8b|Hj|gE`RYtn>j&pl4SXUmg~asj--pNMRSI544wCho9!MB9B91L z?E!EoVcW6CNKdtIJ7pJqs6(wvu0kt^^2&AEejnMySE}({3tw~n6evGG%emv)exp?q z(Hu}NjzvW0TvuGPM;&e8pu68MCKV}tIm6^N5BMGJrMV1gacOjY_Wt_VEyaj0xE21D zSPie1S8C`Fe-Q=?dTcnny0agY)O04Zt1GLXFaGGi60fwQP71FK4>?=EJNB$i_wsk5 zZ8^N9G(5Wab?A8oZqV63O=(>;yo7S^H{SkX6qkz}_Q+u0pH?lLKa}unG2!?5(bfIo zw$}=dYUO<~Lxh0!lN8{rDE&z`uu7K#z}~c2>BXb{t2v$j-B(abcmG&hro~M6Fm zC17EBrSy$-rc)N}dUgnZpKWYdzSMjj9n5XvWG!mpk8J^%g^(dak@VcMP?{+pj1@Qp zHACA&3#!X2HSf-yx9kdJ<~8LirQD9Wg8z*SBt~3X8oTR^0_`P0=OB>`g9IQ&bL&A5 zMGJ!6L7hPE=&vGiqB$|h$sumkW-G9n!5>xPEVpYBg z(!8qg>%p|VJV;10$5&Cmrf)^hV|vXE(0l{^RT7Xen3?GABaAyK0ieus z`ItWSe4yy3HOusaqVjTkCqz9Pkr|@J_{WFD!NfXeGE4MN*?A`-RN7gMVboPsgS<3l#F@TPAK1XBo&X!|QvJ`U zg(#(%w*t&RBB+hqW9(>cYxP|zab%!G+r6?!Y3l)g+Wsxg)TK>9m(nAFsCWGJaonSj ziB7Z`z15(ksb7Ds5LKV|Is!|WL}0hnaHrUPTq}yA!GRy@;Tgz6rFk_?YlQfs*V-z3 z>n?DTgFjidLW9XxDW%J5y_!EXpSz^LB_5AiY!4&{yM3oAj!qh`!EpPq8p?Af?o$&8 zeEAsTbAG@(Mt$dD&H*woLE9BIB!!oL-;x+1^Z6@9QK`}O+?0-aF_AeNk{7)q84rS*{*Wru5j{Sl>TeM4vk@3q4Ku4mx@ZZcFDYHFVtKm@)a;jLpm z0Sgv}dFMM(QqHB156W~XDX;y|VKwV!4~s=N-Gc3z0~$19G>dtv03(?*(BXPAe#0>JY0a*T5@eckH2H&glcn&C-ak+SS^aX>P(QoaG+uI$Q-7MHhEN zBKS75X6purvP@LlANb_>%YnI#QR7*X*2a*G{bNr$>?yCtdXPZ@1I|*BcZ?TNyUu_2 znLq}?Hzn3$x*g6N*0dz>ZIL$Ws10KHk=+=?Qbap z1^;sh(F@DS`~P6Mlj+=%(Rx5>4B^f&`PV1_9rMo0WaE4V*=sdj;`MBm+G$?{WB_%(uCAa*!hg8 zDuoEj^X+H-;ymh8N!ApAn9(Ee-p{Mb6V!b=CmJr0wzT$k+U$NUva{vDHeEHd%eg!R zW=_9_8`<#oFmf64uz+9M*>q5nF4vW_uStaHkp0vR%7&cIrrncNupofgn4Aj+n%~FU zNDjm(K2h*^I0MZJ|G|r(7 zq`Um>%zbO1tMpV+^xZqUJ7x_^gPeLjZbo)C9M~EFo@jqx)_K{39~2Y{sXw_4x>`Hp zx_zhn)P@)q!FEjU{G5;2|1xMw=)?R(6ZLtCe?I31V8iLh$;12(5r}@N3 z-7u2t$o7Vy(rboOU2<-Fph|fkR zBV%KZB812oPDRUgi>0gmc-*(w)VU>GVo#*m#Fc_3`%LYE;;t_^25} zujl9L^xmC~FFWvu-NG#)Lh>=zUra3@ecABES-CFffF^Y4yF)< zB+Hm|4V|}c*a&6`R!UN@Z{=|_5f3dR0N{WnvXHWlO%f8T*KX{Bta4HEOgaag&G%6e zV{;PV(Q5UmBrBEQNQE9539-Htq>cbB@ zS3>s3tVH0TnB2L!E6mIRZ?~wGZ$EDv;#KE<%>`l50@m*Pc^7$EH?Pi!Cfcs86|lvY z+xjinAEQD_Y`nJ3?eamw`{xg1rpFq19)aE@-Ofm=De?R293zgx}DP=ms zq#pvWM#~yL(a4?w+vvPE?6s_ESk`MM!34! zD?O~4OD`usO!hZAj%4oO(jOJ@2GK@oM+HbcAIE#CBJ61ZpcKn4R3EqVx7lcqhnaS7 z<|D*s6fyIIP$J3XL0XB0P`UvHG0fB5jOv^=J&^Fmc>KgkKRtfEf0%mHh861sBrfAP zpZ-1ow359InF8hAM=Atr{EukaTT7C2D{#9rTEB3S@JsFImaPco3s2or$qVUPw+ zn~jZQ8-!3j4Lg~Jz?iuPOKez>6c$eMQ(U}#+ttyr_nzYt7T`1!u_!@aH=qKRl_B+w zUj7&OKA#;1JFeIK_*wlu&n$914|^C>-mGk0=K2nF*n!XerNyhb?9v3|3QJc zAjQA9fKb6yx<0>ubm?E*M5r>NeR0GL!Xg7()6$y#zdt|-udMrrHiWv{4$*|>AgB}p zU7v2X+DLYQ5ayj49wmzmLG%F_h?^(^v#_Q09pahM$2hhFzJd zPoJ}FkF=5OvVR&_Fi@m+zGzat;XA%R#bX&5P}BX;i1lZBqGY*AF>`>jpbSyXgjeR_ zsY^MFsNT{!X45lNBTFzSuWsI-M=#t%JvD*m#uZ#P?{1m&y64G^_o?TWExOl!CDwZ) z0(>06ivQo4Up6+<9a9g`(9j8m_)wX)5WRQq3UeY0LLvKwJ@0`7gvGQbJ-ivr1S0Ot zJgE}pT%}mb3eyMQSr8C#0X0y%@W#&QiB;8E0SO0WhjPamOp4oF0@7jMYmfM}%QcF4 zSh5v`yfD~Eqm@Xb@%ILqvqXCkNC!*17>c-Uy&-nj=lc&iLL@>gxe;jJMuo8QC6NDa z3!UX8VFB*3Mp;|weAOx@RmixWtl4Le2(@89xg^zv`kX|dueF@BbO5Gde*6U4jwT5( zhT~(bCa!*A_SH~bRKwk6z0IX^ZekNR(=@6CN2zkdkadQILSu{ zf5_p1%d|QEPWzR(7S`(9r`hQiWc~Pl22fpJVZA*;Sfu@>V727h(8**zPzkfi<2!!s zXZ7tkc_nU(PC=&Iu9qdGs`;v=T&>F7M*NP89X?oKUlECxCJbo^CcVS&NXok|(EJJt z>i5ZW76!DXPXwa;u&OkIDHUM0F)cOs?WK@%W^#7J$X4Ed`gz1DY}t!CWH@tG7tO@EBi=xnm^ zzDTr7$|ocIVI-?jrgcPCd+WnhAmiDeui=n)?hy(PD^37SliS3;IWV&6p7pg|0~m2|`l{ zs}NQF4#dX{KOjc*W>!oto<+&V&b)`5ZjE@21o}fkB%F$2h?ggUXZT0n5i|Ueh^qVl z6AqkHxr*wiZ2V7sJzWq&xn&C`iQuCMl?Cw`{$n`^qve(VF%Arqc39xI2=!s2;QB}N zqht%2L7xl|3TD^%kNIODickH=Li`tq-3;?uWk3p|Td;?SGoCt0GYGxcL9~U+5q6>i z(W=lvw1f2!Xe$schZ+RI|K}UGJHo>R)*N>uX;be}-`Kxt+^q5DU+l`9etx*h#mI~Z zGJCE*UClowTkKk#{&Bd<|Bs0%5@2>vT#KSN%ww={P*%QADtV8wD5^P$ z^0`4gK-9a3@Kgq=uGy|D1{w92N|$GCE309xXNePrGdUoWz|=Fy2qWCWeSYN(?pfP@ z@X&;}kkdrnW&uZ%O01JJwhNxe#ZXJm*4C;}BI!$iq=Jz@ zPWySAjfg-JG4m-M6NTvJ_#j3o|JN&4bzEDCIycCtJ?ShVwng=fDsjrMWcN(2C97CDiez)lGs5rckMQw~7AHia z59gEeT!*!cH7oAch(w4+F-IfV^VP^=iLu}74=EB$eIg^}-mjDU*D*ZOJhu7nX^W?S z!#J`fjpk59*+|0hMLNEh}g6}l7 z)MJ!iRV&foVyd4=-qFrOyF{t7z%z>_9>eFxZ?_-N&;V*$r^tZ$5Gz91H(p|65SGl` zpl)8$H%2zi3sh#3(^QT!*3cZ0k6+6X-)fj#0HPvm4VEn&v!HQAUV!vJF)(LW_1;ag z0s0(A${^YIf(VT+#wpqVlYQCp>SFzH$LW)lROHLvZUL)}J36fhH*l+rKEnqHdynVq zXxhnGM^G!PH~8$JH(v#2lE=Yj3wg2V>Du@nF?JZP3UycNbx0efjTd=s#JBhA?c*UT z;9hkI18$!9YIiZ6Ac5(?bej%M{F9~b?@>zhi+grvNb3d@E(4lk3NtyWhpNHIYd$cx z=h%F6y$+^|$Jc^kglv8%{Cz@gcF@SLfbDtF7&!gOuQ{NUE3s6<`qmd@j7vLmru2lf`?b`DRxI9^_%A4s zhQmS|J(FLzPa3}JDEvM>Ov-*#R-V-A$row8jm-ys^?f9S1V1AQpPGH(k6O3}*ha4q zwq+_WFB5(k!#Pc_Qj3`hFBcHnzk#=Z^e2uV-M=1*9R}qJNmYr09 ziTdpnc}0EzStQ;cI5Hd}SQPuBaf4VZe9$jOG$FCP1~mmcK9^jD(6fin@XjEdk`sP+ zf%uNlAH8RX=3PAvLvhnq+y_p-j;`!P%!4`?+(jicU8rcQqtVTN-RF$F@p{E(n*{Y( z6OwpovuQWLT4mt=RaMW2N$-=oSg%#4dI(H!u=4|8-cnkIK{_F_PZvFt?nEDLG|Np} zNh6B+6m6P@%#|5Y?RSJKRb!SzDExTs3>@Roop5Ht#Kqn($a!n`P5mUgbhF{Aq6Y^a z4VVSpZ>;=r#)vgbb(Q+tz9;ZWd2ea+nTf`iWq0~;ksx-(o(2qSL+gtq@8*UtG8>;; z^;~=)ZB!v7XEsw9>9qkL!-tKBkjGV$6~W(`w4Sq50$yqqvIF=rif%;4q`8a(IS0)s z;l1xZM+Lw*bkF@=(+8#9dC+pgHD3%3Pv|Ofze55D^IJW)hsmn1Tl=`ksdHB-T05SH zrTo?A5^+-N*jsU?;ek8&pC=jje~$d$1B8-{e67>VliahTqAD z2Ilp4)juZ7TGd{8bj`lI*tVP-TTzY2ARgoY@M~xNlLHX+z98RC!3gqMg54!cy3~AD0=YHdXIdc?DGf*O6@$t@q zIQgf^HNJ=DSU9KAjAf@yG`e-W-z1VuJ)5-D7*X*&t5;*VnZ^m(^-2Q%M6-vHP3T0t z7(XHT&dePvzEoV~#3x!AM~DF^8HurE1sT--+93a$uZNK&|3W=ZkuiLx0A};<6`U%t z9*5dFkSb+2juAh{A!qmR#LqR4I?VaoYw;3lPAq_*i~@I3Avco(t{2k)j8;hfv^>oQ zG2BLFqpHw=AG|sE!)MG$uIA?fNI1|7*C>WKk`?JlAYm0Vao7EEhe9G-!+i7p(&*dQ z1SB;)ov&QYfnH)`)Eze_eA9s>Gjn9%!pwsqV@pS zx4DJ+U8%!h+8|wcn8ZTdoa9v84*eE^1U19kWoHNDo`D|KX8DFqa^8jy9xBWdbRQ)G z)3;wq-UOTm2HI|n(KF94QrmjIXT<*gT5yHmM)ay3@qF$7NN|Bpq=iS09i42O-^vVQ zG>XGm8#<$PqfV`TLD!hHnEa8H^vgZc%z3;rMG3n*>B_3^B`YjPzsC_AK{(5Oj!z~S zWu^G;qCHPQLu-Ow2j!9>>O2TwSPpw95CY>xv?bl)a}2d0j3b%+2|uAp1K{k1BY_;N z*3w>uWN5@Nt$)LTH(^ZMSzT;{)u9k!~cyXqe^j zY4kMygEF7-sj&v~-(hlO?Wp*C?lzpzSgs5|&FY3V3_8XJsKQU*Cqo(->mK;(d=GBGjJ0^U2> z+I-DjJ;CpDJ^*Od4uAs+v#gZ1n=4^R(9?G~nldGk$GhGeSJpU(q_*oq*5fSd6>`E7 z)m^jUaXrP;B{F!=UR@~!U1Ywv8NPmnuC@Xv3nrPp4cs2osGYgiix$GMyu};X@PL zzKk>U?1&|Cc*ST}Ql(5z!9xq5uvX{C^7}f_5Cx-skSdd3p&@WBH*3OxI4hMdqrZrH3h{WZh z?c;7+uz9{!tT@6qsbuIz4C=|2XII1Yoj>`L89=MH9UL~B9bR?oyi3pszu{T)1!%1F zf2$NuSR{!)|JkF-gr=*uG|^E_GdXBgUoP4myF&!yy-hqfd7enth}r<)vMw`v-7peh zBFD0-_rU>9B^2=u&Gzdm5+JK~(eLXOih(OsxVFyqn+?8aGy51}xdttZmmg^IOSI+B zP@Gqdi$+)&E=6Pm)TNXQvonnH+`I-e?L8yElVB(7l9OK1zKt;E^uupjJ`phTNQ2kz zaWK>zm|Mmxs$I5G%_Cf2SD~y4mRc!&yEup%;FzjkzzpB0~ zlLaXOn*Si7b&t-UFGbjZX_^n4<*;W=%X=6Kplr4FtlTweMPa$gFNmW0`v*Hx zQh$nAx3IZsrgmW4K>t|NI_R~IJjpTrKthqZQo37UxZbN~Lsm5e=C2yapLcm0s(w!G z&CRkCXbJbdcTgWW&UF*l&5OEVafcJUa!Ip>ljuAT;lb$U*7$bg z4V6$;!pdC5Yq6f~LdMmGp|lvnA#A+WbVOcGVB}i}kO@X5rje3DgJX;sY*tEtrePUy z7N`4*Q>tt81}ChBUE#Aw$leQ`#^Ds%VW24`obH*P&7XFX$H3N6lO(7cHdS6=W={(2 zi_a|Xjf&Q=XUpuybi0T)Wu{Z$|~n*IEC z6hNO=+$zR%hppu6!zuH?YT{}8^zW=gZL}&n2+9^OG*wAW4y9_h@BY+cgl zI%QP0wVZxCy{`U52GgUgM8?DmLeUQ4!4|Jwv8`v!bWd%2hnkG~7 zYn5KaVd8c7M&&hMlTf}MqhG>HvZ4M=p-k-(p*>6^;!2gfDJK%}Nqcf-qF>R}n2={m zCF`{T{|l1B)MZp9*R#}VacWCM&KBPWjM?)`O^|Us&W~A)3TUu2@KMsd00M2abJr}L zfAnmw*2+qID>_B99{NGI5;Fe`F34F3o~)*Kk$?tG2Zt`-nZ8}{Db6IEYM_m`Zfur z#uN)90AENst4CH9UwM%WcWK~J^$tyVJbAX>lJvQ%Di_{t?i*j}b4HfU zjb%1{)pr(al^;0mMceK_;%TUZ=$}x;hAx*z$Sb*B`cr0=f~ql{&8?!*WxxC2^Hdtj zeVNsba4ed@EYF#!+m{^F_}nxy)yi?i(^TQLQ+v-q2|yLFp8Ob3Qt8inXuyMtWh*X| zM(^B}z(GB2bh{hS2@w$9JN2PJT2mxB|Gkp;((08~5foo%f<`&I;jr*>YtW4!jpe!e zM6joxH`|xqb5@6e;XDE;>CG5t#hyI&3VZQ@<>`UdET=jM<-QPIaraxmGK z-H21N@B9j$*T+)Q>oIojQYH^c=u-bjb8i_HSF~*jClDkM+})+{5Zs+g;e~6Epuyb< z?wUdZfgpuj2(AebtZ;XC4G=6Ogg)fn+wb*z{l@G5`p@_4i~(m$?X%C?>#Q~BT;BNd zcRv#+;-04ujP)xnV83WBPIk?c>XD_^QhEQhpnIL&D?HM5v^h`|H;@<7NngDus8q=7 z2tTd#ywn>iT%l*JL`xWbPj8C0Q@o^mXIO**?M1M|$3B6-)mcYj@_FK)IFwsV1d8e( zG^L^|+Hbw7)3B|vOG)h_^KtB(%J@XZ!1YzMCX||OeKKa{Ti;e5@q&1}DFc(jbz)fd z&5bx*&IYylk%(B(%bu~~4eiVkfpRgFE!uFgh7d)$r{vIxI%KCLnQnSfTfc}VWeb+Y zcJY>pQeLyiq9@bXeV=yU)UD3iG9Mr5A>4pl`ZUV;D>2n+tc$m07{a4m-a~6;y~}?P zE{d>iaxDi%qItO+3qU=AA%|jDMzr%Bw8dm6=l7qfJr)MjB~~8c0TiA|_RiLg+}Li) zD8ebdhy_TJZbgzsGOKX89{X5hc#8rgocRNLL@11sTS+6!OGECrGr%Z`OH0-Arh&>< zx(Z(bKSmRy+2S zRIDh833mjW?eFhcrZgJHA@*5d=b#AADAg8lTyxP+kKL&=$S^QP{!pZX=!;pv# z_|>=tHoN5wo|g0mFGMZ>V;m;g)ZCjq0NN834^7JWDmQ6{p!)b zQ5>sYqK?Dx;cXDqA>yo@0 zb@aicKG7&34oYpColJiKq&Ck1)-~S$*DGl6`0KkO#&g9^N66rxS$!ImRw}TjuPlbA zroq*hk=y=N&rjcjY6<%KXaE6`jhh>~FN>XidNP_ol$H(%PhPZmI=B4CJGV*^dd!rKC$1!}AW$mAu zTXX+ZBd;P|ZPwd|rfM84EL>zp_`3h;1yk-wNg0mOKArZquol1-0TMs-!}HiO&JO9K zF09VV67heoGRRoyrdUi@C?i)idFcuzgMYpzksBTO;RyoZ>AKVS{-g9RKO~A3yi3kv1nF!z>BJdy{t@(58OXeNO*o0|}p{5m7?{slRxJ?w5J=?KmG!_2Ru3lX?hHqW`XTbG1En}dsy zQ(~Lr-{)h827Crx(W2wig^dXGvj{t(kTCsYaIf%Zni=1TMIfjprV{=wGmp0|d| zz6ZGGL$+_lOMd-ZlNtNgUlkD#Q+cx}U43!(T*Kl`tTL_wqBru52-6U)N`onZq#(B0 zAv}G|@M&XB)6NYNsM!aP0ZhgMY@jU{QK6;Vi$A0)*bZ%!Ira`IWUf~yx0}D>#{f2v znuH6}%_Iy}%Cxy*7m-(-63;lL!KH8lnc3hRO+5^eoYJ6AsZCC)H%C-HkE{5zKeZGI zGn(eTuo5nVo=0s&te>HZJO*-Gau~j%r*IH}6-L2Zn3;pDX(YQUust%>+0=Q9FpG*U2lOi+J<5=bVscop_W+$F{?iqSY>B5JZFF6%cXkNr&L~~X zq}cRR->Pp%Jbv|;N%+X`=C&0S_oHV5-$G!P^`WzLOxs7kA2PKxA=N2Dl53l0 z&0d--$1;>0DD70<6EGuVA#44#r#Bk)bW&Cd&z_n-mp!-F*2C>);C-3f4}RW^O|SOk z-PqCFsF8);o(noAHDbt&Ok}iv*lY=6HB&-pgYFC#=HKOM z7O61{nk~W#7JD_kiRU8{Lxp6dw9kf0BH|?9DHm={zSxOVIJqJRXOhq?neRC&prZil4zbYW) z?R53Y$M?d4$MtOdwL4nYe5uID(O!JyJ5f;EwAAyoIF#8Q-b* zzP@FIzcv*mP|;LDQ%^XtMC{Ff*t|r(ol`3QmFxj8r#^$wv8QJ`_0%Di$;5hy?Q!8;H7!!n6s>OzNlUxIAs9vrRx}ImvVb5MI_W&De zF7)MbA+V!Hv6+w8cN0d)RjxWQmdQQ+p>ZXQRvWx9BI(+KywFIS+z*rC)8itJEgJlO zeSAroJY8b`2&I>_M)A7cMgSHom{@$%V#^zrx)Zpe^VmEZ39C+_1ZG+NMrrKz^HENc zd96~pCS~GW_1As?KNyH9jU->5kPdUEh~zD$AVt^8dU4s58BH;5M)irTrtJHH|`u1EE%C^Il= z@O=|a**Aq?Az_lR_o+mWB-9schnrwcrJ zX3o}4hAn8^wRY+-=~aCw#M9VQ<>S-FPAf29it=T+N<0DSmcoyp$OkLEaw*h{sy1QG zm#6wv8TJIEv&1?f6>YX}Uz0D<4?2`(+KNf8==>q*Qb4%=vDvPMv>-q2&1Jw4+jyIc zQR_gYXjM~VF(1_PLJuMAvU7o-f&nTX(Su~ZprqCH zb`(Zzv(Pd*;N+g7D@Cx;^9<-cKu#*cS16&pTwb9?zVF5za?a@BlwUoqxC>?q9Greg z#pawvQ}dA7oLF;fM=ZZ?reu0zRtf;(j@98uDWTt9NNoMEFUIyfy&>ebXJNUV6a*5O z01B*K7~Yf$4alA?BIKesIb|U>C#42gW#7KF_;yW7pN4IH&3%_X(;QW9)azzf zdgsDDJw`+a!Z+;~sz_x)W!H0D+MXalwC%GSJ2}Mmp4AV?KU@3$0P?DUBt$_0gL4PS3<iI{kgJqqmH=kzm96)yaT9bcz_<; z|Nc6I1fmCGmUs`2+Cw^?03Nlu8427C5aPBTTBUIGll+GS?|)4A;`zYWfJgao%&P%i z0eCaH9M&5!USA*1L$`p-NB{4y1BXQyJ)1ZAfBDxy+uSdUbblR^DGZ&YNIGm=EKK;P%g{lr zKXcpw_GUS|%xf!&p$F%X5$pr%=0zRFV5otH&AEFlGz<}f&7Np+HePB{{dt6{tyABt z8#$HLo8(*hup~6cYq5Ro<<^c6>nGpuqdg!mV5Ci*PjQR0LY!XpCchIJFI-WUX2lP=-+x)@I`zR1j#FZsHvc z3sFEaH&#Jyq7s8~*U6B7hHMB-1FW$uGHBh)+Q-uM6g|c0!!V9^g`BRN85mc2;~B9G zB;2=6I+1`5!r0%n-npDXc33`%u4@m^$WTtj6@X|-C^9M6iQux!Z_8^KWMDsAb7cx| zp?uCoP4|QKv8D+058XEM0yW~@{Hh$goDZ)!+&>H_EVDZv*IwkQ&5(Mjg^0)ww6-2t zZ+sPbw9$$88t>K2tXo7JPL+cRBlMWJ6|}8{X1OLv7$zy12DkU070lW$0|epDquw|! zR`^zS!Ebu|o)k`tt>bYx>w5@X&tB%|*OJ1_f zwC*P{i_m8E{LCn=rwr==FAmoFk32Nhd3YpV6Q~V zxwt{P~QD#M;}!64@b0`mcj@1gEoch z9Ki$nX_iQVS}Xwh6&r*aq>!P*)El)NY=NFhYNEuNh%TMmD&8qSKu>~h{LxG`RR+=} zEMsre^BEi00lxQGFEbFTiC7>*szrP&dx8zJd2L_z+j?)LP1k#$4rQ27YBh4K0KV6W z%x-tV6vprWVLgI7IVE$A)wHMT+1gkytH%sH-=$!P_?RPIf7T+Ev+mHtx9=mbHz7__*vP{u>hiD5JP*vtlRb|*# zZCq!ooJb){O&;NzFcP#9Q8{M(3F5vYuJVwL+4y?X@f;0Wh7H~O5RcybvQ1s;3(Gk^ zh9TN~)_Ml_RiOn!w<+A~sF|r0l3U{g|VS*_7z9+Lq zMiG97%Fsb1R^0d8ZU&?$E{-3lQF|{jR2!=s%(6xm01CCP(b{K!l-Jd8Qwk@qPgvVZ zZ#DVoRY4>o)O=~54I>-~si|-=5HRnU3vjpRM+;Z%trA?{i6kV(p=NUKXh&J{(IjHD z8!1aLi`rlqA*7&XQhh{yWRiDhA@4biy&}u|oyI5~*r$*<7N*y>dY0$6UB79e!7_UO zo?J;oJTYmbK?y(AZ2F57q-wW4EOqnUaeN_RSE!}?G73ub8eI={s-?`S`Y{^TI|6a% zkd@IHRGjh8G9yVxflePhi#&Nqpe0j8e>{q7_gMQBFSVb%gtho+k%&f4GMXVrhbqf_ z+58Y`J*hQ_z1@$?#M9lmB0ww7tJ@mjVbw4x0IkB-VhW4b%pZ_%R<+V$1^c5SpR?o939!*<^Mb~mv?H62j_!2dHgJ{yQ?_7M0%CpP#vN3loTr9 zy`w+^!1pBPg&6LcpG3jb45P?J#KYA3DEe3oZK{O``sn-we0n{BJj3l1+gpo|)IY2Z z>9!|?$wOg;I3q<-xc(Ih4fCV4F-8;POts805ASJm1TkF+6D zd4o^NoEXzCjp>>1lk^=Q+Qb}mYBE!6o; zbTa0Q8j8P;G&8)TR3WGipdn}>3E8q79Vmt$8zjos=ZA+m%aZL0-m3kg$TPFFvO{yD zW8$ZR=40#S+s7S=P-SqC-b$7(u{`N)IJkO3;vaHBG#e)YwVDfylR*T#$<2X(On$%W z4Re6YO{coG1(2tZbCH!9&P(dDhrk*eXz!Vzrxsy{1gJfj3`Uoe8R_RUZj%vb?YD51-YJX#BDOm+JP zZaz@Nz{#hES3QbQIk!u?NXW+k>DiG&y;XN%$2sEhu=dzV2X%cGPGdZ{@;r?AhS^c> zaU|>bN1ortUEh+rKZqc9`IiQ}`N7K$^Bg)q; zuQx-gbGlJJYIHSh-aKmB^-clc?+pM|+|v=f=udb|7e2CfDBrR4 zYCKleqwKGvm<13BUDPS{Zt5I^Q7=q4H;P(-$2_u>bHD!mmBotZ9Q3;#CXPR3~ZCOiVQJt zedYGyqfsS^2bb314gAPB700NWY_xjITQ*;iPc-tk50U;uT-1pSRBUT_U;mESwRZSCc!Kr^>u74QfN1@{5VA9F7mMxBl93@oD_2<)dR;3y*)1Mo& zJ6Y>^@^s+ur9V*#I<9Rzx`}Fg2k3&tD?*x*l)fclM$gl??L1?%*rWMT?MUX&BaMgx z_(5l~hf%PXPV{b0vm;>|!wc;*Dm`9@ASiTaOK>g(OzN;0{BUwm@lhXGaM*5pK z;kLsc2AudXp;qY_7Xq%CUM$C*9LH^;ZN>YcF3}Ql5P-Myj1KY`f)}Hj#Yz~*p_oS% zNl3Itt5Hhm9S}IzPgELfC}noZ0FJe5`Z^A+_+WO`KJX6R?Ud;*Gzl6Gp_i$~vPd6w z<MrPBc_bAY=1)qGDm@#DB{*DZJ3RVbn2C`;=r@?aY=B2 z&Ddfx286-m8n3mJ4&*A}NEX)&;n@_PjZ&5v@2=l5I7PxX)ty6N(O}`Zh(W3trH>r4 z%)Y9Bx`p5+kI?*d39s>tV~&mCn0+qnud->5Ow(0T8-)!JKJM3L_xe>@r%aa&JuX$% zDc|shROmD&lH#D@wh%=Tqikrs=#3=WCl&b@gz0Iax?g~#o%C5%u#gN+os#!fH(xud ziUvn8(ru_BpitVTmAV`P1?A_%dH;)xW4 zvhXMJnrsuJTpWJ->1A4#D_;}6Y)OzBmb)Y5>B8Ih5#~OqEpj=k8P7f}ElML~NVZtU znS@xrn8tOE23@?^zF6r2T?$~lmc#}fh%8_g6JBk72px6ZBLwo`PDfOa`rHdfKDw@6 z6LO8z#Qg~dM??GjF?~N;XMsXW=EQd~guoIwNblV02lLkVE;nMSK1<%p4zj`FQYd~Q zKVH``j3%zvV ztSLiBOkR9-o*=FQM3so&`*K!mR0Yiv<=&skA=$3)qcl5YB94rV4{l(3bbexNMuGFu z0zTNfp5bg&F_<8TuD^dCU3X^|q2A5!w|!1NTie65mIIjqSRfBE^?9GUN$ue&}|(4XtcnUv*gN8w!Sq2+sOgUHBRMD|&85 zYiz|BHr$%eb%Siv@Sy~~QbJ(swa74}sGlU7y)P^~4=g*A*krLz9m*fciHDv0TCrMh z`_MT~XKs4HrvZpf>*lZC!uI7|(0%lmOcYSMR4unSoV7p(EALe3$R_sDa0cJ??X#nt z^zr6qaC+&Urz`h9t^5lJN~y%$%g|a*MH(ojm58c3FQS!r;yX-3_XP$h9SF9L!H9ns zDR~aX)kzORHo`lerOw)y5ojK2EorxTJ2?v*2*Y3Bj9#g-4Q!GP4CurhR*PL<+Teif zSg3dLRQtY(cOnh&_BBULo-+lWs9O~+IO2egUQ!7W<+z3K(^-H{HZ>Qti7xcwT>Von zV6V^YuOkmh;BgL+g5(r_`#Y3fo1u%(@A__HPmThR>yQOm3C(LDs{~snL~(D~pIukV zuFJa*&LZfxA64c1)#;8f88HpC=jvySg9n}MSC)vmrVD1gUb<4j;uh#JkXU;4%ByR<`4y2?UnyU@IJi)4 zxXQ?=XjIuC2MBv6 zUZf?v;?-YDiYQtXrDuzc-w$Npxw}8Pjdk@AT#%%5J1z6RBx{N}DeAmS+LwRfCh`#V z-RETJ(I-N^uXTe_153>|{QWrI=&i2?>L{v|KG|JDO+mIsYx!-32f*((h+5%=w$(td zxS$12F1VMc4zKQp0yb&h!?+)xvH;=fzpgUlVltFtCZ5;tQp zfGQ>rA?}brj*)-W6#rA8dWDq^jCbr3x56(4*}9}s;CuN%jtU$G3bAC*dXbJZ9^Z^V z)EQ8z-z~PO!RX%M{jzPl(0TQjIJKDQ`RO%0?5*c90jEw)?l18vY!dmN4rN>8|GdM^WGZvj&d8&|+Po(W?z4+1dlRZ4FL8{K#0c8oC?75cc zZ;LjlfFV#cYZ$1sTfaQ=%xF5J_c{Trmp|Pr;g4vyn-`DA z_zvxj$l_rF_}eZvh;Ff?bA^ry4}xf`+4A^BZb`)w|HI$HKZrr`S((eWhd4aKUt%%U za_CTU#q*W@Cd3zTuD&Q7?ia1EOUBX46KeUaao1k|pa|Gtf;xVezW!lV9uet&dOGDG zzM9N*?yuI{|3kL5{KVVPuS`@2;YN}>b4>Br*0a^<;^gPq(;UZ4FRyIJ#*tKao^lz) z4_T}n>gDZ{A^`)C)`5vx-pcVxBe_>LOF-gopMbkRMa0rIeGiO@K#XdO=g<{K-w}##F?a>|{=Dia5Meg4Pf{6YLKQ2;%!vNs zep~|+dF3UEKz`-ZQqXe*N2`j*;ImU5S1{amB_k{=s#5iFw>vn9EIqV->(|M+~P-?l5419kS`!r zRQLmIOo|m!>|4A8kkfCUXRHJS(leWW39`$-n>1y1r#WndP1$NbZabgz4)ZMja_#y3 zgj%~);LB$(HU8y2KiuVmOP1T7<}RIgrZR$ze^`H&sd(a07%Ni%giepk329kXmZ7jxQShYs`XKh&YhjUYAHJ9j_Cd0Czb+cg z!Cqvq%4 zAJ=m!9Jy1~+1f?9zR14SYiyor)V zVWj)(TQmj~hj*xW6{_=Dh;Zn2Ne!lzsD#IGrsCrBNxllvD8dIu?W+zfMrgmr-oo97 z9ot~Bm||3{Zwud~409LT93;=Y9UAqWMEQIo{^+UmeO@&E4p-Uap6mQh!5OJ^jm0nK zx9aHSeQJdZ!s0b%9c7sQJ+`M#y&W*_?D8(c+KCE&3ZD=ssSjvK+w2D_0QHCXkGI{P zV3zLQ`IF@jl;(&?2t1{xQp|H3O-MLbvS)z5d8Mw|Ee=n5K5kvS_d&%{xDM~}H92Uw zLGwb#((YR2@^fmJS0Fw9{>#mVoTjS7eM`g^K=PtbNcZ_(A-7-GmMH<$cA1f-#u-ge zzkA#snee8P-FPiwF?SxeqK7apxSEn2GWddKGK8od8y$AM)?nC97)tfy^7UGDIJ^aP z&kDa&j2atc1}%m!SY(?`6&5-+UN4ZkBu$XEZ|DGAY!!xTmSn}U=jUB=jrq@c3w}Y| zWcJPYpXD^}_`10e1Lrh5=lAp$pZvb6O2t*kN^1Hh4Frb#-_2B^-AoUf%jNPImT zI^KH}S^i1!vWv1Df2`v#g>aGxN?SwCx3n><#_G`a5b;o36`_7;cDL)4zFa4FSQ3sZ zh#Nn#k$kSWaUGSG`!?LvfQFM4w0akzqs`sw5j~?OjY-%n5#p21p!)H)ofJgBN>t}O zb6610ux?4-F*_0bVh%Vu*E&wp$47`%VAf!~CU zHuXNp_C5RBSFIYfqqi6ZI<@s;zVqH)vi)yD^XtdVlh2K4H2jc@&^^Uvs_I!xXt!t5 zsYC$N!=D@pwsm)Gu6_ZX>HuJ`nF(~KL;5-U$K-*BMQ)3R>i2OK-Y0wx_I%CuKO)K} zDDyBb%{Ch%2?Hn=IODuf-mENL>13*ZL($RvOE#$qOdKdXp)kqm@=FlEce>?rtIP)S z>NC1IblW;8dYa#V2~ca1G8AE=DVEolw9d4$wbc6#->9M#Rn515!BoQ$`GYqjXGuX7 zSa4G#O^1Cl*Hj8h7&DAiqx>xu9=omnQt#?%wOG0LtY=0c;GhGVd$?1ow$5jU2_>BPgVD z@$hWfgo?85QOP5sa77FkXTM^ZF%dx@q+hspOPBoAC5Yk&HpYJ0TeMM1{=(ifyglt5 zuGv*)f0r8~-w3pktG#Jx0AOBJ03CLrDT4wfsxM0I&7IGW$v|^HhhCJm$@#KSB*mhg zz!^vNw)&#UbwjUs7H!m%L&CJmh^l8Yxj%=Z)=pF6q6EkU1>M1PG+BgC3iFiswE@bf zxci2X1mWRY$M{<20wLu=^xJXEjkW9nqn*2gu12jknO@y}R@@JsW|E0@blruYM@gwOl;jdvjB z)6<3hMYNdk>DauDXQMMd91$D!^Un>Yj9W#}t1#$GLw|0b5iIX00B_VVZDP`S#Xph# z#*^~jr%~+gx&6qZWn#!RZ5P`c23?X25Y2fP2?u-r;YLZ=!pvTo43(lDbDs~t?}4Z7 z_tx^Th)AH0M{gb3E{?N938~_uziQ1U;O{szeDGd+&>&#*34;|ake({I!3VPIy1};R zI!1(^x$_j$V_@4QXxJ~$?vtej_tH1;y^_y3?kJdz)EUAHh)rNQI~iCO^;NLJ6tna~w>w%$A-)SGO} zYo0NOFR;f^#`cER##|2MFzD=(gVYjz*=gfpMHn?f)q;9D9dW$sc5Fz2y4;>-3pS); zf8pu2u5&hF6TIk15mMu7c&xHZ2q!dqwH!K&wB{l(ns+!&kL%=q zI3LjusK}2m*d&8XyY2n--Cvz?r+F^joJfQ3S4|Md*KPn~w^Y{ne*x+y7 z#|H}oV66Xk@Pz&&-~m*Ir!9}qJb2s&U`mx(b?A7GH_`Ze1D6RM8E1QnmjxdgZ)YT%cDAxUX;7Ay(RT z&@!hN_H?SFxZv-MO=t^+xy_jwwwo(uBi;M7LhAVrJ)VH$4-eJgQt%WU?08oMNE%-kY4l+)eREv0k;Q~9wsOQ6!U@a1=gH&xc&6J* ze!`s6{<@B-Wi|g57g!ksz>#b)xDlk06!D~Cez8g1Ic6TQBpX@1vVr%Wajx|#$ha!B z->rMBNqSJmva%ITd)#q98z1Xn2vwnflWLJAo&^x*jUUg~m?&S{>G&1Lw1CBS1&0XY zSpb%imFGYfLUr4xX6QVs`~57+pSUMM1ZgeJKHSgS3O+?j1oKuCvlBP9syN7-lvJ9e zmO>z3*LgNB7E(w&Cq3z-+dgRyoHXBaPnDdq+7bu$c>Y(Lkj?HF-{vZ(HL@miqJ@sh zZ^hNvVh<+x#13U9u&|26n%T3>!KKMm=H;cjXSLh;OFUOzJ;+UfRz}w6%q@@aILAoM>E1s_u>lOg=GnvyW9pn zxSYzPO-3w!RGpy@v2sn(yA_O=Niq~9>BeVLfT%osY`RLLOMEKcX-qsKfwpWx_+N9# zGh!qFn|jkAGGe)9x@5K~w2>5}e#BU@Qo4NFJ6C@6W-7~Gd~9jdxE!l7UI43OMZGkw zy)8|_bo#eyr5VHad!9*VU-!L|ouM0bNaeJao2c3mIsdV6Ua@sNOwk~Q{e=X*##=s5 zX^8~}V?Sez&|oyMoglejBRMD@?cn+WL)rg@?gx^M>(0pZx}opd*3S`z7_PTgIAq*o zC&CgRnya`7qRD*^GMvr1LyLm zOd-u$?Vg>b#avYows|l5YW;TJsFk{AnLRU6{zkMiaxtPq*vet*a5%x( zma5wHYMlEKiu_-bNDsgj0s6#$HfI2a`ZnBR{P01pD4J0n{y-7=?~UNUEYd$i5dZg9 z^j{sI%SiyxNdrvI)`H51U`BlsP-NtPJJEl&_;*J&%G)_!q+pQ zw_I}7Ex>5xjDPx0y6oW)$Rq=C+Qf_b1nD$+ijP$5-wV~<(iFuPi-iO6^Phv4Oe>D zIm2;;Sw$V zrS|r2P^w>2Pr%kddcpVI?(M~%*z(o%e5r>6T#R2E08J_854g3eSX2EIG{p}oM^10; z%VIc~8lLyH8#&5(FpwGtvH)_)_|{^T>MwF>`QIjfa%pN_0jQUywlbOo`fuGYGIE{pQNitV7^_YALN-dvBmzOeDH^;1H}tZFB0Iy zpteY^mLDr+$0r*WBfmqDy%&W23ZpG4byRciWZ9E&8Qx>?h*0Tgh4W=IbSb2N z{L>)FY|l_wRVB7|+&VVqysy5D_~Qe-rE(^=s(seX@Fia8$z?MynRia1vE~RK!*(eR zNGxi>Ui|U1tgUGPeK$=6{WQe`Km9Pmuqf_D4)PjJCUeBxfE<%D%~OUOC%W{5K4Zh=UFP2VI}cI#W5U76~Mr zbXTNGb3Xup^~jiyBeU((@s1-Ql-#jNOtLO7KrKBps)&W3;t5-2g0445!|u(Jc|PJ2 zo#7ShgLCl0F0T{I`!j%&BK7uhzH!x_)!xm!$Qrt~zNr&r0xPSE%PKGXZZz-J5y;$;yQvorSq9GNuQW1{uGSd?9uBZt<~h%{Bz zZ|>1a-T7{%G~nPG1Hzp`-=Aksto?0O|pvaR27X{wIq{0@es# zQBeJ{;x3+1nC+ExT_bA0*D(G;y`)^y$S#5V#nq()(38U!3e*?VE^`0X2xyHqucJ4cbjPlG4X^>@;IEWzebKY5ys-}C`LeH)rv=s zueYOrpAqCS7)yJXEx;Pzke$JttrJV%vA@Sx)+odd$|%Rd%Hh8iHk7 z))|JLEiW!A=6aEVVq-b9gxjA2^(v#mwG4&Q-_OTi{aGZx9NB#e&J$vdU-WzAYxpyQ zBg`)$sVms#(Ac|-fHS9bLSnaMe4Y0;@-q}yxSLiX;e^j<&b0e4UUWD7r%Kj03i!6f7!WuKJxjmZyk?VL`7uuT`s zyjZz7(W*V^3M)+lb##=|&99IR>DazegzI{D0diL@7my1J;@b4?h!x^_NUj@W(J;KdHAq_xviZp!C?tm&mpaW&6yW9RlBAa1oi)hp>QvEB4C%y7N>f~8NWM$jDElbO<`OiWT$!Em$!LBu109u zifXY{amjfi*AM#b3^>B-!+s5PN4I`o=$jbm+~+Y}!3$-f3d=xUiqG~3*dE&2f_Bai zQI}*ZYNh5z7AVb6r;AAra5GwFz&@Qk8Ic`&c%PY~8esw1q@`gVawCp|yJJqP1DnAc zTqb)*R)td9>ESFcp+(mVt;rXi@h2*>YRBq(2$9mC6-FN(vxkqoFBrYfMil`&^g-xi zmUtt`0b?7*_baFW$ZV;OTr6ii!@jUd8Rz8ik{UXtDmKC(mJsb1f4zmYk<~6m7ua{HbI7+$#yEy-;ON0)*(`D;YC8blGDs2rlk;{p) zkV)}pF0%4DHmA~PgWqLZmwf?Qpk=P%i7CYkWv;Kkyz1uod`y3=C$lql=N&%ex|dEQ z{^q)?>^{D+a_83B*W@(Q-;w`Stc*gm6ODbBu}Qunr{0`@772A-@&M z2jA5;;wq6k=CSzYBjG2mpGGQ7(xRj?LGR9nunJ~-|6D`GnxYcDj` zDP;~+svgh7pwKfLtUA?jnwj+RZrSbA`c>Wf>Y&x<=)B#i8dYNRJ9PHT(q`>peW!1E z4}nr;WL4P-w&odiW2MeypysEusC(SR^Mzb+-MXxE=xxTAmC>b|Uv%deF+!hPx;p6I zOT4gsa4KfxHj~bc8ZYmK{*nK_yr0d!bGi8CGkSdG&>kdH^b^Q`Q+b!Idj2vwIpoTG zKl$Lk1E&*Y)};FJ{YSScDj)$~HV7oZpOM}z<ms2n5$j4HzYY8S$e5N!R~>T-U9c!Wjx_}F=PM0j}a jurNRWFAW@=UfWvv{MQZQ)N8SU29I9KtIAc$n1=ihAgm}) diff --git a/docs/providers/factory.rst b/docs/providers/factory.rst index 3a42d780..8bab4f5a 100644 --- a/docs/providers/factory.rst +++ b/docs/providers/factory.rst @@ -86,13 +86,13 @@ Example: Factory providers and method injections ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Current example shows how to create ``Factory`` of particular class with +Current example shows how to create ``di.Factory`` of particular class with method injections. Those injections are done by calling of specified method with injectable value right after object's creation and attribute injections are done. Method injections are not very popular in Python due Python best practices -(usage of public attributes instead of setter methods), but it may appear in +(usage of public attributes instead of setter methods), but they may appear in some cases. Example: diff --git a/examples/providers/factory_method_injections.py b/examples/providers/factory_method_injections.py index 0a7af9c0..0e54d305 100644 --- a/examples/providers/factory_method_injections.py +++ b/examples/providers/factory_method_injections.py @@ -1,7 +1,6 @@ -"""`Factory` providers with method injections example.""" +"""`di.Factory` providers with method injections example.""" -from dependency_injector.providers import Factory -from dependency_injector.injections import Method +import dependency_injector as di class User(object): @@ -32,11 +31,11 @@ class CreditCard(object): """Example class CreditCard.""" # User, Photo and CreditCard factories: -credit_cards_factory = Factory(CreditCard) -photos_factory = Factory(Photo) -users_factory = Factory(User, - Method('set_main_photo', photos_factory), - Method('set_credit_card', credit_cards_factory)) +credit_cards_factory = di.Factory(CreditCard) +photos_factory = di.Factory(Photo) +users_factory = di.Factory(User, + di.Method('set_main_photo', photos_factory), + di.Method('set_credit_card', credit_cards_factory)) # Creating several User objects: user1 = users_factory()