From b7ed0fa3a8dbcb95e8991572b317d0dab1f29126 Mon Sep 17 00:00:00 2001 From: qiaolongfei Date: Fri, 6 Jul 2018 10:51:43 +0800 Subject: [PATCH] update the design doc of distributed lookup table --- .../distributed_lookup_table_design.md | 121 ++++++------------ .../src/distributed_lookup_table.graffle | Bin 0 -> 5003 bytes .../src/distributed_lookup_table.jpeg | Bin 0 -> 79533 bytes 3 files changed, 38 insertions(+), 83 deletions(-) create mode 100644 doc/fluid/design/dist_train/src/distributed_lookup_table.graffle create mode 100644 doc/fluid/design/dist_train/src/distributed_lookup_table.jpeg diff --git a/doc/fluid/design/dist_train/distributed_lookup_table_design.md b/doc/fluid/design/dist_train/distributed_lookup_table_design.md index 98872913892..c373bfa8b88 100644 --- a/doc/fluid/design/dist_train/distributed_lookup_table_design.md +++ b/doc/fluid/design/dist_train/distributed_lookup_table_design.md @@ -1,6 +1,6 @@ # Design Doc: Distributed Lookup Table Operator -A lookup table operator in PaddlePaddle where the table could be out +A distribute lookup table operator in PaddlePaddle where the table could be out of the memory of a computer. ## Background @@ -44,85 +44,40 @@ $$W = f(W, W')$$ The following figure illustrates the backward pass of the lookup operator: ![lookup table training](./src/lookup_table_training.png) -## Distributed Storage Service - -The forward algorithm requires a distributed storage service for W. -The backward algorithm prefers that the storage system can apply the -optimization algorithm on W. The following two sections describe two -solutions -- the former doesn't require that the storage service can -do optimization, the latter does. - -### Storage Service Doesn't Optimize - -In this design, we use highly-optimized distributed storage, e.g., -memcached, as the storage service, and we run the optimization -algorithm on parameter servers of PaddlePaddle. The following figure -illustrates the training process. - - - - - -Each trainer runs the forward and backward passes using their local -data: - -1. In the forward pass, when a trainer runs the forward algorithm of a - lookup operator, it retrieves W(x) from the storage service. -1. The trainer computes W'(x) in the backward pass using W(x). - -During the global update process: - -1. Each trainer uploads its W'(x) to parameter servers. -1. The parameter server runs the optimization algorithm, e.g., the - Adam optimization algorithm, which requires that - 1. The parameter server retrieves W(x) from memcached, and - 1. The parameter server pushes $\Delta W(x)=f(W(x), lambda \sum_j - W'(x))$ to memcached, where $f$ denotes the optimization - algorithm. - -### Storage Service Does Optimize - -This design is very similar to the above one, except that the -optimization algorithm $f$ runs on the storage service. - -- Pro: parameter servers do not retrieve W(x) from the storage - service, thus saves half network communication. -- Con: the storage service needs to be able to run the optimization - algorithm. - -## Conclusion - -Let us do the "storage service does not optimize" solution first, as a -baseline at least, because it is easier to use a well-optimized -distributed storage service like memcached. We can do the "storage -service does optimize" solution later or at the same time, which, if -implemented carefully, should have better performance than the former. +## Distributed Lookup Table +### Problem 1: The lookup table may be very large. + + In condition like search engien and recommendation system, the number of feature ID may be very large, see 1000000000, then for a lookup table of size 8, the total size of the table is: + + ``` + 100000000000 * 8 * 4.0 = 2980.23 GB + ``` + +### Solution: Distributed storage + +1. Paddle use SelectedRows as the storage format for the lookup table, the lookup table parameter will be splited to multi machine according to the hash of the feature ID, and data will also be splited and send to the same machine to prefetch the parameter. + +1. For common parameters, trainer will get the whole parameter for training, but for the big lookup table, trainer can not store the whole parameter, but the input data feature is very sparse, so every time we only need a few parameter for training, so we use `prefetch_op` to only prefetch the parameter needed to trainer. + +### Problem 2. The Id in the lookup table is not sure before training. + + The feature Id is calculated by hash function, because the feature data source is so large, we can not get all the id before training. So we can not initialize the table before training. + + +### Solution: Id auto growth + +At the beginning of training, paddle only malloc the memory for the lookup table at pserver side, the id and the data will not be initialized. During training, when a pserver recived a Id, if the is is already in the lookup table, it will return the exist parameter, if the id is not exist, paddle will add it into the lookup table and initialize the value for it. + + +## Architecture +The whole architecture of the distribute lookup table is as below: + +### Training steps: +1. Read a batch of data, the data is feature ids. +1. The input ids will be splited by `split_ids_op` with the same hash function of the lookup table. +1. The `prefetch_op` use the splited result to prefetch parameters back from lookup table. +1. Run forward backward to get the the gradient of the lookup table. +1. `split_ids_op` split the gradient and then use `send_op` to parameter server. +1. parameter server update the table with the received gradient. + +![distribute lookup table](./src/distributed_lookup_table.jpeg) diff --git a/doc/fluid/design/dist_train/src/distributed_lookup_table.graffle b/doc/fluid/design/dist_train/src/distributed_lookup_table.graffle new file mode 100644 index 0000000000000000000000000000000000000000..65dfdbbacd219739db6ddfdf243cc16c3c4e8d1e GIT binary patch literal 5003 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 VnSAzBlAU`u{vT2ZpKG?e002Czx)1;W literal 0 HcmV?d00001 diff --git a/doc/fluid/design/dist_train/src/distributed_lookup_table.jpeg b/doc/fluid/design/dist_train/src/distributed_lookup_table.jpeg new file mode 100644 index 0000000000000000000000000000000000000000..5353a16fd329f62ff893d32706b9c3c0bcc46a07 GIT binary patch literal 79533 zcmcG#c_38Z|37}m*s?U)C5%Ffgi6RVBzv+`RFa+S`#P=m5*0;7Nk~XpvW{e_i0ow> zOZIKXHp6VcGkW!Ue}3=p?~m_qyESv4bMEt=^IRU!bDrmUFWOJq7_`Sw*FYD7!5~N% z{DWxY&~=?qcNYjUHio1j2x5hpVB8QKP%!Whf(b!PJ2V6t!uI`3o5K$M!@~eUvF;G# zKRmYJOg})+^t=B#Gh{RT;O65icKoP3qM}<|euZXLWXzLYO-E`d(w$13_Ni zf&S)tr^U`+uoYvO0Mal+2uK3rb8rms)iO0bOYigVd8hw>zc%}KWQTfW>3#j%{J%$V zIXMS70_9Bs`&Fj^M=wB^K@j6fM_>Oy2x3|U?cyPUzJO*1QbN4`KtMoC&}r8{v@)H( z`iG{=$?I=vt_^su0QYb>IQY9l&~Cb1V!@8Cpr74IfR^`ma`y&wEub|V-5i_%O$PK4 zFE1ZJBMt%j(AEFZkL&-S9UQLy+oywr>%a6LUBI1S;4|(4zSkVWc7FVS`Q>#j2-s`q z5C`8JZvOh_;LJ<6o2QQvo#p`a7w@a*OaRRd=w5fA(LeOGTadmLpy~WX#{g|Q0{J0` zfy2q+j1i!P0e!&x+Bv!%>FpXW?z#qm2DWFgbPqJJ1T?sp!O7pp{Ga|ALY)J2EI>OL ziy_p(A5edI5`sLfv;a--^SPU|!QVcs!`&=xKs%6=;YYB$^*KQA2J~=%rv+UG`ndDq zZrb$r9UlK6bGppH=WxiyUze^U;DJkc1psPiT=*$BcLO>i9tc&a~1M|JRtXu z#mYtS>(3Qk$N}<)Tp?#j_Meu&ci8M)@dn=(P&l*%c>|t+fA2fJbJZCN2JMu8TmRfE z3%TrE4c@uK6PgAictJ+cHSjwK(9YnVzoS`0zd?)pzrX*E?g(VP20rv_|4W+~;%^(X z4)YmieP&(e!;C_V8jPxpXTi57_#9(YW>onr*MIn#rkT2!CYbt|#+ZKDyWjNx%kj5A z$QT*}GXAlOGqBkI(2nsS=v9&NG^0A`AN0-0&nN`RGM)e~JE^l4X&&ILgZU=FI9h9I8J|Fns(0@&Y&pt>K9LH@yi z_!#LYCWsBJDZJ2LNE8x>4grmhK_?+qNE6b53?UQ961o6g26lD>IQ54@ph)Nj6aytf z_n}8n29yQmK>1J+^d72&YN1b13)BYvfcl^zfR!m|0m4C>5D5l@vA{TCJg~hmBuo+} z13Ly&hH1cbU}s_GunVv&Fjts2EC?0}y9G;xrNS~`FJJ|*Qdkx26YMLj3-${(4x59m z!nPUU3>*x+3?d8%8RQt08MGLT7%UksF}O1LF@!VRX1K@jnBgVETZRgTPYi7geGFp^ z3k(}@2+j`Yhwq2W!j<9La1*#K+y(9rkA^3})8H@R#qet2=^pqPd=b9I$jr#YD8?uY z@T$*f#puZB#~96+#F)XD&sf3O#Mr|)&WK~AGI25qGs!TWVlrSl&*aJ!!W6@l#`K!0 zoT(Ya&J@!oGcz+kvlO!uh`kHU9?TKUNzBifOPCv&yO<}LH&|F$_Oi&ZsI!=`IIsk= z#IQVJdCP)f>1LT?A+oZwB3X~I>ayChdb8eSO=Eq-TF=_eI>SoZwP%;)u2Z{Ab~)_| z+m*cQ)voGYox7%Xk=VG{q}bHiEZIERZm>OOD`snE8)jQ$XJ{}e%9MT-x92Yr)IPP)eaWruJ;#lM4k1S}!_>AO741{uy*$)= znE9~sVb8@8Ia|W)shXCEtDNU z%766i(VIsrk1oqe$l1!J$hFE*krqDmE%oPAZ-BKUsWoPDw)Piqcc10cBogQ{^P(FDgtb zr&Z7@wJKYuPM!)p_5Rd~s;sJ~>KoNrH7PY`wO4AB>Ic*v)L*ENX^3fD(a6>qL+wX7 zpkAUTG{rTYG+%4ZXdTw_(0Z%2d|Ljr|LOA61npDWQQ8e>;AiyCB%JBc;nuOz$h=8@*D7CaXA7H=#zEl*n} zTMk(rvI??lv_@E8v@WnF*qpIRwHZ4vcRuQT+XbNu?iW7Vve;VNzP8=4)3JMGH+50* zV$8+eH(@M{UP+#|0-% zr-x2+&g#yo&ND9RE~zfFuIjE2T<6?SZfS0d?%M7d?syM$(4n9^LF2(1 z!I{Ct5bKZ+p_9 zuIpXTzrl9H^Tzj^@;6g&uHUk`Ref9J_VwG7cl7QQ#_W#qj~R$njm?TT<&!wpG=q{H6k> zf`T`~Z;}fc3WEyg-d=qBqv%Z0$70#y7bW~9iSM9yLGR{Euax$`H+tXrLHR>*nPl11 za-Q;p3Rp#01+LPqa_r-Uk6l%URgKlE)#WuuYw~LM*Jjr7)g{-n)!(kCVZt#R4ZaPF zpIkppHrh81eLnxWx5=!jquHqWON(yH=T@y&%op`9wO>ztt@@_?t+MT8TSdEKd--?8 z@8umQJ1RPrIzRqU`BB}a)>Yq)>i*Porl+OXptr5>TwhneRsYX{ivwdnoqo>#y7mh{ z7(7TCx<1S_oG`LyByCi9^dnGM5H%vE1 zH@!AVgaqPVV*Zx$R_nIS_6#Y6%tC%lIZUah8c~O7UNoAogTKR0E&vDL3@%^?y_yF> zoEJdu@B@O_?EdV{b~tu+(*IB(-Poc2oc{;?XaBZy?IZ-{X+n_IbqG4!071{eM-tE+ z;7m`!Ej1yAMq3ksAeL$fqWIHjq-Qi5Fe?d@# z-=94potwS~&8F}Bp-#2E*Xif~dC(dlE>_qCLmV7-0Ak>R!MR|xCI|^+X99@{IQ}xj z7~qUd%q*`5uS?28S~+!kL)p8+lk1xDGLLF>&u#&|>B>b6`2($9wEX$_rNU z)1{yI%)4+B$FKU|+{MN(Ah=gZ@}ShA!_p@dPbw*^oYFp{qpPQHU}#}!Wo-jeGDjz8 z7gslTkAT3S;E>R;@LRX<#KgwMC!{`j_$V#?@so^~Ij?eG=j9i?dH%1GF*CEWvF;pf{~R1U z$8P$8`1hcJPGF!9Mn*;!@P7~cF7`eDw-4F~*ijy)4MH4n7yuKT3qnDZVcjW||A+wf zLe_GIWwhy*Y!`a!34xIJlG6F${ie@yhSg<@-;2*ON3Tl{RW46Z+5+vjT%t_s43W#! zxf*oaamq^3$&mnIdpYMt?5Lu=ea&iku+NGqqfRwKvW5l$hWWcgghEo0Xvpi3@e(%mS%zOV!{PruGo*5|yx=Nu)tjPc{iJhE}4dsw>GKG_q_{238`UVLwEe zF0|3l;iil{72*%WWXblc?KH^$`Mw*Zv?UsJq>~U`RtYEgle0z_vBP;wW0B9FWs=IE z?;|LG>}NVdu2?k7vKiW0SC&c`Ux!Ct?2F8tG-;!r{=Hm>dTZT zbz=H)0lwqm79TkB=WwBu7l_BIZ z%3zm&VS@Ioo~Lx~@D^}USC;MG0Q68#RJ4)u>w&PC8WSB7Mk;V|bR8yC!9bm=&I2CK z8+~a_nWMBt0s8^uwT`}hiPJc@@T<=FOb(%F70pHmDRgNB?T;la(y^MLdWJ7pd!^2OF<5@fsR8f}Pf97o9k)MHoMx7oZJsmng;A2xl=ERL9TCgP;Ywueyd9O2wM=ne#2k-&UYALFnT}K%-qFuiiLw?wRrPBJ zX<)7>`Ud<)2eI~wfe@8aZ?X)0n~|b-coiM;AzTQ$iW>e0!>?bYP|t(N#)g4Nr4stz z=999d2oXvJ`LB>i(7+zp(QKv>!haM*37^I`|3P#arB1`73sa}PTVsY$0}u+kH;f#v z#M7}huRa$?rbBHNn0aoa;Hhu4$qG>KtXBIUgdT!vuTgWWv;KHbmxQVE#;k$(4_Pq3 zLxWta7O^9*w0eH8%wk8f*+}(n82{*P`s~-UVlM6rm<#AK5P#@>N3@aMe_^UU&IrqW z9Z^+;bW0k5ZY;oi7+W}=n!96%l_>XFWuz2ARjDYfvRSq0f|}y)*cWFvl}5$u%DYqN z#m=OC4cNc-`m{g%l~#i2_XH@$C*iq}vH8m9ZP{ExToC(Vju3^pG#@{an&pnKt`oez zr(Q&T{#dv)S%b-<9$E@`3bZa$??BI#2i>KA<&@w^n!cT&W zTI#tAkAMHpSbHXZ8b8zI8Hg8142tMvcdvA8FY8(#IPZFo|C4TQ)n}C_=}bAv9<9%+ z{FU}_rs1c$u*oc*PnT&>`uUo50LHRbeBY4K$57RaElBF6tIN!&sUmlDV_`Q9npG;I zL1W#MG$^7puYt4)r0z{tC|1Hu1rPMsu__)?eY%n>Vkkn^47xH#MThElo*_M)gv~< z_K{0BI?3flazv|eR|@k6hAecE2H`FLyW?y&_Q|$v3ys|a%0pS}=WCGL3!3<;A46F{ zUq_(YMkjfrkOtx2taom6E})4gfRq#YH0aKSTpIMl$BqVl%I%~;(yd-_wT zBmQp+5Vx;{FlVy|qj<^3gWi4`A2IJIX!Xfm=pW=f*J0$~`zh?avr2+)gOo?rHK&O> z!AdaY+HXyR=`KIgYWxzSrJ55PtEPAD=vz4f&lls5ZhZTaq+-DJ?#sNk45am?7%}c$ zP&j{?ha?v#QXHhtzq(-b@!5?L-~Mx5M_Pql&ai!7Hip6l(T~CUUjpW=k?p=td2}Za z4T|n0_W5c!tcK86zsgEVR@W??_JcBZHu7n({R%p;JI``ogdCx6j;qS#B@N<12a-%< z9|HIQI)Y@%X#I0_eDXb*5lJn%f?J{MR083Rj0U z3S9?s7UHAm%iZV*Qe&=c!vdC=Nx~Y&cdppXN#T_UvE`5dxwl zx-Sq8?5L0zv!!=Ak!(y^$%PKLes3)S*Uc_Ywq@S?4kTc^Upe}Z68EMsAxd39*;@5{ z2G{vX9~Ua2oHGftBWR$x$`lAz`=-&+-nYY*WOkr;&fxVul*!d?x`5@v=!L8)>Iwn# z(Zd|8fU=+PS*A!I8X^G1!+;#)o7uZ;_C0hYVMfBwP|r>F{)m1UtvnGXgEfaELPIgjd{76`4NYeYGOx~B}ZtUGiu zvKAdc>SY#2H=yI|G#5(3_YVqnd?2;LMu!SDa)T zREr$}xRb^7HG@?<001tpm8=#54AUcBE8z)`O4C8|OQ>Vg@yAwY0#)dq%5|CAUiX>s(OS}kI|l4H zb~bl1WCYBdm>T`>YfAPLprhH%+>tf(rZEMZ3+W)Yrzc5Sqtv+qfj5zu5h~$D{-nc< z5*ZHQkvEvDyY+wyCmYX3<->T0f5ND@*WB?MS`IG-#5B+G&%%LF0?MdzmI4E1HDO1A z!JlWzQSVT;t>MTJ072@;zS2stsQ9c<4!KNHxBn=^(t>CMlGV*0j_p|wkQ1FffeH|vVxh=2&d*$P`-k-*CIRt%9@ne6*lI6L{jQ&bzRTZ`-lm>+PGs` zSCuvThC`E^!jZQFjWFDyX`AY*XG{0Ze0(^e-22Y-{I=7Li$2XITfAU(es?dO2IZ#M zsFL*NY-1{MM$MAH)al2Gi16z7F)TNaaa!~S?UR)< zsqRxeY(3iDA(i27zx>MYW_#;TSO&T8`M^Xr@q<4%ik}8Gf?e3{ZzD^un16>}3AL04 z5%nVMvMz4^^AgJAH)p2))VjLT#G~m_XHU+`Bp19VxaHh)l}l%bpB?brb>$;}fm0DR zZYr0g{DJ>-JC_gl{i#p5DtwiIIYp}#EgPEBd={(BR2&DvagZD1-W{pc37aU|Pu`o~s&PM^hW1y$)5(f zWR^d>J?i?a!WGQx+c3} z)`lph7+q_3+EZ;PkpQ3B@`!&F_hQepLH(Zes9AlX5+&gj$q9{0p2@de_ma08h#F;M>%VrK>@Ar{L9v)dd=_!Uv{A zGhc^w}Hw_(+=X{OM(N>4?Kjr4JkpB9A=RrTjd4Q6#ZppEmY0 zrp%FiD%q;*ZTSYCBbsYqDR80iQAl4-_p5$KPr=-jFOK;l>XvtcdH7lUun%kmvFHWe z_L+kZsMS9y;a_qT@dAsTZ%0BeMP86gRMQG@9Zwu;3wYUDT+|nDtk%ZOGyTM%-$?^k<8!?AwbVaQ7oiA|RSk#6**IZ5O@%@E(sR;>w z3u67sghuAX3S!8u_1yDSGgOtu;x>BIXC7>{k$mn{4zpJ;G%v8dMr-3XvW+}{KT2R$d1y)-okJs%dMX9|o>k*r_#2N3?VC$f}p(tjx6&(VKE3*4Yy%n8c zTk6<_PC|#0EN@Vk1vlxdXD)QcDs*cILoNf=4)4NgxsDOAj-P0H2G$% zR;RXpQdYLy&{gNyvJuZn=r(Q2U{uqSd-jjleI}8^+ZMGQEbS3!L9ljT7iY_1i2zlQ zGL45fEMaRH9N?a_2z#dCNJh1&YdmCW0Thx>!L0ZqKd)g%lBu@H6`}jmOGs5v(sD!B zoijj%M>`U(QWfT-3dX5sYodu{M^Z10%WA7W1T4wG4t*kxCFyb*wc8+QYLZkt5rd<_2q0?a@Rq%;zOdRz6Ln zDh&c|^;!PG=ZgU}3%N}3Q1oNETTwNqF(W`*+<2M}-N`!Qu(3b5KHFo_yITO#NI zeX)f`Qt)YY9%5@r_lp~#uz*n@C7Pv+9rvB(Sp(+z{>CAB|C< zq9#Qj!ub1UX3!HmUM#y|gIqwCkk@^ddxvPypt>Cx-i_O@O%#I#3Y#){I@?RjJp*Me zTjX+YT;VEtsSh>vBG2wCJ>&ppf%EfnD8mZ#SuN_6d{pmDMVU${Y~?+Vj%7R&C^!F3eP6IGbH8r5CFJkkX>AS8mu1mLY{% zY>PTeIdtY5s36_N0&xgBNBc$ySSl3>b_BW)rhRs>(zRrSnI^STNk~vODSfjA074H< zN{{)0Vv8B{I55%OS$9V?R;e9*3mC?vT>rg)mI4(yDH?PAfR6ox86P@NY;W(m#0u0i zPz3`RE;Izm?O$b0q}q_}(W^TO9PFE%L6eB+I&Enh6h(s)K>!l!AIUxGnMM(Q(sR`Z z$+hT2Fi!nL7|)wEAQ)=PZS>{i{HpXBdIhu0$MD_CCt!~qhxRr_gLnccZq0?ntia|y znO?U9vk;d}@+it|XG$nP^dPJD4|Yvc1GkdxSCW@0hZst&Mg%&rQNWSZxxANhZEF}y zphnEYuWQtPu!Fs*JuYz1lG>4cAToU?%GtGpp}O0y0Zy*HU`;zc}aN4;P? zSjXiw7THQfC52ODI?2IXwYX4__uXH@;9cpLuPbWE%x+hF7?U*=VK{y=*X#Gl&>4A- z_rJb38TEdKEnpVftyJ~!(WuKvSnZJds)Z6yeSTC6J~=pE|wJSwYTrD z4MYNj=uYZc=LU$>B%U z{PTO3xg_V5y4|N}&Vl9nq2k$Kp+_wZ&%M5vS!jIf3OV&4*<;pgtfDMN)zebnA^!AB zF}62_4d5k0(VMjkR4#-F`o{)XSg%{7$=dMp}J8ZrB}YbfTxsQ~#Q*_}BAZU03fK38(VO zGn*Xz=tI;dgX~nh4@-qz09CE({~iur)E%ibzQnv{)f?!^dZak0EhP*sVaQip%;?UV zX0EZe<@eGFOrtk`u&tq!s#CFZ*7mzk%wXRVD?*nh;=@9h#8WOWPsO@TByoMjU3wJ$ zuE;2hkvKoWA4}y~AcmlYt%D6GXV0ER8UDg0fBw$WD4-NxRAZ9wDRkYcy4NT7_(*%f zw-*7|Qwk*FCap9L_WK)T@170(9y;^6oLP?NSvzXtMenwX{ejQ|PcC1|0-Lh|QnbsG?#c33Kws&NQT>!ytBk?6Ti z6RO(X45T(-^}x&3ok_)fT}A0EXN_oVT%Iwj>{)ugP1W-9^1f-{{Ag0Yi{z}bx8J^K#rD(_e3iYBP?{hSkCruBnGnSe1DyOeCW%uuzNO^ zHlj&YETxKI(quoWftpCiBf)a?*e-mg|GN5-dO!O5-Gmv%A8iW2WzMd2INIHRLS*{ z<38Xrb!*b8;&Y6Aw}+M8g(chvAar=@VB^ zDT@l=k>9hn?oDfUfKm}&me#~ay*v!m!*kYl8Gr`X?ELypl$JON6Z znMev7RRY*tzG6{f!BFF1Yb)8DDn98$ZXBwd)D%rhCiSc#YXtBJkWrz&X@E>I4jo?G z9DPvCA3ZLB7nQ#StWB24vJE9>3IhAw24g~C3bPAV0izlnjgBl`A#0QR_&$T@4j{do zus6HxAAPX3lRnH0YK`6J;&zWDG40+x3@(wFJi|hD@EWFDSRI>AU%j|VrXBuR1*+VH z{c^&ZF7equZ?K)WZ;AwEHDFD$8;ZwKB8#X)*6Tn|^N+NsyTQBL$gR^VGsJXKIj;|R zoJP-^_E5)5fEn*R+j|XcKjkJ+WWLJR>h6hn1%6#0aJRv&WMDey)*>j}AJv}c2a0r} zF)6~+C;&4S0JE@s;xj>My2gJ%5G=Uy3d!ThWI{eb72oos+ixi=99nmcKCqPxN?oyp zH>Thb!?ZevZmzHOk}p7sm=_aAHP55lOG=|`g?OP9EJmP>NQ3hKK@|pMG@u#;mO0E$ z9;V%ElYwsho&*?KF>xds)Gk{Wu%JcE-1}w6)R8lP%_XeDVDgx>hgASEM9$|J9lDlz5=Oh;Ly$B%$A38ZrAq+Wq7kYA$k2-`IiV9!aa4w`Gdm3(t(K%)#9 zUwU7U?w;RVG)SysIbcCk^xg`o3&2?pFPC3%VH-pe*!PFqJgx*W%DH1=96TB5isxD} zLGk1OzyPFy_y)jg1&}<1@@g%lhk5XIa@6Di=`*Q(8iV`b2y)H8-l<6n|DkcPMR`XB zG*QOqZ1@kBoFSFf7xZ+Nerwh~3idIm!ijE7n?;@l6BNUDgER^q7oKqk%f6E|?xAjkeE~+2`4eKTJLWv= z6YqW--UuSrkPd0bEP&r7iiRUdDdh;Wu9GWZ3j{OsZHBSKu zbM-;k^w9y7;GxnER)AGB_qNTGi;EOsIEX1`aBkhyMc=4&2`WP+`S4`P?$B@S z1!VQW0fd)$Q4_aZN`QAejQs@noz!D`;{HkZo@DR-f+Fb^03il}a*sEt!1}>CJSgMj zUV_PTw?t>_7fO@`31bVf2O!$PbILuSdMb{ti2>K9&ElY#=BfYq|l&S)!`Xi+MD+%*|l7_8Vg+X zty9Cq*k;11+T#~O0}RhE2iY}SJ~GhPhTc@QsXj7=N&H~>Wpcz%x7+X&AMA)h1LSWY zm0gmgW=}eQk(kv~Y0rUi#v+jM(T6LJ>4fFSb7<`Ac1n8lesms^ch_Bv+mG1ax?fN6 zyWA(Ad#JKT^_3;X{48do=mN$5Mwv_+_weain6ax_QtbU1)fbhAkuL5`VDpY*3AJm; z;LN*2-uG(AEkoxf>sVP?yhDtl2xJ9CpMb4)-atF`_SR~9;bk_{20EKfgzOAm%j_PX zIVJjV)FD;zU5|fPVRHk|*LugK6%m$StO?hpIUsrPV))^8Q^7I=2tfT0Z9fNv+s4s0%EKgxi(5}QTfQ~ zINq!ZpH?FQ+-OGsW;p7W)6L`V{9m5+lRq3-YW%=wuK!6H>^up?+?+haL(t2FKOe21#$cgRZ47h3+_YcLz%SVwCQb-6eTkGU(%Vc% zgxYotm_P6P5oQy9rw#L~wyUdq#L<;C^r%(x2;br%jTw=2A`8K!&X>wZgHj(%tZc7! zksOJx*$6Y%Hw^cn^@()evcPP{X2D|nChAFC-Yu{0nWpWxLLT4z1Rph|YR?Hf&IBxG zXN>DLVfQScS0zK`%zFiPKaxYHs3H<-5$8lZhz0VR5ybLoyN^0 zYu|nHE6|4_u_;9ZVxZuyqe|r)NLo2xQHtlWx$=!S_u)zF_$)J0yf7MT30tU*pq5>U z7`Wet3ox#YKhURUFd_3JR>jLU)L@(Pv`P9iSrB)kD{dK8HU&@4vgzGLgSysX^Tcgx z;M0hKs(n6YZ{{H?+O3eA%#XWxKWtB1q20X}SyxkYjo8j?#Q90=M$Q!2 zBY?$v+)RhV?DK14O;fN8(zyD8aaPG7|HU6_?0D|xXJyH8HvS9^w|lR79eoHRtK9J# z%DVI`8*!;wutbz6GN7w3a^Vu9DNX|)W3c`;uG87i_epDEf(h{=|DejRNi1UiIX^Vk zsdiw#-La~w{MgInu#-PnO0OnayF4hG6WX{P{yIKl_Y2oU-;8|@wC#)9Yrt2axhp}z zNC!H2s9Ba5dYr>sX3B6i$-L|TujVW02bYofOg&?9BcDVe;j1F(M!(Ek(noCr~M? zJzNRF&_izdOk=xtf@M)eikQifwvb zBsPx9Otcw~NZw1<8IY|-v<>a~e??v(t`r&L zQ4>rR(cc52_87|qhX;d7tOmFE#n-4Dh8~Qeg&wK z7Ubn-v27htTta?6rPEPWa#_#8!6kD#!{W9M_0@Ao_(8*T?HgIWiI6589=A7ArY zMC_PM`f9DJA~qfg5~6sWhlGNslTUKA_mD4IJyROP-Z-+{W7)TeZL-Y}XGBIcKCLCEz5rCr#sxpQnTn;+ zTYMY!I{WTGVZsLZeqP5Dqx-6_C^M*jITl^>yY;twVo9V|IaeZvbxxoPrBdGa`z*rr zgKaW}tq$#*BVGrE?IJ#zkX6ef>es@H1`jN^r@b69JuBxcJLP^ZB6>wJ!kG9SH)K|A zeCm>i`pIqWI~BdD#v1-nj3F}nkPSlXRD@zyfxGRwa*zH~bx)NxyM4P%xZC!M&NtlB z6i7Y)TT9~F-hKBQeseAA7+hA7`cx-waDRlX+FPO~;wyh9*kt;ADND{T<7#11>UmHQ zb+eR@)WjoiE-$T@B%ZuKG<5OHyHCZxys4e3dJSi)?tYEX^Y_ht@>1fu#PI1KEM*xW zABsiIN1D(e$K829!S<+pVe8A65;0-`HLr<`ZvPB+2CS&2L-4NFQIYTxXX?_$)`3;q z*DUR|A@*aS9@VPp^gFptWNwx+Z`pXNy1H3!c&ys*b$>4QBht(ZzpruAtB|*xv^zIX*UIH%xy>;> z*{W-YGx%K^6&Q4`9ut&>yoh$=C3hkZt9k_YFGUo7r`DL)`IKP|!=Lq_q*X}qwG`<5m<$R}WzRVGUk z!(BgvQ9Wc0-?@*uU^C-#Au8gFFziaub~9 zjq`JhZ%-789GlRqx)~9Xqfz3!x#=rgR{A!{)w#(|>qx8HZ<~)qi{@&nyC?4SukXEV z6d-Z`UD{!>6v;aY`pLp?ir>DK*Wz2VF2N~HR3?;jhFrv>;{!!bPg<0Ay?ycFl-gaV z9OLSU_(9_V4R_DGG)P?L7F_!M@^7RY(O}Hjb$lh}V3%UirSdSB+Nx@kddKnvm*KRo z6K_}F>nd}K9~TX4fpWnMPy-v3u=Z+2id*<2UNg;`_w&_6*UN6-&=fT*CQJ9&F8gqW zijEO2nq=3aUU%uGsQNXJ6rTwwXxSyE&oUCE)=z)=SKv};;o0is^W~RNc3sPtTg@tT zvBDu-*N0v@-t5v(datX`;t4g#i&^3Ao4&Juu0;Pl$$qeE;;?}HoV9Z5)Q2B!9Y4i4 zQqA9}I*nO?xxmgEM~Qh+5Spt0YM@ptco38`@1Or9oRlb}&2^3YepB3yIHoU0G&>-c zmu5P=(EnE-n=G;oNSPcaR!EFk^la>FvLUe$w>HjlXF1XpFLSvZM@_k=k}=n~?EO`U zGUFf0mYo{TMhuw{xQB8B4<3#;L`zf?(RppS#PPE5sNv+oc^nI#xroEVz{rUI+o1L_ z1~pKAh`80{;oATo)i@a4jYVkie$OK+@=rEjK2?8H+;zN&A6f1Zz@qtP^}w?V+_G?+ zg8o2_%>%ngc49N>O!?~%Bnyu$+&!YBe;e}p`mV=zsO6u$eI)~)BQq-U+4}G08@0Yi z!Eml)sL#k-r^If364Eys+PEMWB=bRXG&gL2vTE_sDOs6GWm7vap+m6C-|lNF#0``X z=&#Mjk7GGQBN~N{J{vD#n@bziec&+F?Bnk4{q7UD^c5zZ28a!-BY2s`l8Pv@k=L$9 zj+9_c=rcsB^8QBZQg|LtsSeV=e#IAci>SWPSsTnUq=p0~2T)1Jfme`?v5KRw_KZa@ zf%3$@-hnLQ^r3FTr^Wni8st5+%A3693|{I=9Q9t)Z;C+~Ed1DfP z%oXNE|F?VtkN7gjR}!kdn#q^<;d5(3EtW%fL`?j1KNyF_`e^Dy-uzRck= zXW{!J?*cxs>}#Y!NDT@1jDwHzX15Lci)vL|vp+}o=t(>nt$%St4dZ$2i0_u0cJ_UR zhc~PC@@-T+z}bwSyHkYVa-;J0EGh0k(i1;c zl+uK5KNoyQI+xB@%ipozenii$d1(L{bo+?W89|ZTQ@-wbxpk}io8X9Cju+dwN zH)?t=fy=wDn7k+SR3oQ_U0J+wZc$Ss>-3{vmWTZ{J5kcVy{{eB4X~HGKsF&hnaqlN z&ijL`Ug-XA;gs`em1{w>dR^c9&)mO0`EgbE{30Y?zr=Rk(pNUZKvL#(rcdw)3_x<0C#c{KEd)jLe-N#HgI+^-oUkuq^v^&u${O!p@ z#l|;=XOoP$za{K8(PZ(^-@7WivZOxw8rT1%_~($jF11syM^V=P+?}IGGgRb?Ge&Ni zJnkRl77u_|f6&+3((Snx&1n0>fd%Pm`MsAyGr^HLyle>;eKDYeF z@~G)rJcIn$UiSNJ$$ouQhDf1-mkHSOxZunX4%24u(y!3rDXsl!k}_Sly^UJ$2P=FV z8_YdUOm&5UP}?8!LN4V;hAw zRubf7SAqm14T=V92G91`!MuX;(oLP;?y$j3#=P2w6epBy?|rP7tR^NR6BJqc#fW$K zuV?sHHQ(>KkUIQ}lD_Ypqhkn0)O$H(3oRL?=zz=8!%d~Si!#(?Hl8v+@jfci=-%id zjvkfN3x>7VLTVITRDP$LNMvBVa5)VMp{dxG%2Sd>193~=Fq;ocr3QtZ6Thy-Lvoo@ zshJI&Wsf?PU!GE=1k)h7Cdm(#SqqfNWL**IwA{S&9{mDBE(Ja!eYwM4yj_MbQuT+u zoSoJ7XnkVNt*$9AtxR3sbgI0`cVt!n6PIPskyZ#%6k10}-bjvPDl@sQ9aVe#6?Ok3 z#826D;@$jfQN`ZT#+Yi0HkFpf+a6@0vYHFjT|s*+~^?-q$+e{{?JTZ^v59zXAo_^=yQJ)xKEx8&Je1p=_(l(1B=db?5p0 z!>Hgo8{$4vdB`Ftj{BikhD=##eIPHxNWouj(lakLP&kv60?(8;=5oLbqQPj}r5`0< zdtMU$Tudfj(2#2-Z@W=3!&#s-dhY)9@a`^6VX1`ZeW9u?Jh{};yc_wA3Va(ib>)lN zl*Bm0FDw;{5jF}SOY~`4Vg*k+WG79QSb2ZjEmR~1-Jo>&dH*mV)~{V|)`3C^WJ#nz zS*}B2sPvGP)$I1US9cz}Qo}C25}eGccW<3o4EESvIgaFVZ>sMIoD9^c`rzK8zA*3( z;h~@@YM3RgA+puU)HgDc*m4Z((c|OQ&`L5towJdT8Ap=^N6Kp*@?NZmokY)S+LTZg zd9-%19Lk$#g2J?jB%GzH4h`B>f8R-S@BK?Hm$YULZ{0_He3dwf{WSNR%PzFIBgFA~ zDgXTki@d@EH;HVcjFg&a*}Sxm4;nQD(bcLZkupm<2`5Nz1ZJUZgd}+8Fg|8rdw!8Q zFS?5(#p{**H^h%PdGsmINUPowan9^efhM6FLBp?&La(LI8uxa+L*axr$YvlB(j3IJ z6kSMgry{!pS(6QXR-9@cMm(1762Pq$#Ew@cD1ztbd;@poN)9;0ly&#ITem*H^HSDd z?^@W;%@W6!L)p7MKWiXxt+(C|nc!NUFlWL`UH4?0FNS}p91T`)<2DW~Gt*=O$=Cn; z&+UnNS0aXFM&ucf`GB}yW@m>Hjyzp&+F!r-N1wOcuM0P~Dj8Em%EYoV44&v7PkPSE z(ru$;z3FQZ6e9hJ!|=lIV77#u0v9z%-8fRGIJ!?mf>`jzWUS;T;dF8f!LKT2rP(H_ zE7aat(qQ-~%lF86U$w$(Nw|(Wk4Jfn1ib6!^;(lX(ft|ScA*i6B{A2_4v(B@8f@3< zErASt9^X{bTm95>QpsWy6I-j29crTU0f&t_u@EI?*pqYKt4Q|1`71Fe1g-RcFquLP zkSR+$iWB2RLFnVp*z;)|UpP)SB_`Z1vrT)QaAbXCj5*n;bZ^2hWfJy89`Wfw4cP{Y zl*flqZpvZSwQaHo{wtl!<}6Z^`zafaesk_S_`9JycBZwyr?!>owF{d?{@UaXgAvTk z{X#dJdwTZP)FtRl@N#VSR?i1?U~kHu#`SsdCwe)OA=*7FdBLFCyQf$nrBAi84q_94 z=i!2VEWk^nwNaIgjE+?83Q970HM75t$#Bdcb*m-st&Byi#sCL`}Vb9sJHk9M;{_PgUrRi+-$@?fLe=)7vOOPLd_z7mi3s< z({{yu$SVh`Mh?i8nTr*G*FGnMlfI>AoJ*cKAA3ResB_Qjmhi3PN4}gx&E=O|$=REY zKqC1RjU=R+M49kRG0nr@dG}zYE?(Jp!O3xf;68`PG#KKW^H1iyuDvC8Y0l;cr2gy0 zAnMdcJDV+pU&9l|1}na*U2^0J2YgN_@C8h~^!+%&jH0s*KyRMF_3McbkF{cvuBNf6Je~PD&9wY_aM^rix z@wkNFOJ#WV^0uHMwy!e6;f&@c<7QxiTgD~LzIP8k)&FX5Me>K)fhJeV^c@?~t&+>< zyQ0U~*CC5iP0`a>u1Lq|W;GO!Wc6SLCQ0tEQ1JWlv`r!#xjmER;q$9r$+OlZEQe^# ztd2G2dsIjDgiQj|}n+t_2vwsYn2Y(FxJpiY{98s7nwn zf{5rO(TNtlZVu)cN(yVX0Ki3GF|C=4C=jYZZ3rL1|s~W zPV~W_1h7uWRqM=DA5#)>&^=%-xb1@x=)DA*pwi)IS4H^bRzU(t@ISWOLd6NBc`gfD ztk=xny#gKcqHkODVW?wE0zcfFR8p+CCr~{lx?Z0r%R2YZ0$VMh%H3 zjWj{@|F)S~{Eo-TBSUN(12Z1ikMI8lZ5B^{C&z4AC5>L+XIRr(4TunUqgkL6QYA5> z;1~V#M`&B?Wa{8~=oCAQ!A~pMVWO1~rC97~84^gdF1-ba+C!)qfL;c=F4Q7lDpY0$ z9md)L8{C(14;RrRO}#Mg%;T;(Bx8})@nTv`ZmoI#O4&c*kELe{n6k(r(Qx{DsxbSD zN#q9u`C)~H0>X@m>uoB-=OadqdV^%EO_6GE(*>xLl-0%5@+o}(?P~saS7;&*uQ;05 zfgh8tHZ(Lo`lBaIq+v8!%MK#>l275cfuL6r4^_a*Aiso~V+5?CG$$t34en&+1WEkq zB@(2}&|YMq)w|hoz1@Bi;Q|P!LZ3};qGR`>KJ}vP<6B!0%&uxE^kP=Pb=iaK`}ZCT zrj=`o4@ixH++%}i5|Dc(P3S@SRNL7vw|61-+Z-Ft`l!oR*@ybjhE}=d+Z(Cv$5)E zVPtH_KC3kkaw#cGG>At(D2PY;bf&gx@TZ^8Ef{I~|vH>=j zN8P@VI~Utm?@t=@vmg#*EWVC_PWl_z2MbAV3xB(bmlyL41-E!W8r{zoZ{o{5`q~)G zo`!Z~A*l;9dDy+whCp@LKW$q^=z8X2Dd7x>u7%oo)+=(sf`2yo-;6r&USy>aPM9b_ zVYL3kp3$JdTegKg6~lmTck5r@J3IDmhc>%ue!)&U(AoPs?9C>_@p36R))z|VLBc!K zX;z;<`FK?+O*KNK@m62Be#urX+#E-gGC639tbr6VIv6mJSQ*Q^5KmhUO}-x2j6g!Q z7ukkn`uF~VmM_ad7mpT;1C2He#O@oKs|`HiNz213?*zL_Hpf09Rf?1+GA{j3Tosgh zC{q09iWmfWYx2Ar+@nZ-qHY600~X(&GhpCKh&9HGKyT#J+@lgho+`kvbfK5GH@3r! z@puIGF?sh(TsMGX!51<<&gfRhqrO&C$kZxuF zv6@_%oCBT@zg@-C^%@+nBHlT2&Y!vfM#9ElDL?uKX98G*ZW{{OudatWeEVm@ZVqlY z7Zw-Z_Wiz1+AU9!*7TJjxcXX)`nHWI8mez?F@1rGDa&)LMZGV2#zT`srNY7@>TWDQ zmk<>~(5*expV4u>6+&Czv`SapT8hp z=$Tjsp7HvBISO`lRA_+RioQbkNz4?)xfEzH=LQ&$Rvz8AZVsn?_I}O9qSRh0{yYoK3toK*d-G`x7(M6Kp`xU;Tcc)5?tC(*A0H`o~ua1DOjzv!PDl4R*)n5<)D-?kFN@7QP?J^zU%@XN5YxrvQMBA7=4 zO15kC+`nui^{1lO4BUf2&+pZCb5R<_-Lig}92Il7YV%sF>FWLT1`F~~y@{KSZ7V}d zosu+pdWLE(^*(9M@&zR8N+dx25Tpj;oYK@{PvmvuK6*-e&gpV?luuld>ti|IDqpm? zo3r@C{FhnJguZkvd0Zhc%=W3gK*Y~b8WbEWczOLGt@_;qtBdV`BwFw%2dx;eZ*%h2j?1`F={>G#Y|?77WVU^8 z-zYFNOZi#eR`}J84B*L%nN{Hp)xCBS^1hV{+4S&PB%g7`LXUUs`vpmh>l{3W;}J>C zvXA{NXu1qy@tn=9$yI3_(}hVg``d1V4d)~B0hey0l^ZcA-n_+W?RA2w%$O%n)^2DK z(T+||f_gPINejsp2s*%T4c$%kt&M!|e=}%Q;$KmRee9{AZ&xN{4|CIP*S*aD-5U0+ z)YTZPz2oN2_zLbd_d;B>OH~|oVQEn&EM+a)a7dRg294I~$X5WXyR|E#ZDY6*upW!4 zybqjNU+X8V9#oTRc5;iZ$MwHcBUeo8b$6Z{PD6=`&0CIo-kOxY=%G{d_T)+zGCZ>P z%7I?4W*ZkHt)69puI~jmUX!<@#8>?SmYm^o0?YZ#i=;Yfl0cabH-5 z@4*L;o%WWWo`e$tbY@wP&Jx@ z>^7dI=*~ke0ig3+PBv>Mjadw(Q|M979cz3{WSX@c%7`}qmSKb*^1&KEdTF_@p!9h( zTX~809q+jg8=*~|!lMaVltdt+7eV7k;Vy-;>n`1DOfObaEt>oe7*v^8(W~;&au% z=ay*`SI-c(D^9jKg9@6U4A{Z$aI%RBV~pq@^IqY&0xPLO>5?>d2`+J-k6xu@CsmJ@ zQ4uXk2JT46jXL*JJ+ruY&K7$=Z!9pLlxPOQa3Vo~X~bv-fFO(zyrR~>d{*Ur|Nr

sz&SSzdhN+08O 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 TLBmrF(EeLsrMQqc{_p<))e=6z literal 0 HcmV?d00001 -- GitLab