From 8118c93687b89e267111069c475e02f8e89f648c Mon Sep 17 00:00:00 2001 From: Nicolas Fort Date: Wed, 12 Jun 2024 09:13:08 -0300 Subject: [PATCH] Firewall: Add prerouting information --- .../images/firewall-fwd-packet-flow.png | Bin 39628 -> 30593 bytes .../images/firewall-input-packet-flow.png | Bin 56752 -> 43944 bytes .../configuration/firewall/global-options.rst | 32 ++++++++++++++ docs/configuration/firewall/index.rst | 35 ++++++++++++---- docs/configuration/firewall/ipv4.rst | 31 ++++++++++++-- docs/configuration/firewall/ipv6.rst | 31 ++++++++++++-- docs/configuration/system/conntrack.rst | 39 +++--------------- 7 files changed, 118 insertions(+), 50 deletions(-) diff --git a/docs/_static/images/firewall-fwd-packet-flow.png b/docs/_static/images/firewall-fwd-packet-flow.png index e4bc2adcc75018d2bb0428d9db015975a50ecaef..1ca213e8790e671fe7c61215262fd331465bbca8 100644 GIT binary patch literal 30593 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 N&@y*#;iT_B`(FkJ#Uua# literal 39628 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 Wp2OESUSyy?5_>8kl=(#S&Hn+E1UO~@ diff --git a/docs/_static/images/firewall-input-packet-flow.png b/docs/_static/images/firewall-input-packet-flow.png index 1c53c34a1624342606d17281331d288fe57cf8e6..20d356bd7699bc7165d87bb88ef6e80bc1d4d0b7 100644 GIT binary patch literal 43944 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


_DGApzz-kl*!nu(R4 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 literal 56752 zcmeFZcT|(<*Df4;MXaC*sAE7nN|lZ7zTPtzk|ZrIaM>&V{z(uSGIVaG!kFDbEZ7&+2*%Nq1Zbq_HU z;ubT~=Y`C+c_v#TkF4Zb@etLE)ti|b)GxYsDh{bV2@O7;Hn%;ow|9LZz~IvnE+S>q zW2nKX%}HYFyYz&w#FX>trluzI18|SX>%kEb1KQs|qEI=T$K(I=585|vku^YGx}oo` z{Qe2`fd7;Ezdr_${_8g%Lq0pl@WzcBrCbLHFX|q=b3Fl%gBVngbx7y$FO)2pn3=JnoDUEVyhDdlm1{{7GjN`4 zdGGq`-c&QCq@}NLAJ;r5{6Bnzl-IW}pZ@n-Q9Y0TZiUZ&+iDKq{p)3Y=YRCX@aCMG zr;i2}DEz*haQPuGs^^?}aeptdXK(k6nm@r3Rjt1U){rYwEoBq~Tr2>6| zIx(7aVq(IK*mVFU$@ypBX_V{Vbq{h%eA{Dr<@R?M{h2UsZf*mmcJV$wK5X;5)=xit zxcltcGn`x)Bi-F6DFwvx!tQJpn}1%M!)DwIJZiP{yX)cawI#aF_1!72tjvSYU0zu!?o>me z0tTMLvdtbZ?l)xJZf$Jrm~4&bY(I7C6v1s?UujAJPQg! zw)xw)Z^BQ$2DF$LgV{`I@9b-qtq%;K73z&z?;=a*AepD%rm`l2xOp zz(CNI(yQdZNi>Ok^G4M={^Li+ zsjl5Fk0kdN81VaUxvVXYnk0(2_r5rHv*bbD!OZMz1;o^kQqg4u1fX0OM~pl@Ju^#3 z2{thkQ%hSEyn(R_2GhB-xx#PTciVNk<6gDbTGv>ZMB()GwEAE>L>GugvmL2{JiNU8 z&XbC+GhH&*{C6BP8F*2B`s(Uf_~LBmsWz+5G?`bgUSYvc6B84)He$FKU*I1^Gcj2$k2fL40{#~n6O)~j!=e-~pma+mi9=@>Y&q`s z!>8gqKco}Ief5tVIf8h5sl#X?t45Y3DOW4nH9b9@-*3mmcYk+7UQtoAJ4?xR>AOsU zL7B4Ymypg_UJEp4ZI+}l_9c{a@KSr@>W?2EtT?X<+G{>}@~*egC@+|nyV+KNos(0^ zdws66TScNE#>8*4BH2t|KhC^0F4K${%?cI`3oY#P^Btq-_&FvfrYMSYd8}5R_DrYT zHPUMak;wS?yf2|wk#MA6Vj0e?oRG7#rQ*K4ygGc4a*`;HNg%rLf0?1A{tgWyn_ zy1FbPA|j!e??|<^wb2RKzC~Nj4-m*LFH6hH%0$Is@geeLgD+V@w2VGQN)+?fe)#Yq z*%tgI1-z8)k3Xbr$c3aT&lU8g)|8zepQ(vj`=6ej;=H$(yuV|?AnKu7={Bz(bcO+q z;jY~&QrFO6!lb6AHa9lD(c}yBgw>DUXl-ff0oUci#N9D{9?hZm$TRHagy^W4LlY~^sIk%>D7xD?`$xNXS$q$c+4es?MT>^a}iA${ySsWu&*W`I1H958I;;~hFsxAV{R!YbifWVVc=GZ zTTTtXdnk?DwH+wIV0$WDZ4f`eu5Q%sS8EFXq?Xu8u^TMKnKrzRZkvC^v`=4PT&?d= zyIYFb%l2YztyCB-DmSpCgwJlIO7G5{JNjkziF0#vj~yJiVV#KuKQ~DmW=4#(wAsj2 zJuyv?1kLV2?qMnWzAypzZBXI4SU$ywQTOrLQIa!+XrM_gw)zJ4`||GS{%*2aKR6=3 zvK2xYYhc}VOq{4^k=dD*(B9hEPoJcGH-_D@84v}gU*1Z3Q(Rme$7hx1xiZNLfiGP) zv?!#Jh>eZKW>|G+S#_k`D=I6CsjcmPw(+vhxoGT5na=H)e_7+w0of zRSq3J{RWLJ!sg~CHe;+Ij9pyZ7<-YPo&(47k1?zY8V3PB`rOThg$1vl--4JhYHDg* zYh)8V&Z;?*l}^I1YJgyKOG2Xdq?j=(=Zt{ENd75WE=vd%xPqmF&ge02EDTrn6mc0< zG`6)V19A{{o9p8rtoZODvf`~qFbyY17`I7{;X+(tLw&srghO(wbWn-IsCa=TmN#7KPJD115`J0FWh5fRBM2*! zxH0PQ;JGtkgP$RgjVsL)*C=F4l#X$DdioeY@l_=@xV)l5Uy78UpFe73g3T<}#ugP9 z6V+>&ETdN|S0b5a_IGRdv;B7|CUBQ5-P@4_8g6d9IuWd9VthO!A%UKFISe~X#+%HR zgKxf;UX zXMTAW=~Dfp3c!My$Z=H84Rv+(i&wAa{rK@@VscX3s*mH+kzoKcnvWkp#_{Tcd)Yq+ z03E=?8{ZoJ{+M7ybhI0>?jeNmlc!EGMV$$ED5=qOQ7eB`Pa9gP#WZ@8lXE_c^5x5y z*+6P>)qD5;f|Oih)y@-enn~H1eNYZqWxgyrWwT~` zp}WR++XeF0)wbtukVgzrw?#z_Sy@?yoyK3FqvG&}cw;f**bV9DEX>T46=e|Sj8_=z zO%+iorTw-3wOB0HWwr-*wau__ZX04h+l?EkJ+)=<7=oW2Ea5Q*%N&x;78b^vBG%^1 zMx!fyHz#7E&pv65<0lU{)CC^nboODIfjsqI)PA^Pjh`|#KCb&z9>;Q>D+yy*>*vdF z*^#2y&{1Tjpdjfx*Y{qXFgH}L0kNSA@K=fburPzLOJf(4Q4)99!PAYgE=mPI#V z+GEp#-Q~^}#4+&OD1Gf^&!zfR+ljArfzb^bS&HE?F)^o)epZ^&3cDs@tgiNA55m73 z7`>CLE2%O3CMTuDw!h2im7AiXBJTCvRaciol6KJm^)fQh^ZmtBS-dgq+v1S$e(kXs zR7FFlp_WK#dBuI21%rgZ3RjBuY;T!^332Wlr$K2X-32ucCMKCvG#sk-_Jy!;B~QLd z5sMyver~kkJL*N@G^+8@>+kQ6lkl%$x?a<{C1~p4;1GKy0sIIurwZil3ZKoQ5${DY z1Ro0sXd6|!ab9{%dn^yG@)`>juyeN?f4> zDyIPP-^4BR96M=V|R9UNsy>1 zg@TX%IW8kB%O)tOBeC~09a5f-wdZJ!?^>(isAYeVS!P8b7#ALrrb%%v;0-ojUJYcc z0p?A_jCifhTJ`4ZO$bL@B>QS3fCvB-681Uuiv9%j72V;nFjQ{cnf9!zs;cLMqp4Aa z3kDvt8>$7@&1JLApFgMHH!yZLT=UQW`O|~ynz$j{wI<*KO|Z($tgP9Oe;u0bEr@?k zeXS7U(0+xhho|Svwf&z#Ngm%%WI_cEUWGs%*Z0-gNnY}RojJ&kBd>1Cy`B!2V=Vu+ z3`hzo#`LQ^-ovICd(ZRxF4fZ_1&(YeT_%z|ARy~kdl6pK3#CD5Gbm+%ECZ3%qCDr( zl4U6Nl|PN6qvKYC#9k_FlPZK@D3EwApY~cPpDK*Cph6L}pxl7esa+`43LDZ5fq~EC z#{<|V@NkSlnLPFJ2rchKxzS2aH?dGNZmW-6_q*#f79=Mvt!te8I@biGj8P@oW7S$uo#~R903R z8X6)+2{?fw{NW(K_W)2d(H!M9_r9SgSBo7ZLwkxIDpc|9IbJ}_t;+*YuH`~tY91ao z!r^cgl)}mqpG_yFWN{-guhlmIlpz>SeE2W&cuDlF(@G+Au=i|6O3fm z!GAj**+YV5r_}oTI@$27(|BWebTST)$8W9Ad$-nH<+sj2F!Q&dYthNc$;->j;|mLg zP*cwow~KfGed0py_~ip1dm-6G#mBR!cj``FAtKQI{{0sSR0f}G?Cey77})*K%L{8= z3fxiNZYuzwAv4?U0-+K>_wh|ag5mp^++!$Bb|`eP8U4i;Hf;$)0tHMrZon5&VbP(C zV)}~^!58g$VdD}d{EfxM#i3r7GmCj4|IT?zS>cHU6h>leJsPE)$5FX=(mQhi3?gN} z*@)ZL>I`5lqz0qm&`oJ7%8#(`ucbl%M@a`=tMo&;hJ?zHkPxTP4i@n- z7C_zS&H?R^sSv{^EUXV!`zkDqo9w5dp%E1kp)olRtjVx6z)BR`5IFSO*FfrMulbqm zWNiSscADoyJaEGSuZVd>Jh@+dgysaBDLwx}6KLV&53xNUxV2k+*=dhqnZ%Yw1Aa1~( zI32t(>|FPI(*`77Kn1ZLy`i&Q^E0gqE<`@~YZk(-X?+1W(!$&I>GNlH9GzwsKs3w! zySr^A}|kS_-UueQdn?dL3wHBg|GiqO0$8^$PB(X!2d z`Lq+H_8uSvpYS602j#5Nhw^e9Ku5DPf5RGcZXc(n)&UFw&s%ESpEf@J7=s14T>i=2 z-Q69+vaBT--Dtf|_wS26JUnucil`mx{&#;EC>UEpsx_)y;uKg~7^(Tuw!>C5fa3n;Maw zosDJ{7T!YEb_4)87_Y!K&?l0u_bhmk+t9pFSXk)f=%`j~-Wmz`CCe^`(;y3BS|DY5 zt+Wa%a0Z8kkyRviH4B4x`R#{v!J*h!++gDuQj34lj=AAbb0J1=mQ>&~(R^ul4ew8i z<}`?mi(`Y$hGp1=;vi1YAqfI?b5;9yq4r<7E5JX&7r`7nOtfA#L<{*Xo zr1v-17aEqQg^6!XR}kmt=l$Kc^Gp_jiHH-hWApaj&fSJ9B|~KpYle?_5fl^z!LkRS z2vTnAYtx@L@inwPwzVO&7_76gSF}j+(0CshtY#^n{1oMQ|Wa@*ht8z00kTa#*ilmju`%54ALGM^w!|z$`97LBS(Ok800sA4CPj{mT#M zrY4DbH(T=M`tR=z)cATwRpZ0L!UiCP0<{FYLTDZVI=IK@H=`S14UqUgWMoaeadqxv z7g=C4NtNyn1gmaYz-wr{TLRdd|<+7@%sDN|epcSOn zw>rSMsSwfg7u{AD=2nzUZivScml?h!thSZt=)h!D6%AzO4#Ns^xqg zwx{tE^xy|kE?Xq&<-_}=u)7Ci;k=$5pp@QVmsrFk&7*qi=- z$50Qr%=6#NqMx|BM&;$@6%gT>TrZl~fCK+}<;(uwBKYMU9pKsDuaDNh!wT|Sp5tGV z$p87j^z*VhxujSejrxp#mW?p#DYC!25~`*NqJCy5uRWqT+2<-ut$TUz1!o$wv#_W>dQ`MNx2I=<*Dc7Ov%RVn6o=;FQ3w7DczTTo z4^j{|56Uc7NJBuMm2y#|RHe@X?+Gg#*=eb1X_*6be@~UCvr;UN3;F@!^lMbLJq<+~^ zkE3k58vF-bbo3Le>5f!7At&^=E~OF&vUWsv2x;EEBq}hlx-D67c6+gx{f|dwW{KuX zzI?mknAxt(M0DUI(>Cj-DRvj0$r5xExxs*!F*fIQ;s6v~YEx}rW>(sDrW?bjc}S4V z(~q3mGxHot^W^pYxp-u@KQAwi&z{90nc2&tPC@vx>z~KY(0BeFv_O`-=9k53;HK5+ z=+Wa$UcGXGRH@=l%A3miV8T5e%w5x2<0~_!KX=+K?nlREs%qx|I)3Yv{Cs*D8HUd9 zDlwGiC{0Y)$G?2}?1y}HLBL4AL3izH#!g_LB!R~>>T`0z4! zQ?ZpfMW{b?vEy^&IfA2mc>qFF=Lc^RwzjD%c3%&!P7eANR*Zz=z*b=wV6#>Q*g$|{2jbT6PcC;aTjm-tw{9Vl5N4?5IZu37vw>dtP$aw+-55`a1+rvR>uLUVB( zN3lF>Lt=Z%Qy@ZMw-sK6gp|0ll3xS|S5CM(^pbSRB1zYLoRVq#C8jt-OIec*j*=Wnv}D&VWu^8tXRhKcK^X%`sCW0e!`X4)BSuy9M5 zc)Km?$eL%Nahd+70DQ83lS*@2c%kVfo8`AT@otWOE;1rQr?5S>0s?%o>j^U8eqzaj zfkSm>yZCmXY#h@7^ z7)?D3JcgvZv%~=fV*T?bu^Dgsilbct`ao4&s+S~k_wIC(chF2{Ll%@Bbv)4@Nv#CM zH4l%T?g3YmXs?2I?^J`u^>XKc?y_NJwTezDPkU|p^`kfzJ(@Lga@*b!M;9l!5rGCE zWgxvspMvxEQN6%OmmYCTg?%>Wv;O{QD>frgO)k=jNz3=3x8=+-wd?vEUf5^)0|dIX zs+}DkUmDWzP`R_6k<_z?hpACt|4k^(8IOO^U%s5@fs5|!eF{1RQ53LB{mw9Uh>A*-+g?n zzMM%Ms1Z|#HW(+tSlLY(H+9L8z8>NW+jyXgeC?=1x(*N!X?nc-xpjftIHPS8!G^4z zC`{1k=r|C^JH=#FgH4Ntf4w2SmFqlp#+ocHX}WL?SGjll&vuEw*#DaUj}~BC78gKI z(rDtn0fZj`dRjmn_g8SBBrpA&1etZ*1;{e*?^sOC5C1tocube;DUh)S81*6iQgbVj zyg7QXOTbQFuk`92r<{c<=af>1!2*CC_pxbduV;URTM7va=UVYz!(bD?xnqa(41NFl zm@E4FrkwJ9ESAPd?k|cJ2wH?LLHy&}mshhTlt{km3+fw;i6`Q1UO<6KSs!#LbAfy?%lIof zrkp=~^k^=WM5SC~70u3c`=kTKO^=I0d~yoxYtus~+jfckcy7IAf_8ynw)kJeYmz_2 zAZ9eTws!AQ4{>7jYw|6b9e!pp&`CTDsc@OkiRH~^-Rv?u5>}~l=FIxm^uBLlz@UKw z7O1iu*pAsYkz;I3Oj=1vYdv^>?)n5_jhP1Ba}AE`L-;MT{Tpl3{WAW(j<5at{Z(%+ z)@bbQah7~dR5emm>`D()(q0rFCYY}st^bk~9+VyA;~UQ+CMNCZxCBkwhhF2In1TJ3 zd-Hwob=KG2W;>SL06He#J!deJEUl&g?!jLL3LgsJy?f`>8q2*``4CF&OmhKVDOd~U z-)r#{Y9RL8w>x^x40Y7iyEyUQYcdBEjWeGm%AV@U4(~_8e++x-0?O4OC zawShKU9R!Lo3^Bv-DRVNok?OcV;n`!PODwPi_<~lJjyT@M;E$VjFqi zzkesCjxo%R*2e6u`uq26T@#oYz2=)LIGU9Au||yGzQ`Tr7Xl`YU0sln=n0X#m8X)t z05nwk_fXokk;-dU4X>-Q85<+JWm)ZSbM_8xA)e39%WKft`Cfm0LLNe`)!Hl-05i>w z#6xR8TdW`?s}A95q4ArVIf)@3t*fgm<@#39e4a1n^jn4R-vdx6X(y+m%?+JHs2)v( zi+H7MQ?*5V5Q^1^$jFSn-R)7A#IIk!T6>4%lY5gpzWg8{*sWzyIdPSCez3OMa4>DF zcyemHZ*{7tScQF)@FV~4=GA4!BaW* z)4$NvN8Arop&D(&6bhC9iy}bvs3n}F{%Wlg*3RnbcIX~2>g&e8D5hnuzgXxJqa>@J zpC6#8YIC167J?{L^V44-F-ICf_IkzUovFuDBC!^C&)$ZfFR`un2m-%y^h?jgNlQs_ z&{`jS;Qcod74Ygeh)IzT1quzpWhYPm;Zk^bw9qhvK&jD;_(El81lpt=(_efDDn`hnNaH7f zo1r-LT5c}iHZ!{bejAW0^Q(3aVACn8EZ23MHjEHXR7tv<`3oA^gVQf~0bM882*6eu^&{nH&&jBmPI`Few``OYM8zzr;kBR} z5F|vHFh@3zU^8eqcLCb56quB$efi+wIy0aawl@%`(de?ni2W?_j^hUDv9rI z1)^~&DXJ?|L5+|s+uBlQc$ssJf=~sy_L$c=UYhj(0r%ZH$&XkQl zX|EqF(AzbU`ExEhu)5l7b@~r({1)Wk-c6HGIsusqkmRuIjxDT}>$EjeW>DLHfLf~-wKu*ajWnb@bz8b^+ z!oh&%Uw#x|eS?p$rhD+D+qj@M%8WD;*|6&I)!?74!EIS@LZ5n2zf9A7l5mr6Zf8%}>nS5AA+~F2?1g_dU2Bsh^$lk8bcMDd(kuT7$fqib2fLU5EYpdmC#b8`kwi z1^b)QFB_PQxgCJNNiqM;QjwY=Xw4kVlg?6%O>1myyvoIWCN_9qai?VOPpv3z^HIM_ zZTB-*Qw9f0y58P#r+_v^0n5W1ES%u$6R+D_J@&d(0Jr3&-rWUMDmyK$1;K7m9z;_y zu&tm5bM2mo>ZEzF^5sAobw`b_8aBgi{?%*t1+vG)52$y7X7yoBp=PIdzCUq6>gD%pIiNn48ifX4!e;L z)onCBxXmIcsInpPqzrAfS@bTK1^VKeyruieRIncb!mJ!~1Cm`p5EfgsYybJ@pP?t? zf@Ng)(tNkm#sR=LScr3AUcC}d!$Zl_@bqsKArEjr`v97QglCak0C8ks*#JytWHA2)+%W zl_c=X`TxXJcUK)}CCX#t8c{`Jj7hEcMksl-I&-bee%Q{Fo@PDp(%kv-p#oGk1U814M0tq13QN2)~(x2>?E{^Bz2Z(QVCug(q^BWlmEOyYE z_~adoXzHB+*&N;P94Q%va0P$<`8Qa@3D3>Vt<`S)>P)stf5k;aCG{`)qs4|GAw)8n za{hPfMV#lqK_2~w>Ik^lQA!x`-lu{vZ?l}y09`v9y-BEVGl>$|;NapU-!1;cyPmV| z8&j~!pj0u~J+`V{Y+l22Ipd#y9?uVM2WuB>-NWH#qFpKFl{0%^z4=o79r$f~B%#!< za1xU7-q=esQ}`Sim1xA;0JNhu?Z5mq-HVrE>BSa)QP4&@xV_3k$hTOu2cEfibLES{ z$vCmua?0?AarZc@DX4@r5=A!hlMh5`)iyg+UX7lqr`^jU>ZqeJdD?}fF~Hh4Zm7LJbEcV_ zC8wwzc(Wcw1l$8B%75;?SvK%iUh8ulI<&MHEG&iB`Yc-nPSv1vuH!jXJQL=S->DQP zoX+9`NNc*ex2f6qIkf_hZbYFu0q}!>B787)11i2G_!OVKLG6+oO`l8Hp93YX$#2I&Pn9Jr@DUq zc#esgnH6w~*+tn}KQSf@sNA#;adVfKm&;=xDI1D7-DF-bfd@e2Vw3Smrcwb6mANfD zoT);~-7}>i#kYa?@BHyCaAJH~ccuX%iS@DH5iLhnz0~U$f`dc=Z;(dLEpMRcuaqH_bAZ$ zc_y{SUf-Jeuj_x6qifQO9`ky> zXpPv!^mGm}Mx#W?C#c4Fsajp5J8%300^?AmX}z32Lf5}oxwjUuF4e+O_9>v|muM{yK* zu^1<)!WlH|Qa3`T<@UE~hkz6Ljq!~DyQYA6Evm*+a zLsLoyEJf^J=KpkHT}tKiP_~WrL=iWQsn^47@BYxd)w|=fa_S`e2e7Gs$p~mT7`czy zQ_jOpJvr3!t29Jz@c;k#!|#9qAMxLrmH2;e{@=$;eov0jd2cL`K)#OjK6ZdSxjjEz zN$xd+AY>06{^*9CYxI&vkM1ig3k+5qhp~tg$B+M>FhQwu{`1d2eHDjOv`s^hjtTPm zh|H1%2!GFvG429szAc3Z_4WCy_J7`rd6!PM#F~y-!?Z*#5Cp)7%BMw?3LmGU(gH;V z^sr_RLvBxbeP2NV*wkMimO}G84j{k$Ut36k(~FQ0XpnG_-Jp?ybfWrbetRlPQs{E1 ztWuJw9%$*yE(*(mUI{2}(4A{Nc<|to=5dr3vF;bW(8CXHm{-BU-Ovr4v95UC(V_aA z*R@8}r+@wRS9CnIdVYE8`{7tHx>Ex~lzbb^+Az&{ysXzbVIY;|tt40Te$5 zF-K89m6rN%)tfMzh$)ZFPWf0JPZ9XF+&PbB)8A`$>~u&|TYdWbgh2jrex*l`(u}=k zAXhT!Dc4V4v_<7G%DV}U&Q^fb^B0;7kQZ=YFeHu%j`~ETTrr!3_Gj6M7qRO^twlTI zm-k2}8yep6p0+-!I`}KpXr_UwDX`pinO6N`o-$NbUCj@z6r?ragX6w~LY2C*GZ0<) z59ORfNOZ{p9cW*{K!=&RIoqvU+47^6k2hF{72idJVw}-y`UZyFhB|`k>s@peT-gT> z<^ZBclPqus?Y)uWebw3e;EIH#!nvItn_jE0lUdJ0>2RrdJksnJ6fBd+Wj@y7RXqn1 zR!dL%D_1-fvh5C`*hX8;1-nV7Qwo3KcY>6%@@wVfyQ#d{D(qr{It&R3d>`JaQk^~u zePW)=ueAB%gBMm-E+xK62?W&_XxywP<_l=thi)Kp;)37>4NX3f0uoIj2;~^Rs*J~< zNtl7<&_VV;fNt?;s73sq~2nuW0(B-d@(G=b`1j+@q{65_r$)Nyq!h zi!!#Og)~%GXV({oNg0@klLeg(4cSr~K^1wAAtmG(7m|k+b&z5h$ud2S`W_x|Ss0vZn`I`7R@3*x_&Az-`{GrGi|6 zF5~enUZYmjEFFT^B}1Lrg!Q-6()ijQym9yQixqzBu(tQGSdXHvUNV-Q+~d%98;IG# zt#>e>Rto*cKW^T<1T`>4J@-g@CuBzn=;{2PaLd-W9H}bb+1dHfi&7;bmJ~oY(Gtr$ zKzk|krFk*kMVdW_drOLwC#!0?1$FkLN-T&pR9A$GK7}0t5d{|-{U`8xrCjL)Y-hfy z#euVea7yyW=^iOWFcH}g88{P0Szu~s8Z=a;RU@EyBT|?gKxW+yvm{8jPew*2%6tDK zh@dWBxq?$ezVqV6R`bH~!QuY?=Jv*pz4<{q-=9$aUWK0Ny?gf#x3bWJbHk`XQlUc% zO&atLRc8S9f?S;N@bl5#)ov9~i;5RhRJo3=&#AcsJ=EC7Mdz-T@3A9eCMp=uFD_zm zjV{#s$ySMd<$UQYF&03=ZxOXuEKmJ%6%4P?3A;e^VMQ77cdk2k)Ieo~%qnQ->!yP2 z5kizTO!DYgxZt3+RK15d)TOq%x>QX$Cu{3mMC1+)P8>9l@U?ptAcf=tvB6bsJ$?k6 zH;s&pe2MDuX`p6MH+C!CGBewC=#jZZXKs<5Si6%3A&%J8glitXh6+pbM4mPwVBN!lOh5e+ z@SB;LS;75Y+Dd|+D=~&!2PDm)1kD6tJ7sTsk^JfsJI7y(V2>PQLRl)wey!p(T!xl< zHL#dO%KP{4k=ZCjs)!6bfyk~4Iw`p@P!Ks#qmnF+%u0bByKJpm4g2r!!tl{&&d@V; ztsoVj{;@PhhfU;!lKWY!mQUqPL7fHj;bBpvXSA!cdH7k-_CtLd4hnP-o#Y~t zO?>rw92y5p4=fkZCZH3QS5o36gn_CYg9T;P1YZZ}^C^EFW9)$5N@RFAqKlkuj$+rZ z@hN9ke4Dbm>Ox!xeHAtXhR4JrSpLrQu@PhL~BM7w|oiJ<0W$P@~`$APF4;V!n8wB zxg6^0Uk`Xu*B^tj?YqC|gO33zgi0GSS2dIe*o?fw3VBG0$Xp9N_jL@SlLlD>GX|+1 znE1`4@P_4GqhCPv3zZcYri)5&=z4JdA7KsYpvTNhO}z&WpMi8k=)`?II@Sr<17+@buG|8>DQg@0BAz!?Z-ReOX>jO-;9Wt>@%SzFx8LymN;$ z-+t#GeeU81k5gMi)Oy-BwuFq8?5)ktTKmE{;NGdm$jFP}(M*=fF)-$Y7zh^XVPxJ0 zhD#N=t2OKE>zBQ%5&1VZBEogpl{^zuyOWulmq&P1e{$H1Qh?0>JzL{w65iMl#N%fe zMOiQvOJA-=flv;|D!l~*dF15@A~Ll)draczz2H4QKECOuTgg4(5Kl|P#QH%ksY!8R z>;CqJJwVY>#iz=ehU4xOWm3%h;^5q|pi;WIC(}P_e4*Ub{Wy3KbrzXrocXc0E4(}r zBkVUDnJ=4eYhJ8gWxTfRWp?|r=FOQ8bt#ElF?6DgnX3y02WDpEuZrrzIOQ3A6Q2oQ zbT}y_MFhq#K2)NvA3y$UStguj;Qs8_2-DM+yOV;oCuaXfbj}EZfzg~b5F_K#(xi;> zIwn3#&-TTXvo)}f3Hq+xN`h8EB%Z8ZE2%aFm{I1s6sO|G;|B3k*=-$WJ^$MVlx0>ZjI__XpH$+xi1<6 z&@UscgW{p{`zb>ysiz^bY+6SYHapYha|@zAkA=e+&ONLS3|-#cuc%+f%Z_-;v2i;r zRWv+MmA*coXuL>qQ>gaNgYAGYMLm)F(bH$W-{RZCLDb>a*RAnu^$Wvv7VoF;6_?`@ zB6|3&=4W1pwP(j6aHo%EnLujA2L!nC74fhCoMC)V>W$ z&v|OT{qb88oeb_nsW7fCw!gE2OeeH??ZfB@ba?LC!P-J}*8~mVkbT+dqtd|-oS{{< zzjQN9wCj)JO`oT+1S;HY4=a_uZDjYD+KTAoK(hCUYefAYqyBH71;X6u?{fi8OwF`R zN|s8DdR5h>6nnnwR^6f)yBy1qf_N@oUm&yB9sRxU0aiO6Jw7`^U;<>nR?z-(z@h^%Sw%Roe?T~Q&tyAg*DfB~1KE9UGwzKGHBVgw5#c>TdYd#iY?)C4F@xcFrwIQ9@grEj{GI zqBj>R%{JTIA6HPgJimmV`cOSd>HQ)LxA<(S(Z#ps{LO2=tKrB%2uxZ*>4HpyZ-Gh( z&A)q_2?L`RUC*hmy1-Fq7*@+SddLbgY!tls3N0on9qBU15ZhUQ)C%c%nV{YlN zuV-vG4r7e(&DWRtcm>tL$^sy2x+|L7WaNAA<|N2YG7!xo*~mQ+;w75@NXYiaA|AmI zNTOhb!D=D;GrQkuYk?fTx|(OQD~|<16n85eJphBY5ud-kAz71P8gewv7XT|V?*jIY zr=z1o=80jFBR4Bc7M=nO55`>_rx*hm+q}IFN(43BOdsS7i}Pc3Ao4U@Mv}k1(NS;x z5}FGGuWE4BVuBFQ+ANcec66?Q9X7jEAjK^dD{71vwNSkKq8CJQL)Sc%m6W1-iWn+_p&t*RG!|qCDg3-P8GN-%rd&_j< zf+HU3ASDMN0i&iQm=iA^XoFE+M8pMn-54BP*mX7%(k*Dm`FytrM|)xPOu8scEDFCz z_)LlFq}ZJlht@QilKgJbkaCGa&fDo$F{m=u(PJ$z!T*zokFK+feE3z8e{N(rYdsEM z86xW+dpyBJv)GAwD(>z|%g5?%mr!++HvBRA%==7 z_r=T3Nfil_nT`oVQTq{;i@y&r42Ny^b~d4K*wbs@hZ$Xy>{5R&uql}E>;lbso0nbP z(<2~>xtBNS3sHHm0m^ZT(BL(G>qzJgarcFRrF@{OmbspgVnZB^7n`>wTqztr5FlV>Y1t8tJ#RGsgpZ`P zzLXdv>^&- zO-v6d$51KT*MU2jRzu1xm>FrBce81EduQt#wLdbc5>#n$H>~HcL#{3MF)J>u<|gyw zr#Pwejq-ke`+NyN#8Llw8@e3=em74Iuj9S9L@h-BTA*yoptt@D+rXnG70V!IWIAgB zV9EX#2nhMz7lvpSo7&oXL0#(GTgn(F2YumQ=%5?eiEwhZN|a}}^R|n2KiUQO)(OBo zd)@6CN~)Q%mg}-;Y-DV(jaMAIUH+j|+XlGHz7rSPa-*nGk|~JmdqsjI2?SElE3Y2^ z2qk;Ty)M=~Ej0qcu1(55C%@;p#Lm4~Uh|yMj?|*{nVVtVxQL)LR{jrDmHjr&;)`Pq zO5)$7@WpewfRd+Uo?h7HzHykGw2I2f%hTm7Z;9XR%X9OR{o#;%xG<($5bUD4`_VS4gSSbUl46 zF%36$P#3mI!|usdG(@36er+w*Ns`W?q}xwaP19>;>*^+9rg(bTeH1y& zMsPnz;O84*Xwzb{G+_awtX=!l17KvCzr|NU+rD?&L~E3!yL(l>;)Pktgr)eM2WLId zLPHAyWePaFj-#HQ>h^h7@tAWV{h>Yio;KTL=N1WK!mZj3>e{BMe;dC?(tlAzxVUM$LxU{AjHS47+B4 z@|P2Xum!7|Q^^!$jQmy}X*SvPYx4e1HgW_7;COg6kjNW%!^tQtF+`-XRBp%x19Do_ z;y+X1kPA&s%?y*>Ssmo;06!4GDqzW0;k1iGa8QK{WM$S{w{HC- zM}=x@_xOfPSN}cwcT)uE@`algK2`LLVRSlxSK7mo?eze-m43?Ce zkJI?{g1#xvg0XU8NfsHZG}4dER}2X8oev zYx;0Bz=0~6lzs~s*5n*8(W<~?ktCD2dE6_MTdxu#$DgV`lTjLBu>J4SK;SFQqP}``l z;9u0N@y5)1iZL_EWM!a{;Z$Id5(zd?jeMGLYC_|_g*fYaNAH@qV(V}MAa*;*#&8NAHU#04#kL|^tyf!YoDoE zL(jmPW+2BWj4d@<+Ip_ITUp`ItZ>vy{Yq=#X8@jdd!p{eO;>&Y+T{%^FYEVjkQ_J~ zQ23MwI&at0;G``h-&X$FL45L2<+s-zY;Ci9EMK=bs!Ew>A;To+Zp!}cU3LI9{CEAM zaD~|)<+&R(%U9aQ8nntSRDuSbkw@i$<9`4R%>avqkT3d&!^!!2=`el;`nK6-c6=my zpFtUpPKoHbczOiJ<@4+WsX4aipzyw?I8tm8_6sub(1pT@7dpYEOjaPGE+|!E<_jnc zL1x3wIwGTBy9q-2#a@KRe7QS69!4>UUXCm^_1e(h%26x&=O0U$DtpWa%n2I|&2!;( z2-p^5=)FFsdSIo5314$5oqvhNX5~-1m5dowgvgdxjWFtPv4PnjaBr=0bXVD-W;08> zKtB^`GX@Di!yxKw(U1|1+=nw;y045Q!2!z7RXB(OS6HYVFX*5R2WVyZo1x*L42<Y8A*%rd{?A z^cODNjA%jw^px1&Y)2+`zl2>I-8^;@bx_hAG!-v&by^Z|aD-5fzwC2a#l+kXxDhHikFTOBf%r6#xegl0>Rx@B}6dznYrUhvE4x3c$MB>LRnsJf0K6xKzYSD=lYE^;hzRayjf_(CjXg6nBiS9t!kva%Ye zaLoe_uIo9qPW{ptn}nMpNlOb$W)CB?r`J8{?RrFj(u))<)??Y^W*Bp>fs!SwZ@xahCh6vEZzbJ z(7$&DPOM4Zf8S}@18mK}_cd@W1?&IC-B);3^>tle1OXLLM5RMSP?1Ku6bzJ5>F(}E zT17wsDG_ND6lv*_i-^+QaOv*uy5BnZJnuWkH^%o5e9!oeXCQIzIs5Fr_F8k!HFtWe z$4bS{JRnR~g-7r*c3=03fnSbu;1=vAN=W*A`rs^T>>fg^NQngg{URN~JU1T5(eo0Q zKv7*i9YoaE?{q6ze$P?y^sM-)odY;VCKp$pdKSp(kvQ9I+zELD__5J!qQPt{v>?_ zmvlG265tYR1TI0%^1<*yJ@*X|i25me1RaC<2_Tq)fkCneT?qUXQhd;)gD2UAJPp5C z`CVMcKP-tJqKC!=IrmH}oW?S%XDY2ITwm-a-egnuz4_%NIr{-P2N1q`;<#*uwk59;~z}Z<%^> z2JWpTjLKW61DOTYmT?JAVfyB}%CT$ocNYSM1=Wxr*o>g>T9C0d#|szVUot_>wzwJJ zWd=t7Lg~~;jl+?S4y0wb;osmtZ?-}Zh# zYbrPn=5vE3w)7+@34Wx$KqZm&Tk?VBo^&|0i*NQBgn*EALT~vpV>^t&7qF~)WKN|5 zRnu9A5R{{Dv$4YSd#{M*=FDx&0SU=C-sDzX@Y{5}ex1oS3J=9#ij>@_HpCM`@#)ji z#2c&P#}ncRFQnzze*Z)FuNO#Yf!7KO%1H5KwQwu}5h~2e-nj_CuB-CT!>J?>B@GoH zztdFCU{*MwMO~0W(nr)i1`ZB+SXRB@YXr#lH!%JY9n`vqw{FzH!^O}hx(QYn`cF57A-B&-~qYAodd>s}gn9Fuxyhgn;4!as8_FMKU9p zr~z+RTEKcu)`xO-`kP!Va}Zm!W?5ZZcBQtaxF!>h-ZiuKdFu z1#a#Sy7^{xqg4ki}XauvCX&kyK~3>~tLLfY2JEb-f}85xr+9?DPOLX7si~#WVu~B7s57o6KbTW=D!kR$sHCEj>gR`lr%aRk zF?Vz`goM1Bnp<2qr7I>T04M*D@bO!_LCp=29}Je`#UZ8zzlTnv?n)u^7p2!NlF{$K zXp9O)yeE%3o=iEHZviMd*T_++c>n&J`T6Tt?^?6zcc4!c1fOJP=;Itv3XTR9Q!7=TWO*yc}e? z(&7D`MHA6DlECHdzy|q&|Ya;6vA?+a9AY z32wah@u>i^1F<7HTtL%vp`^qRq6Nh;IS}5xD7j>enpL+how_33@t-9I)>Sglf=UI1 z)c(#2{q*o>R#s@7Tbn?F0N7Gk@@Y`GpJw=kL_D}kOOts~zvc0$!$xgKWnSzV0bGe* zU05yPE+M@h)p3KBbt6g&HNXf@4DBAoF8nAwN+VtvpbO8N^J6?IWdU8n$e(@t{=F{oOz%gI5pEv5^L6*tC8R5uf}K;lD@u0dXF1 zxWe+=@Gek3%l;>m=#(;uGXS!%bwREsL4FTOxlwp2Nl6mnifU@oH&3qNbrR?|w+C2MC z!dppquR!gofJ-O$)yCW^vLTbv3ic-pAYDN)w0ncs;4VVok=e9=?q<$_2ZxfXDuo{% zj>PE6HsEs(I6xrUX9ab{-8OH0g||JM1lE@M2@a*2db4Lx1?Q_ExkYI{1tCv{j*q7Y z@+&CRrsl~<+TLC0&55cW1BMO#95Qtj%8mWxkp*(V^J(K_+v?{J$S}9%pFHxf7ln6x zz#u0JqzBISHpuTgD*d~VHeAT2^MHoLA9S&O^%bz8pxTuF{gq&0p|2nKP6?iTwh!IA zlhJNT6MYHF3$HRVH>3eSDdS&&bb!D}=o$+z!TFy2$tO7d8=drRSkP&CdEqBFDslc_ zXv%V1D(oGoVEcFJgnzR^T?t;pvenJ6$X#rT{JX=C+weGcG_ix27ht&0~iB?2}r||bFu4jlaq9MW~OCf zFxXAV%~7Kq@r+KUDg+Tzz?r#Yg+F4WVEv>Fqa;>C{}U}P+=ISolgM_{3?OTvFkz_^ zJ>@gX@Xxjd#o!ALQowdxrlqA_Eh6!kgd}U;R~tv7_P_6jFc%CriiEC?zDfD^t-(0o z>0SsbY2qZ_!VUVWLbd>#+o^#XLvF;SX*mT}-v9nFS8Ve)xLcpcW+g+`%=mb1U;pR2 zh-n6Ve{yp2={;PDs0SzW3xWX=aAF8k@NFkXhB+?=V9}G=2_N?RmvO!sJgC*JuXoQ7 zqr!YnRte0QPv8{YIA#mg!-qE1g){$ib70e41o+X=w;db_m52ZRfS~NM`Sf#gmp(;A zkbQxnIyku{2??lfkG#qE^&ypEU;L9WATa1*&f zw-4{$orNMG4fq-$$YCA;F#xDI=sCgIB?N>=)kCsLvJ|Zl!GVrchs+&t<7bkRuYm=G zx(c#+7^MaA#OUTBVc)R$cu(ad=tNcrPrfq>At(mhp#vSzaWWw`fI!Me-MV!PGLY`J zwxouJ$MIk~2P6@E9PmWY;Rc*iWR>ny@U%ln(ap_GTNirM&#A#P-q;;)uyOEAK@4HU zkJmzuTB9N(=Rhl?4D}O~TWrDf;$lG+cqlxWnlfO<2GJJSS942CMIa#{kAP2P0P-H% zW58HV9-b~7`8t^D&SP*D9pYZK%;GE zfGdJrClPT}g0Pp4Mr(t(0RQz^rjd+H5H~kBFZf!*0M%RaSsd=JQE}-@mADXyYRc2L zV)qiUX^2}Thxc9}0&XMNY&c>XJTRaR5cEY;d>=ynVhp(LFeBs@2taSKv-bdz2KVpO zvJnmSXVTr*y!Mli5Ti%L1Q;B!0Fk*7`1j(n*4cEZ6ajuLc71=53dMK^qL@Un1E33@ zVCI~jlheDuwSZh2I6Y|~pkNtpR`%{(uSo^Ot=wg$2jo()^s<2bXqa;Z&rz!~@b`)g z55Ks6bhou4G=Jdcbf;-t;NN}r2Er*smhD2`66h+ z>{OIa4?v=bc;pt~ek0i9o$J!b$K-e)SwQp5Gni#afgH$i|tB1)NOhfN4WCJBZgB zV(13{grBZsHAZM*Ngm{AfFp-BdT*L@hY)oNNdVfi!0ONfE`%s#hP|<#fFwT&#|A#$ z;NT=zcM*!;U(9da{7bGg3lL9a^;p{{E`z!+Qgv|_BK+7YDRZf!^<#(;Cuam;O5RVd zc>rWP7w9W zG4cavE%Cj2dBg-65t<=3$6|YvWJdr%MAc5TpNGG(U13ByS~!<$fn}irWbyz#h|&t$ zOFchmF$o7B5k7>#fe;=69||4XAdp>@8+_fi7TE#J)yL{FU43m7DYEG%VQ$>M{b9%& zk;Xxu&p5ZpadW91)+2&WK|vnb_2KG^zn4`UOSDEkC|a@l+|ipL3}Izqd5FBoDO&+Y z_~|ULOi@g1;0_DfXc?5=h`ZC{aByzVgdVeJAhPH}ta3r%^f)}bWc(~*7;d3+5Cf>$ zw}OI#A4}w@O+3V;5$p>JUu+nALctLJ$^l*{7-GmEN&vvYHxcy_yZ~^gcYHcPk_tNj zVyFhp7UZ$#TwG8L3^nH}L9Cf=1Af~3>x~>+)3G+@AhQ7U5dJ$B@-|_|Y=C^Ao`3NhTTz#bof9%yWMiDcvGf{^#|A?FSr>eNHXz!}D^z|k2{(M~Wc--MDa-sy=k zrzaF|>P42()_^S`7X|~4<$~6Gt$$p_iUD?-MWpk9q^UP=mVwj|yazGkrHI!Xl9KW| z%`2V=EZ~9CfWbsmsy#5=TR`UDVmc!5N%#ZWGoWG+-$Wp`g|m}Hnp%ni_aX~_g5q9hg?TgOkkDoj_+QNc{CKZd!Lx95)K+|%qe28vY z(#P6&ZBPvT_A}!24GK?F(1t@H3y%(PLlj7FoR1U{%f} zbXdVjI#`p%F9A1ItNy&}Of&g4H4l)P29Xs^cO^^C-}Q${_Y8LHe|M7$7wpN=$pNcL zQ*b+GW5(HZt2o|qs@VtsGh~WG+=uWOE%QyT|KTQ$$$OLJ_P)7^zGAw$i9Oh0+d<{$ zj)0B`%?;&U4ic=x0JDS@g6PG-PX9aX2_t~iLP-1q_JDQ3L4ybM*s>VPQ5f+Mg}{mM z3ZV(Dh{O(-F{rLUe!jnAjf3(f0l35`V5`;pSi#B3Nxj_JDp1|4dEvlmdLM=ZsrLaJ ze{=9OiP}^wK~nI&=R%lB!o>JEgkTOcK(Y}KeRI&E)eLA>x2Z@Kz+K?B5En_rh}sQQ zAX~}wM~}Qga)7MD`AY0TW%ZCJYE~Iu6G*l`N3yE;O?ec7x*oi9A0>KjtCgHTjoN%< z2>U-{I7BxXCusRhbT%jcb#4zd#>id(GrmNl$?N^9u1Ik+%*QOqhm>`|2=fD|`@cF^ z3&U1)1f=h53b;RcAZkWfGKiYZ(xo92EbI}>$|392OQ%u36ej~v;J#xG`wu8^Secwq zty{$)zeN5$RL(!>k4GA`2Bb0xgl$C)jSR5L^4;=KR#N(kc=p2xkBKp%+9r@>GT;&H z?#E|Lep>;B38s?05So7vU6#601F=mQJmo9K6Lr%8leUpyUI1 zLi^WIT6#LX=%;FGlvRRwnR~9wk1D1?1lUV&`Vp)v+p^W8gG^8o?#Q?-IWGVVj+5xU zT#5A>dNC6po&u>Ft*DzKc+DYj5lHBrKnaxr;X5$CLy+Rk*Taoz% z!gW5NT}MW&9}b+Wbp;46OAH?+RU+;@BivQgKILG!5)tICnIXj`O4#k zO2qbQs}qE@15RSXplgTuPufy_3MKk)6)M1#%FE-%T1B8S*F9Sb!3Zi1Y4z-Yj$;lW zU1DOWAPX^vQ!@}C9u8w^H?>r7Z|((?WEkmgvxA`JM*aj0&+K6ZQ0ojr@-q^9j(Lbm`;-~tT^Vf3wjB=1}gS6^U$2f+dyQLTnD`#o2v=bZi zSHB&yLPrP+kHe9z6_5+Q;$DxTUKWO@#GnQO->BXa9txtenFM#ltq?R!)rntM9E^!) zi;8q~bm;TeG=Y?c(`@n+bn*<}LaPw60n{1ize(Xh`D|O5nm)C%vidcX4{0ir^uduM zZIGK9<*Ih|^&xtX0}S|^lI)g&RlrDxd7%nL+)tx4}^q@8&(GT z`tZV#g14-!%z1~vG-o?#25MH(!_{h#R3m~?xbc=-vF*dyheGZmm?dX`d{lw(3{M&M zyvTb{gE6A!l?vzO-_aN-HG0i=$!qbv0Jxk#RR$3vCu}{-3p^km8(57|2CkoPjg1GVy*X`3Go)M_+ z<%p!x(vjyLiFjD|@dGB)h9C>3dV1S!BMCBFpoDM2i9Ap!;Uu;KI|cEG7Y>C%=77BT zQ30~CTjW$IBjlLZZZ-Yma5!KBlf4nm zzi{24iUd>A6?UG4z<2L>fhX`zdNG=Gb-#E;WPq`4aPR|V?`-ypNcwQ94$Noiz$F}% z)2j^TnQQ(t&5G?Vu`z*(XCx}Ft%9`{}8q>wmD1NApXh5Mqjjp{q6t+ z0Gr+|wR`tY!MPh3^pPr_l!c3{Ju&TK9g{J#7XUoTG=~{EE<&V;hyvxt({RXd$!)d7 zb*71`j0+yZy9Y;DuO0{RM(<99BTl3{Y`hONvefb)Jl8F}^;$H6Lou&0|9>Jv} zKYh9(4Ms)n0Qe9590G^_qYyX|DrFK$7FxX>R9X(QjhPJymkc}rPA`>=yu3|22g8LW z+SV+#SQF2^`8xyya-6je8uL8Gm!0Bpk}SY931M!5SpaT)jW5v!5evhFQ;gDfOM?cU zY`9BA#74!b>jN?f&<=rMC(kFR72z!>CeHBTN(4MZQdB!=NCKrHSe*axG2eka<7oDw zcn3_`Z}24Fp>hW$gplKGsJ7>p65^PBJgUjC1m%k+2wmV@s4+3#0Ez$JXJK)?Zt#r6 z!hddZ0X!{JfWXHU!-^a%<|F3o1(5hl%TC1s&`<~nz36(~HROy7h?|gpfG%ElHu2++8};S5`d72CdB(iRG)&IeG|fbjZs0d1Qmyv}Gy zDm6az685@U+jveFeR&U*255hxp_w28|2*B`7m)`V5Z098oExjH!tE{#I#IU*pn0#X zI-`8vUqyx^445leh^gS|TzG^0!h9usaTC@ZJT0VF0lGs*NFW0sVjs5|okv+k#Cx!N zszr^*_(0qp#G&A0dw$;p2Q^Rw&_>@6Jw5S6VmcAkD}iqef!M<3M&_vnL?Hwk0u$iY zbmCcuY;~_HS5c_{p;4<1%6iG-&e@_C{sc*`Y@}C#H{rEfVrka*37{ofLB?4CT?UB5 zImj-F`kkUzoPaflAfXEF7azLKiJRqchk_u3fl{!f{3Rj6buj3IE5G^Zub0RXGfl=0 zf$E;<$_=o4tXlvK3!=WVx;m9wvuHr|*la;jD}REpyJl>&F>rl_?jkPA{~bwM$ot@z zk>kBSK-WO{Lf&+aiIEXxjLK1(_R^1bVjW1z0ul2vNbHcH!344?=t2tMJy`=wkcTTl zm~(;}4?4U27HuG9N9Hg{DXu^%bioa}x)e1vZ>Kq&Y8|6#g^0RD)e7VmxaMu;m^6RN zdQm!Zc3RJjOh=7a=ht47j0MnJL;#DxyMd)?@q&@LE+C6&Bo{lfCJLR zfS@x-lNyv(Or)+gdz63&{v2Dz0}(qBEWYOoM;%b*`<3#?&%h!G`%&c^^0k@h$)TP&gaS)$<6L~^h1#Bb;idcjrV z5v>V|kPEh5km5-|AqgM*9F|{dT&o`(lm@CMq(s$=zhnz$`EF1|8S=#<=GPzyPuxm? z>Xgiqc4~<5_WMduKJb)2*4e3evDXo81^nb0 zxTPbt5#X{(g|zhaIUoc{b6FWK8-K@&%(j9eQo#Z6C7DeQnTJyk6aeOeelyIGnwFCY z`Q^)nH)6SL+d_YQXf_R;Pk(%5HFpj&{+nrYm93!I`5ol}NjE4B5hXv;mj?CDSPm{V z5#UKMb>9Mb3pP7h5Yh>#s{EBrY!dM`X5N7Gyr0#j7HYzJkxMI022xo)A(BB3*6BLn1pIuQ=Q8Q*|zWWJ~ zL{xCckk%lYwx*`0mIY3A)0O+yCgp8^#Iw#ksCigYn-5bK`r(xn6`9h~ENd32ZKAB& zLVdQcX{Kk~Ds*VX_f{hwiMrYVN?22vQD)$m4$!eORG-M61=Sg!4RRz44lcealoNTX zx2Yg1BVw+%q9lXS{mmEEnzin#oZ}-0)o2mM`kV{DkgUmvXvs-Ve}pV|^n){007F39 zao+_8D?NDN7blmBbU8qi7$SVl&27g9x+^Mv05w5ZsyzMIl$0Bgv4JG9Z1zhauj6c+ z?TTE;b4|@mXl(Q^r@m`Yj8TFm4t$|AK|-})!nMz08*l#XNUxgc+T1u)buJ%D{45KJ z^gR{`+K6r#-~*(nfG7c(fReIuI?U<9!a{qYcmTqoK7#B8aa4y6Dg-rw*$heWiRUv! z1&CTDE_1ih3>q7Y#{Sh+d-$U7R`ylG5hUwXvnXULfKc;+$`k>@Ar^Ik=YZqxsvdGC zrCjPp=FWrr_mLtouip~c>jA@~_M=M{wxDwbBWq=twGzdher_TUpF@^RhT@=AVx`C_$0#&Ys0sk+VnnT zqfuFAeZw)$%`8vM62?d~=>=ZF>#PuS(11-FE!2Yc;el+5;jm2KENFYxh##ttRRiXh z@X!l_Q*|vzskG=IPg~dKSeU^NHuIyQm!C&AFK7dauFFJR6 z7ub+T~R$-dyC1^f+=An^ZmAuNMKcgc-;sleSB^dyHNq;8rl z35hu#S6(^92doNhu!|<$K|XQ@reRwavxVdgur$XKUsoEHlAPXNQ)4o5bu8X*vbs+@ zlU)t+RlsAHoEsOm9*29MDX38~uYwc7pooAY414!o{IChVX2&Aq(y60e0a>MPq0V!ZUKPngjtMq zIQ{9Gv`bd&pmLWTi8#Oj@UmdaLl>VnitD09A)_Od`%uneTj74D?4L2SO2J1bxsAg| zpS@2h;HaYsJi0n;$t&1X?K$${%Rkq|h#M&`PitR&9``-Htp-k)(q9@uaNRlRE>ePC z_Tn>xr!Brz+Af^gipIPXY8jhYb5+NS0Yc3%SM~Q0n^fqu!K3GaNrXZKy>Dj&mc8OB z=B}`*1CkjRa1+-*yY}g`XH^wusJ38`L2Ewmyk8B68e$4$H!ySlMnN5~O9$!RZVNtB z`dpiM@G|8aRSlvvaR?Fm21*O$TpT#GhVl5y?*zsFd#C(WN(SNOV1ZX7t0&+Xdv7L~PqG9ARAOuD5v%{BQ9VQVYTx zbs7%5kjAO?UQ_5qBt61j{@rNGyU()%aBrNP$tU+NPrLX4-8t*tx2PCIAQbo4<+IC7 z@J^ae;vdc({4neF-NwU^Ye!F{TuR<>g0se7DIdsacLLs`aHm)^#?A>OMxS{#~bIHwM!d4rQFmnF?yDa$#_$^yMSFCID3h(mWN z=gv1|3L}}ENy=V>@n#Bg>2m^*)v?X#;Fye9mCOq0NQAyck={lxy5{s!=WcD5b7zy0 zT57VK8bTBwzXZdwUg@rRz7>Gp=1=Y&JbSNFnpsZ8#U5nQ36kn2{iiNh$BT>Y^^~gJ zWj>Af>aQ;6E`0>pYr`b`VH;2QZy~eUhWWQhoq5%^V7?U{D6Ww)B3i1NcsP+Ihs`AS z+W6$PGpXMlmp*T+(Pg)+*^KKe@sJ|e=GtKN?p+>U;rSKxHbK2^m#oV$i}ZZr$IqFR`H^uk zSGrmS?RS&T9TUjKAtQ|4_1Gkzl9sqhJ?y(5HZi_)#O_sRU2*B~iH)azFfKQkDrym-s!YJDhb?Uf%MHllVRfD9S zcBKdCW<|!O*E*PY|L#sWmYeG~UpXjh)RJ>gOdwNlZ8u+Pw{1(tXHyTQy~}{3W;BBP zGBlDY)QFj9}y(n|<(*d0pN<#V>4uq9i&9}t=_Dz zl`))tJz_XRzED5()32V#_%#8^;(#A!Nq@90Y|sgt{7H7JvwOotKD_(|@!vP(Tro0z z2PB63qUTBJNdK1G98zC@Lyoh%T6z3v{nyo|7vpN$2TP4zg0v!qtEs+z_ffW+zpS?> zJzA#18H1R~&Uo&Jx%F23Vd++p@A^2bVc@7L#Eq&|x0ik-`+`?9JpmiTkWL~~ha(3+oh#53Z_ z-V2#Hu?QFslxp$1XiI{~W6f9b?PRIA7s#T1HTk2ZrMiLxrK7Xo)IZ!_`m)<`x<>v< ztuC*<>j*o^@-U9X-qdrk7b~row90-JM33msez%Jg+P}OY=0)z)MVWtwI0R33d{Zsx ziLAx?3%b6-U?7&EQ`AZ`?3;ZXM8$vFr(vBNIwAkeCHn^y?|l6> ze@l<_84(S4_-dW${&~6<7hctT**nSKFDkXzSkmRQS0u zfAKftmmfQ{j~c$)Z5Ev_-hJ_h<+=f9SE3_19VM}ZmD3&6XFbvnmoBeP6$Qh<{FzvT zNsjZ~q3fa{N!ikIj^alJ1*gkCzWAcaWQ#`v1uRkHPsn3L6Bg1!kWmhJB>JYA5&nmh zUV0QAJ2Ae;gTgy~x_v?Y$yuMP$u)MhzGlJJ)EBAne_fM5zQz(lGdegoq1n(nQTLKV z(0=rZvFN5i^#gg+_K8>-=8@J12A*{bpT!Pa_B@CWT)ghuV=pboM%@kVZ$hTNb#ZzB z!4Cc$3jg(IiCIVg|7roMoZhj=)=wjH`29`_agW_JUsPvb*owlANT?v@+4TaixpYzQd@}a+bA1W z)U5YnBlE)V>5pIh#J6!5<@Y{8!uHV(2qOlK1CfivxzU%^a`M-Q`0WJDZ*s6PA1tZt zO;!}|n(vUjr|WBeD|vu=wAe|Hie~&`BtJ(m-QPcV}}c4VeLe8UIY{0QVdAaSG+9?2V5uXP4@JUQfUTaU*pWicSWVS zjOgfy(vtr5+~Dpj_vFFwXa8QZC%r;?-+bS)Mm8Ep;$9+}h=M!ZA@%)Q_cHAt{#;uf zhm@9*kcRcfOL5{)jQ$#ZOBo62H#8n<*y)Qce^Yhs0gsotP}GxmC7~`cNet&CS17!z zy9Wv6(nDpEs8Tt7MOJ1t9tgO@Xm>;f~_W_T3 zm9?~j`z@Jo%x-(GK&Xjn1j$rK(FWChsgy>jCsyA)2kgku$Y^L=3_u#RSTc4$zgWo8 zU|>iEi-M5dfSjyvZe% zl5i{bzEl~a_1ph#Y~$T4k)3`pAzV3TINbgKbMKX8ZY_&LYyA0$4x5t12R$AO=w08| zB9A5;?{yZ`?`p{NTgQZ6PX{wz3@Dpvl9!V5**Bl|`}tA@CgDoN zk%XcAY;7ND1SOBh#W1}v8gYkDSj}x=xkQ_?$79Cl{D$7w;?fQ5;3XYBth96#6yXg& zSdMAbideSltqse*dgo4IyIo(5!4J`Wof)3c8*bC5TQ zsQ2wQx7z%A%jyi?@cFk%=!X6=+fiEqP%mtI+Fl}57viwYT9~nwHCu|yFAYh1ksN?` zN{KHpU{k^>D{r&7i_67s=1(-b(Z&Qz;C_B4yxfKrcRyuyKF@pXPjt1%O#4j#53uwS zFyEcqsH~cJNsPhPyceaunQ`M9BX77F*|Kp@!T#y?9?K)v4E~%^bosP>?y86mEvCA0 z1j|OM_iRyQ^>nOD=Ja!E9OH=SV^92zUqKJ&ViiYNUH%SWjh`&5qqz*|b_Vx2QLzra zt7`*ODeo%+1@qB=TaQNq(OlThoP@Eea(aVVpRiy#e-Y1RyeA{amnHW@Mq8wJR(rQr zo;`aJeY}0wV`0qX?b#fi8(BXl8CN{_P1f1tu5#ZF_cs=6NpEJoal5omUT2qFKY3he zAyLvgd5jWYyIBw)lP{j{NIX;#0>_^Gw&a77%;Rc)_1G`{T*rmSCb7+a&Bo<(TY!O} zolm2T^P@*cb#=B(fr5vbjYmK*VPEQz6J0&VAR-c%l*9nD;|2!@0mJRvM1g-_)lPga zD7X|+FJ)-R1gi*KV{{&waz_)MIkP4zcmMurxzq@-IZRJaUv(9cx_^Ic&9%gB>lTTB z^^Ql%%n#Mu=(C>w)h|2enBe5Xu zDQ_vWiq_LK;KkMy!fDPx?#gilmGF5-EN^eyOjq(l`iVFNA zAk6c8#o+h%G!%_MS!}VGYD4JpwcX)Y-uMjI=XBVWVC;PvMVsTf6|74BbTA5n2=?>w zfs1!ldE#O8;VTjSFXOJ8=+o%=W%Y-|E7+yV-T6McS50?isJ;1B(r@*nO~^*vRw7ptQmQTzRM{9H4Y!PC&ly&WtqiaGhMjrig1YtL(jZG|KH@g(l9o$j$Y_)u^r zKOjVUvM*ZFqrfa`?qg? zAdZ6^Ft^`QHA^{8js+qn+NV{Q6SeiZpmFNAalRg3Z!g{po6gmuVb1=83cXK@wgNxY zv!H2W)V>rL$e&|{Xt%BO94hMh>Sf^NiSTjZ3>UD*IIXCZQ4qW%$!K#2-EX^Pxe&+tzWyGKd>wKSe z2E1KtE`7!GGp5j2!6by+Xpv~SVngq7L!jFB+QQ;sWuaQ@=hBS_sO0*9#wEsuiC#)k z$5Yo7YMwv+Am8&23yCAP(xCgBr8E8D-JH;;9jSw@{pV8q+zn?64=jdnFfKibY-YR| z3Ml@esIT=`y+|X5wb9S;`Q;>*xT{L36yLGc74rJt2{AjbR<;+4JkS0zI4^Qv%9KeG z|NUf!fqP$x!JUZOl)Yt@nRJ7(P7Xc3=v7zU=8yZQpIm9$W0xd&k2gx!EWQQ+Rad$#360`V=(tnuZNvziJD4w5Uz5C?2+IYCo` z^7ZrMGtYXapde{wmBpcmk1YQO5A-=HtO=vzBRU&z9$WJW0R>iGiR@+id(DguU;*6F7 zfKMm#Xe$!-@y3zrinMRjZ<^z4wMsq^{93I_rW~}Pn0Sz4FSd2NJ&db3zB*FnRY@x6_+cyn1^WOFBFlfG(5VR;67`-l|vK(aUe?qbl3FVkP_ zg@^38W?E8yK*H*A>Z^ z|441)CzX8@E4Xo!6)(xfkx}`{(Ok=0JLlVXm1$ZANGL-b--B%^wb*9#*6M^8Rj^~h zYQT-~ed5X4@ENL}&{IepqV&(LT+8OI&>ZryyopYNNwPoW3QpGXkd@gkS zYwzbgilz*XuPx{hk}UsCn!FlB#r@uE8>iUwuuXdmokYn{Ihwh`_4DUx()&hHwmnWw zx!oh$*u$U)WUw)ex|o;Uqh*~@$EAc>yFcQ5_0ovht^a7(O&sm zd2q(KbF1=H?~6`xXeCc8VT6yLImy=7eGn|*UwBZqox#)eC28(O0H`( zE0tRWj9gd5kLf0jLUcM170rdkncDr-dbhHgAyVfrdQh1DfK^7g{5Y1NynU=~be1 z=Z*9GU8rsT=J9{nW^XX%q#!(ZuG*B>9-Ks|Pg#|$xjb|ME~4wZsPCYrl@%MLl~AD^ zBvny!YTUju;+~VSZG-Oq`D0%FGtQtJoy&-p1LdH%0Kxm^Y0G12lK8$>mD+9F{XskQ zR@=zP`dUt+jho~_O|5!$qA0P~{{Bo+6ZPl0(ra|Myy^u%=4zK83z;W;0_@vDzK3k) zONWTo(aNaAXIM_B1`xL}w??bMW%6(QqwDDRFWdMx_uuHoTq{r!sH&>?o{fGSDj0y4 z#dLO0-sU#W<(@IIx^Hj+?G+5O=CRQW zO5x&60#oJDLDt)G(q{QT`rQi6n!L4+SvV=8H~!>X4TMy7m(K5Qtmx>CZ$<|t#tcs% zUDm8KnEB{*NlQRJKI47eEXDFCfp`Q0ai_mLWrW_Qe2S%0EwZF^F0W{w*x3+1AO0CspKEDz&)oUITx$m>u&&d9S}!6YkMsdf#kFKQ2%b*{*E* ztL1K2s-f3qmt#CQqF5i-4;7z|z0=oQW}v%%0p(2Jbd~*9!n=$q&D%eF^d|=B&+ugs zC%5}zmc}QXR=D+7O<(1_>0%3u>r342V`9IoGa9_()%xSE%a4N$TD<7jLW^B8W)*(} zW3$=OLtG`$<2v1%*!t@9IXFMaWai@*O@C!+KOgHtq!O&ux4bVLkl8{(m`o*tA zJQT`5=pYmytX&S9q>jLBMX-yWs*TN}Ut~Io|HQ|0wdz^QBlrCHV%c=XN44X7~AHj@?d z$4y;pb2P%9gi)-VEdgX>mY-i{xFs?`{=C>12iJRNcE{CbDpAmBSzt5nw8hu^8#jB38fV%%1K>7Zc6d-mLVf3De`H{`7o_Cjw1 z-WzGoYY|l#91`z{J1sI~h`CbxARtMt4u|ov0>^$fKSl6j^HH3ruvo2cj~;2e{9ORDBJc>92HPMFFP6xU*5{ zVY8M4kzsKd{Z`W5q4fDPxksiHE;66yGd$3?%e<_^d-CB2si7jAZvY7iKmO&hE=Ql7 z-BQ1sHYZbYfP+F0RKz!Dh>!mn!!0I`btukUQ%aNE(eS9DR(~OqK&Mte_yGz<*yo{2 zgiH)~tGgBw_F^KRu?4X*>*52ygjN!N+}Bm38SjhKvycEKOboSVxB1sEUw#*>PBims z{>d#Xqk`{&f>TNU$;o1^=Az;!FDR4&O|+-o9^iUnbu+{a#)p+l3p9FXi>}0c`8} z@r4`8U2uTBmGnB89J|cYTs9=`u|Obe%}){3gmxgwU$Jys%i6rT6CpNr%$yS|!W>+0 z&|$q-vNLoi>L6Pw(>0hndSG^4w3B{3Veb5$f$bb|_r@KE#6QQu?6`QCd)9qdhFM?P zh;8yp+j(+Q$s)Omg2Mf$PcP_wCM~8(bxiQ9)wK|xUBhnyUSarGX{jgl`y#{uS#jgv zlmho3s+o%;C!l@xm5xBK*M59up8xoPeD7ZJKYy-sGT#Xf_)c-QB_1bfbWrUbdqOI9 zRFCG!{Jj76GE{Tt_*Az-%CIRv(UG+vJ!F8M9lXd4Slx|%e*N4mG zw#%Dm@QJDa`g{mOE!OYF!8Ia8YzY-QR%Rx{a4knl&T2d&yjCN#y;X6W_2#6#8kgkC zCka(UUbCGRz5PsrT;A`GoVt2cWclZ}yyCy@^Khu;`F3@6#SXJvfGMX3AOi`>GU-(Z zDXER)oI>?1)vTUaZF(9S8CzT1h~E46hju@AG+WbCQ9)Q4u_PK6Yi;gNbmV~JzOkTN z!J*{lchM#+POQCN({Cf>y;(Lyll>X;ZC9_V5S!AM>etGJDJ}-phvNg;sO79 zBKAm_{ZfL#=8rQ$GL(%8lBKR9bj9bt^L9yE+7u~UU7e}^EU)3Aq-(+;|>iIF+PjA2%eTF!Y z$)!;pUbJ4*pE;W0%D{BiNFr*{uxAtBP*2sgYaqG^cy3;J?H_`+^XVPVt{^+G9Z5dt zvp+u@@sLE9k6^7X0vphMrKzur_haR;d&A?if_9rI$%pUD?R0wI%FjPhv^+HCu~cY8bYhD)6!$nUBA^Gr*f-t55f0m`*xXkD*1OD?D@PO zn5yC_bi^Jfr3>$vSbx_u?H-ae4qN_`oz2c5X>3-i6f17n*y6M)JzHCF#zo=jr`Ek! z`Apl(l8L@v$8-q+jyz`(05uJ?Lx^1YK1o@c_ioSm-G#Cp0lRHZfB8igMv)lzWsgtp zsp5+(pX=`o1FG1{Y${7X^JDc<_&&+xz2Td~FPzQ*{{(y=lTnv|8zv_E+t0{9Xj~6A zo-Y&gl6?afOE?Yh&fy5;d6PffUNLv9%nN6<{yS`wv@$dP>KsbyZ;f6B--Fjxk361p z8(n|%L9>jonJ_l?xsubHnE6{MxW07q0(;aIesk&zG#A}ElU{VrU#1zXcs==2vc#o@ z49|bCgu%dNrFAeAB3@z8g|O__a?`K(rW5p9GHqZ&_q({V&}X+WW~vB~t$eEC@0clG z5IV!in1pPd7<1LrH;3d6U3o{McYap-UoCEX#%7`3S-Tg;f(?V$2n)`ReQL&T@>dj% z;Og~!I=48zWR`;2wPxZ06^iWBfpk z{ejc~C15v+N;ERD0~Scbzj^s18_5+~h03<)vQC%JY@<;hE@>wf65rpXDZW%dqgL148|j`?CON-EjB zWm+%HxcY4>9~(N-B(un}+^G9KH{p*^K$Z2L7|W}uOOuIut?!#Rt6G=s$!E$YCZx2OSR1hoCyv8}j>HqXY|^+( zQC6zV7g~e7&)=0|VgRW?0Cef?ooWWQ3bm@4F&X^ihr`HEqD*CK$RhMR(=8tdvWLZp z#o8$t^Om;yig{AP1JIrKD0C+P$G6x!S0GorCNK6R@%Xhs0l&YNM$bj+#6N?lM=Hz$ zLt;y9mLq~^rN!L7 zvVtta##Nh`m_p=d`<7^y_zAaL*Zl9^K(hgTsE49NK&eg<0}zvGvoN|e5m#;$ocOTE zQ|UugF5|)-oi@v2OnpPc^S0Z_gNc5G>AF@9-bNs7d4X7X!-@;@nO>S01t3EtsiXgiVzi2t2ta94mL~ zDM%{kjY-3tZ9VB{AV1vLruUZoTj=$>gD-w4aSz)b5Sh`_OX<%iu{g#G5d56Rdr=*o(&)u;T)$*~9sXL9fH^#638+feBJH z#6%$#ny>3IKQ~&04?$TAo<9NP+O995=_(gm$ia{G7btRpC`9g+kr?6mE8zf<7s-w0 zU&p+O4}uc}-2a4J3tLXvw9l>dZ!<^>alkk^dQWT2b!U)^?^c}$czV*M@?eO#w|vO@ zc-3DVwF=EDA3>NLmWVx^5jozSfW%}Kntq*jDKNiHGqDa*R`*h_Q4ryKpZ|<$7kMW1 zYWgkX(8>5_Ku0NGnPs86@TQ|-X@!{Q{;oS=2k{FmLp;AtLgK>?2l)I2M`!Qp1*pLj zJl3WCh$w#((0f2%Cjr%IQ-Ipg?`DuDwIb-_zT#8uf8M1*0P`C(7;CODi{_XCet(KZ zuX}yEy7X{EYK}05<((tP{t_#rSLcs6eky?4fXl&pwdtP>J)b<|##%3$w~pj2Ep(p? zexmii=ARNWi`f?_mND5eK~qN5|9L|EI8^q(S^$m;-`a^W5I9vC=kH}(P;~GSeXhWi zyBVbdHvgtM-TLG9Qx%n&12rhQX^DSnG zXR#mm7qm7AImNMoDAVJmE1=AY53jv!nR6U>F6W{OR{cM1eFr#||NH-;p+1x}6d8pE ziVDXjQOL{;A`jBRXW0_jE62#L6p7>52M5RAGkgE;2Yo)@>wo>vb#+}O=Xu`G z{k-4zzF)5^)NYi?geF)*$j%awtsOO?Wz5~8qI-8t2(oQPFxr92SlxJ}nkAJU`tJR# zY1?sPYLJG8M%w)`rk3i};f;>CRa*pFSU+Er-(@Y&GOE#d@bzgO)I(^f-xyPH>jy#f z0Uq@^ZthT{IF~lvN^|O+y6{h9Zs;zA5@pqt?Yh(bZIcA_C@DPg*N`4>@qyntIF zbm@b`N2z6lrDYhQG5TFs_ro;5C(nBfaG+y^m`r|I6wY&Q|KUtbPFB{`sT;?MGT9M< zNqO;5Bh_b$Y2G@bcqm6&Ug>^!?e)UkwfO*N0<`UxNZh~VhiG~JxNJ-Jq9OI3p7EU#_P%o!nd<^%2r^Y@jEg@ zZiYS!=&KtrX!H?a3SDW<=V9~*3d)KVy?TKBU>RjsBBcx+OHloT*;!~~%vQjpMGC$f ze%qu8J8yx)6A(8ttIjjUz>t9-R35Z?F0!*vB!&3He8qHx->+3Jw5iP7;ch@KVDmY1(Le`%Ov`DqR~lf*wH`Q0Qefmk`A2-&y{-BnSjw~x9IRskZ0 z^GZf$CUhUMKYeF7x3p1k|B7i$V-2jLpkYQUXj%p|mvu4J=?%N(Gr5ZoT3X_7`%nkP z#VG(%*$6Ifc{wMMyg4<{qsA#?U-{P#tucc3J|j!FVJO}APV`C$GjCQKb04Rpncx>W~FUMb=srP7uWtqb68g zqDvgzhGXlETLgxgJnqa(P*IUIT#=U$K>Bnsn#L#?tIUBG>7xumZ{9qZS^G!VQp?Z# z$*Hd%9Co#lcf{tQ^Y#=s;=sMh+lSmQ6|9t|^*X4pf)x=kt+qX1J4$j=c%RmH=TZ$p>>+e8B#bcc-c%g9X(ZUPf^k<+nQ0c(RCAb{Qv(@WbvwThBf0Yn(CSe*?y8oa zud3PzwZu^F+`ZMPv~&MlFs4AX!^p5_oMZfuN*R_HmInO%W#(-~jA zw{N7*I_w((xRnOH+CV}E{tVjDIXS;I1-h~}e{c6e*h36|cSYkCh$dO69C@raEy^HW z_?Y+OMC!+JJAZGoN%8YU{xi>~e)?Y-X(I*;J|?^|t^Y2mm|?dittqS21KA@U**h;X z-+_pnkzbBjd{U)FVMtim(364lJL1?%h}~&oYnqN6N8FmLsF0>ss7x%L_W%+9m>ht{KX1J1Yu8Au$nr1RgwD<8xZ)aw1r!?7CG_ z_@uqtv1&H`yK2$^qz6X=WZ9kd?~B-faqm&aEdCQY>HFP>p7Tjs<4fPWX0Ost&l_Sw z*7=+YQ~&<>-cB>*o0S;Q7J%*2vin3VH}_V}@y((T10CgVl;X%@B{ZdB)BXF&i`cyr zB4Q9S*Y09=M8?!)i0p;GpG53#D7E`lsi@t{?|v@`z4tzMzi6JcE12D{cGgYKkidx= z(SZF5ePg@711)oK=O6|qF0N*x__4j~SjfU&`}dQGMfPwLmR{7g>%ZS&xCvG6e?R~4 zA{}MV9(iB;6X5v(o(FNmkfwm=MUaIAPYCP?u;2Ztu0C=4w4}ZLmkO^dP4O_c0t1`F zO`l{y8}(WXxKxWH2{1i978aIcXV1#Om`Q~f``=aj{wbbLCU{}tucXmK8M%!CnOR_OSjzXHMq za1~NBGFUh{1HeQQVDN7=X5r_LfKfV-Qr}GS?uLeb%t=EB zZRnzcL===WkxBAmREv4#Fwm_4dk)}I^n(ot@b4&qb^-}lI1vFD2K=~N&=Law@!o&pyXIFz71837B1X*6*_ z)fSOEx%bYf@9E$-ZAx-FhMs>0Xc-Qj(qAx3ys|NmgL?U*wk3B@xtxuO39F#(a*LnE8r}^6zo2jlU~%uM-Rjo7e@kh4hH@Q zMtQ0MeF6|k^#GQ>>sd8DJ-_wt5~#)whT<3Ly4lRiomX!F3?py`L<8vdkJD*16rO4` z^8i~#CuASkfiZ$&{TU(qYakM{?DIa>XJD%Ucv=yB4Q2}UU?Axx!QTt8RuJT~Dqos? zU!h^{3t&7fuzuV-Gu+Y++PLTI0Y^wB^z_aH<_itrdG`Y*(+H4iobju&T?d9ddH^aq z41MALs*jx)cD-qXq5!p`@aur8O~=+$9CB z1Be>}r5u2sx`Qv<_*0Ag1IC|4{p5EKN1~CU4u0O+C#NVe@fBdYJcao^1Z@j^AZVQJ zt^lfvDnKErhSj&1I$$c|3Zz1yS`L6j{V;jAF~sQ>|K-aUaepruMh9$TR5T|poIVh^8@!m&h<}X~hqFYXv+}sgg{jz!NF&H73yv}jmTvPKaOieS!6uAg&0L#!b=!^so z4GV{oQ|xN9vz3%wfPDj4W3@m$k}#mPw}LQuxerK)7zYq$=(~4+=BgPBQ}Hq~gCipt zKsrYOBJXH-iCwZ#)~~5aVntk2lM=*q9x$97`sjP#(;R>_1qeAl09o*%J|YW&`He%< z&B+QSzEcpt4I*!jxV=eq059yVzkhijdZu*#Xm;tJe*mex6eg3Al>>K$?Nlcqu(QMN zd0GM?{LUva8D4|c0qb_>;W`=^OuV0Odg{)j5o!}gINUHDihCCE9?HSi(&leq&jAfi)1lfn93&q|7440#Kn z1aD`YM+6ZW_@3phw~MJBnA_~S_G-yuCPUd}SNamg`-W_e=Y(P5G=VbPM_&+ZAd|)q z?K^yS)6o^W$H%^bz$M_q&{#4%G556Z`vDm9EO~Hy7Jv>Sgq_g9x@~|sb5nrVTrN@% z_!mp&M2rz7D&dabc*`^I-6OyM2HYkv47;n~J%OWOE#LdZxKqjS&`=}HG6OT!rU3O= zQGJ{!4#d6TDukLO6b1ma34pTq&%|^8X^z_p#YXX30pBSRozVD;oU`;R;1$XM%1s@x zlVD+vbQRdzfQEYrhS(Md-t6r!Qm;P(9;hQxoN&yb7ZMg=(P}acChQ8tRsd~;(s7#N z0c?mewSW--j{)wr?AGPeCO&Yg;j{yY$yE^s2$LvLTea10<(;Oz{cfQAPNu;3$P8AeAZk{kaD>0QB~4UCBk0j4mR6%W8`0?dYvBCAWl_;3+;Lo;au{s?Rz`jxW^ zdNLZA$W`Nly8!Ov%7ZU~K(z{Gbt1 zjh+(O=DE2|xNP4&i)ZZ#uNG1~WamUh;{Y-w6e1D8nX3WwjgnGOP}ezqlQhfEv$78b zx$=Uao4NoE^$oaE_qQy+FiGJli#uBkU6qz*OfdiisHm*m+`pW|YrOQQ#|=&`3Ib`} zH{D7A-z31Wcdi}ZzzuuWiyvg&Szc6Qk(7`?9v*uCe5yZ{X3ZaX&<+FCE<~-)eMx;T zv^|BH!cip95)7`Bd8e1u6MLapcnrA+z_Y>_Vo7@e?BWA}8LO@@G9>T0aZQ`~7qSIi z*0=%v;RB=;WaC6)0A3~}JX{LtD@OxiSLQe&WAA1zm4H+WRc3|>5a3Gx(WiLSa$< zI$)}RujW?D(p2d{bTj8?5MrPN+#W^%W?=#)26Lfv0Hj*5_T^d>)?7rZR}Gr+T||M- zgUfBpdD7O&OBniecRpPYwEjS(ZU%@a3>j+doD~~4)U$Oiu&^ZFTlZ-jX81iJp!;>v z3?h6K9L97x;df`t8#{9uXO^L}nbK12wNLMNn5!2>#Q(x9Du4)Fcf3IZ5K z8Qj5d1l%00Xw}Qv^8xM@Q6V8AMF1fm<=BGW;QrxMlwW3X;`s4vXDELB_^~pl8WamG zI@D3vJJ5Ry+aK#n1bl-)z&jW*zvMoGq1w#2eR;GBcwpEqis(_sc(rU;6~&??{; zpiQH$vzk-G$i+H`f_xMH9?3@iu* ztL!K+KMU>yFL1(8IrT zNulc(vRHM1=Si!2fjA9Jl#s@iv$p02OIp79`qitI0IbUfm>KXPkB(>B|UOwWkrpbhyz)i6nLS}yWb5gS1U&d|%&iYtaro7HUp=vk6>LKg!M*kNHeIOt zQ(h#n_UFgj6Nir;Rg*5aJ`6>iOK|W34P<4={>-(9D6qTWfW)f~;C}rw&O6rIZ@A?1rzF(mlv05%VmfTk%USz10_7UFAbL`94?5~dpR;V{6*TM@Sci?8AQ>>x;GyzNbjrYF+?*56Dj;&5KaF;5`y^*0T<_z+$(81uhS! z(zmB(#PU?7qz*xL7odzo0o|G7!537+^rsbY&t)UI-vY)GV5M$sWZaH~y!#ljLKFf| zmh0Dpz~2Snf)Yl`zP>)hlmlXlAud)9Du|fs@Svc^QPFv5l)Ub|@WbDppB7pkX|7qb zuP@(sMX(lh}mcMt8%C;m1!aYD2BTV@T!e#+1q~8F(7y+za6>(X= zu0r_&@Wo`|HvzQ@{6>J?=*%Z;f^Cfe)!l1|j*G)VkkF7KI?r3as!~#b{X(C9HN1U= zB?HZV`j0%a99V8@O3FDHVQYrU#?Ggy+vaC!eMwsjEY+D%D#rD+lBNOH0su>SmFbOK z)=@b$fU$r5@vmdxoF679XTEVG7#0f76KzhsnnrUu4ep3;b zB!xNScL&l}gC)_Sp+6v94K*8+#X0cMD`CYDF8I>%2LmgaJ~ul1EK*zm6Fj$>9MfWV zPGO^x@=!%v+ea=9^Kb3zM@WUB(6IjY6Y0*xGi0)ttT3hZL(lX1-p_7zwUuV++00L+ zq!k%ZKrqVSM){HXp#7A9!UVikh-m=+Z(y!P6o4jQetS6EUEVhYWT{9T23R=( zP};h1;Wgx+09||I&jX20fYx~d$pK|W#hW%ZJVy1=@hK^Xyedh$*6d;Q>&MTZ*8#2u z@`8sCANFMw?OB$7X!Y38Fc&5#i9^sq9S#lfF|pbNsMOCv0a@kUdy>Vt`y5&Y6eZo$ zBSCL>-8XAa{D=(zrh-yGR7h}Xe(>FipPM^Rdmi!WAjosBB>>wA+Pt$RZF5F$sGn*el+IUO|=1w2O({Lb~FM$TP`b+}*9-0+6pB@DMhWLMXm&K@B zD>lv4f*vUzWfebngAC{Husv+O*!a|OLsg!_*hb>MV?oo*K-hV&L5O#t$elcr%hnq zC|Jf##bPk#IQ}RMUpF9h8!cJOCJCO_|0rFm_r_SZZ_}0R_V2SyFT6jhv~Jx~k(Oq? zd_eUi5y#JvTG+FkNz@7r3rTie+|bn2L;%)*R#&GN6={fxiN!J~WkYcrLC1!&H%rG_ zgzoAbk?jUsXC?DQd0@je8YQI*8uT7k1_qy4sQ3`38B{Mb6Em~TWIL2fFK+&MU(o`| z3Sr?yk#w0DEFcO(hKQp!m!t&nupnRSO7lHGFK<-6Vl516oWa4t2z(wCE>q$DpxP`&KG)&zj3BDB$1MNcn2*{h!?mSw`}al6?J zYd-G&{$l7*xD0qTx{HMN%HgG$@+CK41eqG#%a*35kHF1G>EBcaDTwH;guKMwd=c%a z##3^BN76FdGft2#OXY6*13K#c7;5BZ4VMBJ`=o{B+m;)0R=?5sd>zQO>ss)NsL%R7 zyfpc39+HLJ4u1wk=!F3H03ad-7r92ta=J!d8kQtg9i$iiB2&Wln`IG4sg7I?ajakdc*bnQ>h%@iKIw|2_=)Jyq8Y=F1U>WOr-UB{SVRSVCN;L?Lm`+j7 zL$}HQxvV!_wk0eBSFz~_VO;y1RS$WslfC_{&De=#*3VZ1AKNt7!xjT5J%rAnVrwxw zA1VjZ1>Q#${8L>T=%`M~HEg*5N-;JVx}s<(AIn0pQUgXd&|;JUJK|{|1}%PzDGpxb ze~n!VyUhIYFF zQ?Ye$<_JeS>Bwt&k9mmG5ATYD;dUFD-Ncm%ax=F|Dz;Cv{V$y)ByN{%M)zncJmjXO zx9krX_;z3))(}HVO3G3*XJ?rJy+x0QuBfd2kd+KTuB57|c{c!|6GMGv{<XF7EAOipccz=g{RHUi!Mtu| zRhlW}ZT#K(r3A70neF&TD`$^WXN`uRj|}IRF&Vfh{AY!PD(H7zjk58myMDN$G7+ z1hNk~{De*US{_G4Ju3^hYz?zyiBOgP^(SAyrif_t>CHTQH+U#|s+FZ@Lv!b z*qf9&WOcy&s1ET{ve&#+Su0M+#Wq&otILf;WV?5JY;x>TvHey?u%v(6>-pBT!EU#< zoIVp;^bNTZHZ=QkhXL(L!7t)|cNWJUb$&J|vq0Dst=@LiL40ZIbA5 z^d)LnQ8xE%s zoM&lN#KLOVsC4Aanbg6c1XY(mDM!x~mhhOp8{Jz^c|Z=$(|t}~Cy$VC+9dI=MQBT( z71fB3?+Z?RCs=4xKAy;icDtDVvtQ*U6}3nM6?aKfiz25qtq^zPXLDoy;98f1KPm1# z&6%=0F36(eA@dZW(pH~c@FI7 ztDx7+q+VTJtedpnQ=RUdf0h@3vdteVa>*YYq`y5WqvjU%22}pq7=m_>Xl`b8(R6Ul z=P4y~zgm|p-I6pXbFPSNouZUBr)9eJS6-AV#^L5kHV*;e>_`nQU0e!0I!sGmcH554 z6#Kl)7ZAZG7fdHy5AbrrYhQMcfbi=Gtb4$`geZo+r0_i}AGb%V3zg$Bj@MddeaE0;Inkv)+#ni zJOl3H-&U@lJa*=?)sysr2g-&*nK8O9skt_cY>(DtTUBBjI+UxqUB@YgI5fwr((U~I z3RC7#6bUE5t}xYXmX*bh8`%yme17R4w{PD|?sGTpKDuOJ+NoR=U=!;>buV(epMA}6 z;xuAN`i}>5FBchTE{}+&<+q}(I&e5$@^={xZHtWKN>luB3gRQI;+orVqM=3ks#~rF zoHnxc^+6qGZJ+m*ii-d;2b^cK^0lJa^W`RTV;2*51P|mYVhv< zq4-Cs-JK+u#cdm9P+zY+JXu;@l*k~qtJP7X6V5lxwl+mi$^`4I*5G2OS@xA8lwFW8 z074l0^N;Lqjlh?z|S63a3 zw9Cq>i*ofb@^oDTqt7@1l^3p*?1f;mq1>y(P1Evhu>{I8Q6@G`qT8mQ4jt8lx%wZU z0ss#oSMzEt!$D_>^@klgp8{d-HKl#@pOBitliZSduitN8HGY@)vvylEp-R35(S?qc zmrTu4@CzCazazFkCVMSOEisJL(Gkp^I0eiPlp+L>;CHBQk&yUX3Ked137MM})<5|i z-p&1e3wy~3Ejrq~OuRSM(d@W2#5n$=uPjZ(K_xz3FH-1{|3!m(+sVQwk`YIzw(cxX z7hJwztkljJ9qxkgc8x}3ysh*gjVjZ{Ju3IGDGEz#m(_G#PvhP^5iyk+D z=0j9<-SRXmn_*7UV_ajnZz_XBeZzVu&Y}S0Rj(Z}HYvAR*K>~Pd0?ytkhNCYGcD{n zx|)hl-%xX`PBSm3irAy)1olb-bSS17r3UvR-Jl4}dOseyh!EY12`ZxS5*89Nh_CXUeZ@+*6IcobX5 z-#IJds&1z>ZQRrU9yzS^f;ln-bXFKkt9JPZxhKT;aF#H`qS+bzai@eP^u+XyxMF1P-i>}STo+yHO3%IS zoe}+dt!KjWGHl3Tx@>4m8SD$%aVC3XK=+tD8gnu&wN*{1QfQjJ_b7jHK7gegx5C1D z?%GX&87H7!(?VN5-#vrAWj9kWirHRK*G@@QT52ZeVV`l(E;4Qcr4&{7u8qUMp3H7W z(cmZb&!hg$%|7qgT$-$71aftCT^B57L}?frI1SOYxTW{!4MGj;o#cbBqD1V5zi_n1 zHV4MP1w~WHVsdw>`L}B)I$>7c3X>*J_fD5Ew`G1QHyrCYMwTt8^I^UGa#*WrYo3O~ zT{)a$8cTBrmwHi0{EdX%J$!-FLgYk*z-8sGgw3-p-${MFkM zx1S7-&Uw?FOz2Cf8XxwX@b+fta>6N7B1OD^K9Ex!tQ4=5Q0IynGg>m=+jdWNYo`pW z9nGh(8Y}b$vT>;)l9a#9EL3kbJ;l1Yg4yJ|B1_E0(NE3OcB7USM#?XFI9q5PqkB5YzU2{qIk%kEvmc9_bRX#vwCwMVQU^+d!Ipy;S zLF{Z(m0SxJ`2`OZPR_gJhW#kHfW{(+_K1Ds1hvt=`5{zDcXm%s;FbAZUvE2YFJc#& z(;$pn7g&G&^c`qCk#zY{r);u0NR}nF znZmODO{3;qb47D1^SX7TN&>9qaaw9yjrjWFpMWh)LK0qmb*WX@^Ox9l)0B#j#WMM{ zL1_74SXA?;M+s!rsqtIh8Pw_h1QFKjttxQR6iLLyOv`PQ5hFk9oBBIkL>W{Rfj1lf zty@q<*+yv}GufDCx4{uPx}>~kAuQ6#0gO#mO*{ft{eiewSg3Vhv1mI$*`_b_t32?- zX3-TkwkAkiK^h@1{iAF(<#cQC3;fBBwt1iO>|Fg2Th&m0i+M|gpBRP0Gm&+4Qe^3* z*_f56IAzIHSN*7x4xa9^uzlf!W#_l?g<#`y`p=K#BkAA{B*(w4K~&Qxx3!nx zKQ{iT(||xrZ80?=IPq0tpRirytN=J$lt&^NDIy4#Zb0Y;+-V=dmq1=@CyymNm@ai! z#m}}_(OMPdsl2OK%-r?+`*|P$306`n**uduthPyrs%Tu$m`9?5>ZKEsOJg^OY_%&K zHAuw1(ca(|i{K|OT_bi}deUR-$f=1j^n-qEVLqlE(Fu+8bW@vau9w%Y8xCJ>8=VU= zxI(Rm&tbhV9zij*N+ zt7MvY_8_4@(z!JInB9=_(uF|H53iWbg`We#Z~1*gf=szT2q9DIZpR~ zZS;yjFar4Lnq`jp7To9*@P8s{C&I!oIhVXPet7=4WU5$q42&pG3%2SOW-uZ0bU*gsOED;EG8ylLMGH@;F&fGK3{M@1;7^`}NMc^sS%YY{dFvA8 zjPiq9!G=Ru+o}|LLOM-t7%#H0s1R4D1M(6kt?0WgL*vZIH-&lZf~L+6-fILEJg=K0 zY}+~~E>LQh47&G}rPRH)W^xFS2B(uNCsrP}Z>({u@prqruBOv3)o9GVcurl~`^Ega z7Pss3cNb-AY-J0H&-KlaN!9xT*F_S>sl5lJ|!7_DaC=0+-x*#vQ}5><@0A)VDCe9mz5bLz@VYWh^UN}%`Np7djEJpb_0h@audtVn zPPK{*ptZBJLqJmfAxfdbMjoCQJIjCn8C#!8S(-Gt`rwcDRJTSJbXu`p;L#?tGk?!A zwJ|QEYC*`TVBON~oX4sMCywZ>c_=AW^9c__P*BQdhHh0cnTjl=FT`Ll`G#0pN`Hh+ z9EHN&Uy>+ZZm&Y+P_GYed)hMDePuM zqXQ;(Sfntc`Pmv<97R;zj}ETt{JsIZQ{eg3X*lF+UJ)ps(K>MO04q<-u`|Lrk@VGP z;=^Rn3u^+%g)Uju{1-WN1Z)+tyq3Vh2|g$R?UI%=>k)}|inV~iy3)yZTwgAKYuxKK z68(^v`?$Jlm5Y5A_hh@sA;#QPmDV?Y0ogh&3y0w}=zzMcb-RCA`X6$}QTw`g?*xMr z0~`E(NbLXFtlK@SMFcGGVvp7~(9dSDa>c5tSZ6G`uIIC`3RkX=-*GvjXBE|Q{Y2=x zSvj&C;yX(ya^>_NsSM*c^7#0X%*oMy_8Dj!;N-H=%4vV^7@eu+lZD5R{fI9MPK~1wbn1BiAMU$Tw zD4M|o4vrQdc3Re4SoF*n(6v!|Tf@v_t8Zxez%+T(XlLJla5_lg+vLOUn(^EGtd0Fl zA>7K_+h4V3zLwr+Eq>$}x{%BDZb6m8`F61xFmY_0oObK{WkuBvgd~N0^X6oEg8sm9 zZdNCMiyq^am|?Bp#FYXaD`{`u#L?06yV_;W-^TdFfB)hToi1y0f)q@lD!81iT*Jn9 zrZIn(-K>q26%yih^1!HNX<3H&3kTc=#`G3sUSZu&kESX%Mma@Kk?+5&1TH!fEebqJ zdqMirdc+pgFNk)|OTcZlWqaX0?PSNx8^A~Cw2b?#087KoXm|-1=#~hqzv+32jJcaKp7*j@k z?r-PgBZFh+e+`Hes5b<`nOss=`_@9A}k^G4uR)sYU<)3G0P3@zq66d%s~%?$oC4H0|ppNvhkZAu@Op4Kzm5xvyp1OB$64b`1j? zD}R6UY_7-xi+Y4tZ3LE=_H3TPCRrI5+e!u`{KN9g`~d0(~-49%6AXSN_P?(Ghe>4 z1U68_o4#^|jA#g+<}Qbf>LuUS*-ak(?Jo_752(jssn;d;=0e{c4b z5-zmB2MX-(g}#=BcTjv#cMuQY+A~9_X~}kq4|s>%>IhfE9f`QdinUXGWfp4uR}wdI z@faF+$pypzz9k$0PbQRg>A#ze(!au@N^dDF@cljU4Nj2Yvp-_D^xscPM$HcP@^t-o zX?LS*aA|eNUJv~F`Mc;?NjUS_ODPN^Z^W+um8AV) zL-f8;E{4fx76E(Dg2FMG9c)MzY9F}rS0(ozfmJQ=PyM&@*`u)XHJ0@{L%Lz?~_iv~#9u>(u*)-(eqwDbXz5nRG)4r?b;m2qY{_f{yAvB2W{k_-^xG#1;4d&a7 Yl6G<=$8Vu{ke^83mY2x7_3*|20nZ`XUH||9 diff --git a/docs/configuration/firewall/global-options.rst b/docs/configuration/firewall/global-options.rst index b3f311aafa..7c52045ee7 100644 --- a/docs/configuration/firewall/global-options.rst +++ b/docs/configuration/firewall/global-options.rst @@ -145,3 +145,35 @@ Configuration [emerg | alert | crit | err | warn | notice | info | debug] Set the global setting for related connections. + +VyOS supports setting timeouts for connections according to the +connection type. You can set timeout values for generic connections, for ICMP +connections, UDP connections, or for TCP connections in a number of different +states. + +.. cfgcmd:: set firewall global-options timeout icmp <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout other <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp close <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp close-wait <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp established <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp fin-wait <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp last-ack <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp syn-recv <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp syn-sent <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout tcp time-wait <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout udp other <1-21474836> + :defaultvalue: +.. cfgcmd:: set firewall global-options timeout udp stream <1-21474836> + :defaultvalue: + + Set the timeout in seconds for a protocol or state. \ No newline at end of file diff --git a/docs/configuration/firewall/index.rst b/docs/configuration/firewall/index.rst index 1d90490144..daf5f116eb 100644 --- a/docs/configuration/firewall/index.rst +++ b/docs/configuration/firewall/index.rst @@ -26,14 +26,23 @@ firewall are covered below: If the interface where the packet was received isn't part of a bridge, then packet is processed at the **IP Layer**: - * **Prerouting**: several actions can be done in this stage, and currently - these actions are defined in different parts in VyOS configuration. Order - is important, and all these actions are performed before any actions - defined under ``firewall`` section. Relevant configuration that acts in - this stage are: + * **Prerouting**: All packets that are received by the router + are processed in this stage, regardless of the destination of the packet. + Starting from vyos-1.5-rolling-202406120020, a new section was added to + firewall configuration. There are several actions that can be done in this + stage, and currently these actions are also defined in different parts in + VyOS configuration. Order is important, and relevant configuration that + acts in this stage are: + + * **Firewall prerouting**: rules defined under ``set firewall [ipv4 | + ipv6] prerouting raw...``. All rules defined in this section are + processed before connection tracking subsystem. * **Conntrack Ignore**: rules defined under ``set system conntrack ignore - [ipv4 | ipv6] ...``. + [ipv4 | ipv6] ...``. Starting from vyos-1.5-rolling-202406120020, + configuration done in this section can be done in ``firewall [ipv4 | + ipv6] prerouting ...``. For compatibility reasons, this feature is + still present, but it will be removed in the future. * **Policy Route**: rules defined under ``set policy [route | route6] ...``. @@ -67,11 +76,13 @@ packet is processed at the **IP Layer**: new connection originated by a internal process running on VyOS router, such as NTP, or a response to traffic received externally through **input** (for example response to an ssh login attempt to the router). - This includes ipv4 and ipv6 filtering rules, defined in: + This includes ipv4 and ipv6 rules, and two different sections are present: - * ``set firewall ipv4 output filter ...``. + * **Output Prerouting**: ``set firewall [ipv4 | ipv6] output filter ...``. + As described in **Prerouting**, rules defined in this section are + processed before connection tracking subsystem. - * ``set firewall ipv6 output filter ...``. + * **Output Filter**: ``set firewall [ipv4 | ipv6] output filter ...``. * **Postrouting**: as in **Prerouting**, several actions defined in different parts of VyOS configuration are performed in this @@ -120,6 +131,9 @@ The main structure of the VyOS firewall CLI is shown next: + filter - output + filter + + raw + - prerouting + + raw - name + custom_name * ipv6 @@ -129,6 +143,9 @@ The main structure of the VyOS firewall CLI is shown next: + filter - output + filter + + raw + - prerouting + + raw - ipv6-name + custom_name * zone diff --git a/docs/configuration/firewall/ipv4.rst b/docs/configuration/firewall/ipv4.rst index f7f98dc7b5..e53f2480e4 100644 --- a/docs/configuration/firewall/ipv4.rst +++ b/docs/configuration/firewall/ipv4.rst @@ -31,17 +31,34 @@ of the general structure: + filter - output + filter + + raw + - prerouting + + raw - name + custom_name +First, all traffic is received by the router, and it is processed in the +**prerouting** section. + +This stage includes: + + * **Firewall Prerouting**: commands found under ``set firewall ipv4 + prerouting raw ...`` + * :doc:`Conntrack Ignore`: ``set system + conntrack ignore ipv4...`` + * :doc:`Policy Route`: commands found under + ``set policy route ...`` + * :doc:`Destination NAT`: commands found under + ``set nat destination ...`` + For transit traffic, which is received by the router and forwarded, base chain is **forward**. A simplified packet flow diagram for transit traffic is shown next: .. figure:: /_static/images/firewall-fwd-packet-flow.png -Where firewall base chain to configure firewall filtering rules for transit -traffic is ``set firewall ipv4 forward filter ...``, which happens in stage 5, +Firewall base chain to configure firewall filtering rules for transit traffic +is ``set firewall ipv4 forward filter ...``, which happens in stage 5, highlighted with red color. For traffic towards the router itself, base chain is **input**, while traffic @@ -52,11 +69,17 @@ router (starting from circle number 6): .. figure:: /_static/images/firewall-input-packet-flow.png -Base chain is for traffic toward the router is ``set firewall ipv4 input +Base chain for traffic towards the router is ``set firewall ipv4 input filter ...`` And base chain for traffic generated by the router is ``set firewall ipv4 -output filter ...`` +output ...``, where two sub-chains are available: **filter** and **raw**: + +* **Output Prerouting**: ``set firewall ipv4 output raw ...``. + As described in **Prerouting**, rules defined in this section are + processed before connection tracking subsystem. +* **Output Filter**: ``set firewall ipv4 output filter ...``. Rules defined + in this section are processed after connection tracking subsystem. .. note:: **Important note about default-actions:** If default action for any base chain is not defined, then the default diff --git a/docs/configuration/firewall/ipv6.rst b/docs/configuration/firewall/ipv6.rst index cbf18a7df0..423f3e09fb 100644 --- a/docs/configuration/firewall/ipv6.rst +++ b/docs/configuration/firewall/ipv6.rst @@ -31,17 +31,34 @@ of the general structure: + filter - output + filter + + raw + - prerouting + + raw - name + custom_name +First, all traffic is received by the router, and it is processed in the +**prerouting** section. + +This stage includes: + + * **Firewall Prerouting**: commands found under ``set firewall ipv6 + prerouting raw ...`` + * :doc:`Conntrack Ignore`: ``set system + conntrack ignore ipv6...`` + * :doc:`Policy Route`: commands found under + ``set policy route6 ...`` + * :doc:`Destination NAT`: commands found under + ``set nat66 destination ...`` + For transit traffic, which is received by the router and forwarded, base chain is **forward**. A simplified packet flow diagram for transit traffic is shown next: .. figure:: /_static/images/firewall-fwd-packet-flow.png -Where firewall base chain to configure firewall filtering rules for transit -traffic is ``set firewall ipv6 forward filter ...``, which happens in stage 5, +Firewall base chain to configure firewall filtering rules for transit traffic +is ``set firewall ipv6 forward filter ...``, which happens in stage 5, highlighted with red color. For traffic towards the router itself, base chain is **input**, while traffic @@ -52,11 +69,17 @@ router (starting from circle number 6): .. figure:: /_static/images/firewall-input-packet-flow.png -Base chain is for traffic toward the router is ``set firewall ipv6 input +Base chain for traffic towards the router is ``set firewall ipv6 input filter ...`` And base chain for traffic generated by the router is ``set firewall ipv6 -output filter ...`` +output filter ...``, where two sub-chains are available: **filter** and **raw**: + +* **Output Prerouting**: ``set firewall ipv6 output raw ...``. + As described in **Prerouting**, rules defined in this section are + processed before connection tracking subsystem. +* **Output Filter**: ``set firewall ipv6 output filter ...``. Rules defined + in this section are processed after connection tracking subsystem. .. note:: **Important note about default-actions:** If default action for any base chain is not defined, then the default diff --git a/docs/configuration/system/conntrack.rst b/docs/configuration/system/conntrack.rst index 1401e02e1d..6d5515754e 100644 --- a/docs/configuration/system/conntrack.rst +++ b/docs/configuration/system/conntrack.rst @@ -64,39 +64,7 @@ Configure Contrack Timeouts ================= -VyOS supports setting timeouts for connections according to the -connection type. You can set timeout values for generic connections, for ICMP -connections, UDP connections, or for TCP connections in a number of different -states. - -.. cfgcmd:: set system conntrack timeout icmp <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout other <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp close <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp close-wait <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp established <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp fin-wait <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp last-ack <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp syn-recv <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp syn-sent <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout tcp time-wait <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout udp other <1-21474836> - :defaultvalue: -.. cfgcmd:: set system conntrack timeout udp stream <1-21474836> - :defaultvalue: - - Set the timeout in seconds for a protocol or state. - -You can also define custom timeout values to apply to a specific subset of +You can define custom timeout values to apply to a specific subset of connections, based on a packet and flow selector. To do this, you need to create a rule defining the packet and flow selector. @@ -177,6 +145,11 @@ create a rule defining the packet and flow selector. Conntrack ignore rules ====================== +.. note:: **Important note about conntrack ignore rules:** + Starting from vyos-1.5-rolling-202406120020, ignore rules can be defined in + ``set firewall [ipv4 | ipv6] prerouting raw ...``. It's expected that in + the future the conntrack ignore rules will be removed. + Customized ignore rules, based on a packet and flow selector. .. cfgcmd:: set system conntrack ignore [ipv4 | ipv6] rule <1-999999>