From 7295e1d206d1fb5aeca584de80fbfc85ca5a95c9 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 13:16:28 +0530 Subject: [PATCH 01/24] Lower practical RPS chart scales by one y-axis step when bars still clear the legend. The old headroom rounded up to an empty grid line. Windows 64 KB stays at 10k because its tallest bar would meet the top of the plot. --- tools/RpsLoadProbe/render-practical-charts.py | 99 +++++++++++++++++- wiki/images/rps-practical-heavier-linux.png | Bin 105698 -> 104278 bytes wiki/images/rps-practical-heavier-macos.png | Bin 103346 -> 101681 bytes wiki/images/rps-practical-heavier-windows.png | Bin 98257 -> 98310 bytes wiki/images/rps-practical-linux.png | Bin 95522 -> 93982 bytes wiki/images/rps-practical-macos.png | Bin 94666 -> 92997 bytes wiki/images/rps-practical-windows.png | Bin 92443 -> 91081 bytes 7 files changed, 97 insertions(+), 2 deletions(-) diff --git a/tools/RpsLoadProbe/render-practical-charts.py b/tools/RpsLoadProbe/render-practical-charts.py index ac0c02dee..596259a9d 100755 --- a/tools/RpsLoadProbe/render-practical-charts.py +++ b/tools/RpsLoadProbe/render-practical-charts.py @@ -398,6 +398,11 @@ def parse_wiki_practical(md: str) -> Dict[str, Dict[str, List[Optional[float]]]] in_arch_table = False arch_header = [] continue + if line.startswith("#### macOS"): + arch_os = "macos" + in_arch_table = False + arch_header = [] + continue if line.startswith("#### ") and arch_os is not None: arch_os = None in_arch_table = False @@ -660,11 +665,15 @@ def plot_packed_product_bars( return ymax -# One-row product legend in upper-right; keep right-side bars below it. -# Legend box ~24% of axes height; leave ~6% gap so bar tops do not kiss the frame. +# One-row product legend in upper-right. This first limit is conservative; +# render_chart then drops one major y tick when the real legend box still clears. _LEGEND_HEIGHT_FRAC = 0.24 _LEGEND_CLEARANCE_FRAC = 0.06 _LEGEND_RIGHT_CLUSTERS = 5 +# Pixels between a bar top and the legend frame after that one-tick drop. +_LEGEND_GAP_PX = 12 +# Share of the axis kept above the tallest bar so it does not meet the top spine. +_TOP_HEADROOM_FRAC = 0.08 def ylim_clearing_legend( @@ -694,6 +703,91 @@ def ylim_clearing_legend( return max(base, needed) +def _legend_gap_px(fig, ax) -> float: + """Smallest vertical gap (px) between a bar under the legend and the legend frame.""" + renderer = fig.canvas.get_renderer() + legend = ax.get_legend() + if legend is None: + return 1e9 + box = legend.get_window_extent(renderer) + worst = 1e9 + for container in ax.containers: + for rect in container: + height = rect.get_height() + if not height or height <= 0: + continue + bar = rect.get_window_extent(renderer) + x_overlap = min(bar.x1, box.x1) - max(bar.x0, box.x0) + if x_overlap > 2: + worst = min(worst, box.y0 - bar.y1) + return worst + + +def _tallest_bar(ax) -> float: + tallest = 0.0 + for container in ax.containers: + for rect in container: + height = rect.get_height() or 0 + if height > tallest: + tallest = float(height) + return tallest + + +def lower_top_tick_one_step(fig, ax) -> None: + """Drop the highest y tick one step when bars still clear the legend and the frame. + + The first ylim often rounds up to an extra grid line. Use the next-lower + labeled tick when the legend still has ``_LEGEND_GAP_PX`` of room and the + tallest bar keeps ``_TOP_HEADROOM_FRAC`` under the axis top. + """ + from matplotlib.ticker import AutoLocator, MultipleLocator + + fig.canvas.draw() + original = ax.get_ylim()[1] + ticks = [t for t in ax.get_yticks() if t > 1 and t <= original + 1e-6] + if len(ticks) < 2: + return + top = ticks[-1] + step = top - ticks[-2] + target = top - step + ax.yaxis.set_major_locator(MultipleLocator(step)) + + def gap_at(limit: float) -> float: + ax.set_ylim(0, limit) + fig.canvas.draw() + shown = [t for t in ax.get_yticks() if t > 1 and t <= limit + step * 1e-6] + if not shown or abs(shown[-1] - target) > step * 0.01: + return -1e9 + return _legend_gap_px(fig, ax) + + def restore() -> None: + ax.yaxis.set_major_locator(AutoLocator()) + ax.set_ylim(0, original) + + # Stay under the old top tick so that label is not drawn. + hi = top - step * 1e-4 + tallest = _tallest_bar(ax) + floor = target + if tallest > 0 and _TOP_HEADROOM_FRAC < 1: + floor = max(floor, tallest / (1.0 - _TOP_HEADROOM_FRAC)) + if floor >= hi or gap_at(hi) < _LEGEND_GAP_PX: + restore() + return + if gap_at(floor) >= _LEGEND_GAP_PX: + ax.set_ylim(0, floor) + return + + lo = floor + best = hi + for _ in range(16): + mid = (lo + best) / 2.0 + if gap_at(mid) >= _LEGEND_GAP_PX: + best = mid + else: + lo = mid + ax.set_ylim(0, best) + + def arm_sustain_c64(csv_path: Path, arm: str) -> Optional[float]: """Sustain RPS @ c=64. Median of SLO-passing repeats; 0 if all c=64 steps miss SLO.""" rows = [r for r in csv.DictReader(csv_path.open(newline="")) if r.get("arm") == arm] @@ -967,6 +1061,7 @@ def render_chart( color="#444444", ) fig.tight_layout(rect=(0, 0.06, 1, 1)) + lower_top_tick_one_step(fig, ax) out_path.parent.mkdir(parents=True, exist_ok=True) fig.savefig(out_path, bbox_inches="tight") plt.close(fig) diff --git a/wiki/images/rps-practical-heavier-linux.png b/wiki/images/rps-practical-heavier-linux.png index d17adb3115feb751c73bb90b35a3a9c9889ed373..d0dc7706166df4ee37706ec50321c82241020fad 100644 GIT binary patch literal 104278 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 literal 105698 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�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 diff --git a/wiki/images/rps-practical-heavier-macos.png b/wiki/images/rps-practical-heavier-macos.png index 606571e05ccdd9a153d9a5298af3b2a9577dbd34..1295a1761aaad9bdecd097f7887d3af40c3db070 100644 GIT binary patch literal 101681 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 literal 98257 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 B~1M#H6t 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 UeR&eH<<#ZKNY4aaq2mztKRW!oq5uE@ diff --git a/wiki/images/rps-practical-linux.png b/wiki/images/rps-practical-linux.png index 321fc0de6490a4e0b084e31990a86a3472e20628..3d24dd6897a169c501cf7de09e69a866c1c80182 100644 GIT binary patch literal 93982 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 z
    +c8P6BvmW#|_&L-HRG>ndvX? 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 F{{mJFpGE)x literal 95522 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 z zKrnR_n#PheK_?$byak}rdjxrC=p@Yg@~-a%bEcl`ZH)n!Dt00qJz`1!pRgU=<@qF6 z4nO&sq#LAEKqC4UP{LIhKha4pd(MW0gfN z`vmlH=m8)<(|NInVykqbJ+OL-ndg09V{O@{$uD0Wf06@okOV z7>e{EUz(u-!&?v1*6D>@MIE-^=xgqY)A=-;jDf`nuPn03cH-`c+>BCo3bux?g{5$` zFctVMAj~_JU?q`)CDAMN#OpvHv)es3O&l(vE$xTMPp_VcNs<9aLF%a$P1r1ClOcFW zfIOSzcSj@+VX!L6vil7h*h{G?f$0b#n22gmxsRw{c_-}w1#XhLc4IuIN$e%yJyzZR zu~l?$5f#A9BQm8!;%xphby%C~ojto(GY+9y;#^&Z?&c|AH?@0K2AKn6Q*uzU5&+k? zlWB-^zZLq18#*Y1m{<_zIx^g51Exk8P%*-U$;r+AJLwQS$u62rRQ7Vph$+_PM0Vpi zlXAq0tpjoBPBQ6l5x@)G!RUa=@5cAn=!U~eVdatDkV-+ZafT#7$wRRHo#!-Ojp4TS z_>;hp;M7MD7y#+YEQ^xyyP5p@A;k%(NH`3?$VF9*pYl6J4{Wx@FhWzkIZVvO9RBsf zL0BD|5!#+mM8aD#HK}_lYA0|{aeCtG{~g4JI#0L$qjj7ftt`ki-N`3PC0glokSQT} zUTH^#cm@veH*NkGK%9VSM>|p{vLp#Z8qTqtQE8akea$&!tM3Di5peU#v~r=$ZBxGQ z0vg2$NQMcvZh5nbwh7<4V<895mlLv(BM;?>I2#J*Uyr6!$Xdoy;_L%s#<{&A3aSwaG5NVr1HXqZX5OYl#sNk%`3|Dcj+9T*{JNUDdMkhV}&-Md^5eYY4upl@TlKr*mm=?5LY?xAJ=d6pmG zI8`C^HC<$2tZg7yBaiaG88b@kk6F@j%QP1~z2=NLvTZIXiCZ(+=ET7LCgFe)`?<5Z z4^AV2k0&fAFJVn1f=?(Xp z;&WQiy@r_!NSs$M)^fImWWz?)B-8z`wm8ugWbN8ayf5iakiHce3yQ@jJDh-fL8yEH z#lcH16>L*E;m;VI0NoPx&^Gx|GXkEHXS>aRu8LY6OCJ_;wk9ESd74Eco=4~@H)yi- zBU^a`=&#l1?BmzUMT6a7BewNs-d$xGqgvVF5Qb&gHjE9@Uq@5#CmC$f)(c#=J?eur znU)yLsK;kp!>e$LDH`sBrXXP3qnRXk#>>G$Or%|p%@_7%S5vgNh?Ssa?_kSB8|szv zQFl#cGflPHFN9QxE!gi6AAy7~r8Ebl4l&5rxnpGzx&^&&pVd#PyQk?Tm|aIv#% zdfES<^scqv921AyoA(q0*%I5kv=0QY&VV#;9*#8ckvX+FU2RVR6`8NUv25+=&!&N; zIp~RLF4O=4jA4QQxrlscbarp|Ufad6Xdg-N;HaxdHe*{ZS!4H98pMDnlxzMr3h6FG zEx2E883mXkzdxA38HX_Al@LmDs#It8zMCzTi`F#{rlW<7PWIfnJ@p>w_@OjzQv#<|8@taE>&5L`x%oPz8Xo9W_h6){2A?Ye8dzW)%bn18`X5Q5 zLm~qj7wy@miHi)`);fDPk5cu}4!NtN=K8S@&hr15)!Kc#4cH`qSpjimCH;Qj{4pp+ zB+BDpd)u1bb1mKMx4kpyKH}zRKk+_`|7?)O>l^GwPom9Cxhfgm~Fk#DOVD|L9e3i42SjAD51YKc*S$Z;M#TS`gBY4dynlU3s$V`pvIl8`Z^1>VlKAKeukZ|0JvRa~TDQI`A_u9z zNc?{$lV<9@^&Obv7Z0MtD*&YLA36>Jz>Ov}ERvWIATn4HsTpyIB@HmL^avrB{S!i{ zF|i28bk`H;`36RiS)xSm+v2IJb>8xs@j3afhP-f`@idyA9e z&u0YV<_=D>rSRPZj93W2`y_I4Q?!>Qkl;PYIs9nbXHDEXwTeqTYg8+TaH9qP8y@q< z?vUI}#v>&=7qB zo;t ze=7Ig@(k!6P(VuS6Axd2(Df%nkSCEbCr3VRA3sjH(_1l7v7(Yf?Vj=fkt~1=Ci)t( zsXwR;aWEdCm%EqiJ^udq8K96kHOuED5I517#AHn^GF8G({1TW=687-o|AS%~guwLw zie>U)OzbmS-9Fi|PM#2ma`N+q|Ms3z4hQs2s{>`obk&}}UlHCf$=_fuYweBXq!Qvo zBSdt?k2w>sc&~>m^b4VsMM@rrjfiA-X9+$M57wYAwzFvP#w!V}55J7$n$*<6H8g#w zfuKTJTkCAwsttjC#G+werk4s-dC2AsI}g!%?aX;TYY4s-EkL-eSOy4{0+9SX<@r-i zyu!$=J~G3)&Jk<86?uFtnIyP(vBx zYlnGij~AKhiQ7zv3375ckPLfaZCK_fx5m*-fTi>j18>}!8mH0@`^(6SPpPA+-9qw_ zd`XJgIe<}Hv$MgwUEScI)xbmx)f8hiZJ?v5>iF`m6}?ic%I+yg@9}&T1TaC?M*{8% zH1|zGE4IO=^C>k=u^tism|X{R{_PU6HkcxTp*QE-5$bCM&lb2_7? z&zuiMpKBX31LVxYwKa@9*^bd?DXbKwVyy;Y!M~~L25H5!4j4mA@E&W z(T*L7D?{k{;YnrN>iw9pT$u=-uHKq$BTTfZ!qF#j6{5!v4nGwlDJi1#V6d*B!ueu$R!^@I*Ybo{5Wy0AuIEt10UNy(M;1FZfI5JoHvLE<$@uFO z0lymBL_>cE4IZ+^W>FO@{kIP+RF@R?@ny#tr4RGQ2l+^u1b4Z;SeIEe<{2B)+P z$QHJmfTni&PVRLSIS2N-dcsOCM{0zzOm-coY@I(Xw>^R8aw{>%Vi~|fpzpb}!jw=1 zN0Xrfl1@D7f$RD)TRNiZF28@hA>4y?ZHK^lxx50qW>*VoI1+&+Ar_EI9lVcf!ULB2 z_O}?Rkl}#NO^AfCnC%=M4W5r9ZaaGG{X^T<73oh|A4i@mu1#XmONa*=K$`Oew@4Nt zgG~tmMR?-~upYvb2_sM(0Cg$!4#Tkps32q%+7O%}{s0^wO_0p(k5QYr2^Fmy|DLJOTJ z-5?w{Cqq{Nu2zD$b;)S<_z}w~D+-h%rmsAHu?D!$V!~jhV=S=n{UJybVu>|({+4gE zNI@8mmQoz3QR*=UcL}+q7p;dR8eBT#(J*^Y450&jC%(^Iu?S2#K{sgso;_E&!PzHy zU&KP)I}+1JwR?c=;@(`Eu8tt|FB;!+>_)ir!0}%w8Oc=DcGg3yI}WUnlLSyielgk! z`g(oUpPCa`qS99)IW31|=N}O)0d%+SWaq%_=qG~tug4K(3^^7aV<-EBnvMT6`T2om za{LDV%K9(r^Hi2N<=;~{{-x_YiM9P-#MKZ9!5HEyAU_oXrcBkVo<%>B>^)Up0si28 zk=8CLzOeTVg(2^~(m%P>^MR5zMG&vn-WimDMyT7sO}Ra{OXm5?e$;v42sESp3pg_v zlX!tK?zA>o(C^Zopb!J~{`v=1^_*s93!t<+eS>K17_WVJZbt-V2*7nKJg8&T%@X;G z*5HhcKir2|`iNk*84|6%PQwtxS*mqH4$#(1$ae%j%DKv;_om>Hlw^_q_>1tdG;k{^lhZg;&1R<8dp235BP6FVm0A*6I`Vyh37>1 zvJOFcUZ7$&Z38%s`+_E$Uj4~WXx#QJj=83jsbp|_-1NLm_taYFN5keF_L><7|X_=(qV=`t9OwkjeWU_&99IyU|g zc)hrTB$JCaoU8yI*oue~hY)!6G0~UOt$|iN<*38%P#=LYZ>mCqHpnT6+1e0*J2R>r za*~$JRd-^LEWX!h2j&<>qAS98Tkn2sxpW!D7-@F;lyW5CdDlEHvT2S{>@Tx+SafEs zO{NUG|Fu&iv>#h4jes|eg-_c0!Fb)pUFCw`w1|euz%L=SeWpg>Sp-mGY+nhXvMx#D*yeXmu`(XL5&~KCW@nTG8vN+C+?b5! zMQKz&Bdr!wLTwtKT-&38WUDP2C1Ns-<_m6KqTSN-ri?qll<4d+N#0*msygNEA3 z5+^>WDbBgspTS@w1CrHn>5^f!kk^zZM1TBE&51B@PuQK3B5=YH!|2|}nrH<#anV4^ ztXF)I1BqK_Y#Y{_W}Q|$(bOeAHir(3IM;)4E3W!hriN<$Td7ZkrRN}4w8Uc+thO}q(nvidOLG;eK-aL$)zHNYD+?P04Vqx6oI^p=6%k+_$mNS)Ju}1rp zv{yx&Y!y0|=%A!M+Ot#Cr3@p3wBpakRF1Zb71@Dcdxz&(0Ub(RcpQpVtMci~&QVjz z4g2gcfzD0c^bT$LGR+Y=B%w}iU7_l(MP}SQrNznlD6*45=VxOBmW#kBa!Qe(G6 zKa68s`d$W^@lvR|*}1v8(;=_n$$XYWwrE0SA!(_wUASli;k=_KSg_5i@e~>75{RpJ zyv+ga5~Ax)it|7JaWR(9$dSdp2$L0b#4}4bYe|!ex(Lwpmsv9julu#hn6KIGU2Gdy zYGM}rX(B&@;_tGTW{TZwKw^_Tyk)M>5aqA5z4YI3;#I~_sxIo_wqew?)k7raF>7iM z+-XiLZ$tWNTPs_!gEq(flJE*?o>1;8ulU1*6Gp;Sf<^=RPJc}%vYWj)J{3y^pjx}Q7i2tFjVIIV zKHXl*!}*F3VcewJws`M$!8F;VA|0a#7b|^@Qw2J0{z30jqaps{yX*#6gpd|gP}c2- z>no01r1G)NytnzH@Na<;8B4xs6xWiZ5m|7?@s{Ry}@H3PT>bFVmC9wpeRjY!0XdGio(6|Mc)3#^-k55$A?noBV2>{M?kscRp=zcqqoG{w`w~k@!6+vf%rG z212u(-~x#dpF%7B4{bz*n7(40mBHh>WGO7$bh=AxoRATyZ@hy^0J)B8S7SBQ_uFI0 zQD@kr6>g5XOvf|(bkjo}CTg7~T{Po+IVeo#X(yev_^dZsrI7Zg)tV0X-fv%*yME|!R{wY>SKEpqfRvQ z7muenfm8}Vnb+;}6?LyTLi7{0gmX^}t71aogLn;Qqi#OvP->3smj4dVIp6&vsp7Sk zWSEE;=9U z#(G(zXfs)ZIq`(HK|JWXAiSN%`x1Bo1j4EZ(2sgITvJ`G;iwG>fHuSL1$5Qp4>^f0 zeo7=?vSKWc4KdvDQKkW<$%9DHl%i#vhFNSi=%ANG{80v@4Rpx0casJU2fMrZTd zYf@?AQ2#{S*8&ycdI6J6LUIOc%ZY9-=s)$;3O=EvWZxB%dnAxY6%kzER2Ckf9FmH_ z-n(cH|7wE7+t7QsgcCC2hZbF#IKCsLz%hhB1D(s1+j@f|AH4mR+9KUQ*lXiWY5GVy zw)tg_e-ldY!@whtcqs1nH=hkqqC79Q5oeD?q-RRb0uxUHA18{#DUhh)W`oLm{~+o2 znUDYa)Yvx|0$P%vGl!D-_u>v>Gt*QV{ft~2!3m}xMc0R|8x9J@e@`pDXfhoFk$G?rBIE;sI084O~BCaBsK=#A}6%d1iRoyOE69! zpq_u*f;MXls4xu(tsUPsPI)VZ_RVz*4OA&L#vrgXpiPO4fzdPV zko4u@<;Fx4e+&{H+1XQxKHc0Icb04x{L@L5FBM@U1lfQ-gzEZev+IK=*nsihqU2uX zPU8_$$?a~V)5xr+5EQ;HgJYD`u>%Tnr2uvFk7p1dV=?&9p}3$OuhI7QLFW7blN}zw z&+{Wk;|L>tq|$#pVBp2>`{tcw(=tvHN)Se7ri^&D3=8y44?VUOY4{9G&>VYEJ;?3Y z%8klgjLil6fIi4qYu2v)6oaI=MS|dv3_)pESl;k=Hvf7Jh2jKG0hiW3*y@0dVco3a zsEs*yOE1sa+x%uf^05OrJM;UeiuQEPW)9fx=A1+^TMS7mBMHLQfk}vqZ}~xg8FI}# z?u(QZ1I{tVbciLrud$=PuijJN1l{aG+1XQ&8!Aq;P$n54&*MNASO0G}MbKGF8dCib z1c{lvm!~i%ae88bUj4e;C%zT_IfUHWQy!Vq(!zcTJMgdWhk)Su{n$yN=<-c6o%os` zBJB>9fu9n`6niH;UuKF06f)pBQ_Ao#F^6sgM>a~v;oq1|9lt{aPVV169hx{C_rx;O zDxBBDs7thT(dWPI!E#z@rjC}F<+t0CYnqQtd?Hp~0c8+!AVagn`bE*Ga1!DokH1_r ziDSI_vXEu@ReEdZ>1K+B&W67O_l(+kWR?OI9ID<5+IX ziP-gq%z|~AA3eg~C;UO-+X`0W+x=V=fdQ62;;UB^Z}d4k1+umVSX_57RmYAhU`9o( z<+a5wZ%*%{xu*XiyT-JZ{K9?K-Dkl(Z;_bhq6gVh9+}d~Iob0$vijGJB@i_#>oID_ z-Df^qrtg%j?ZkSkBfDLf5i21>rQvWx&>GgqO{fo8_h`BEBxW5HR;e!$QT3pdXVo*S z#mC~5Hfx=uG{tf_;mLWRXXK$WHAH3lXS(eK3PYV0?fBiM>n;0+djnDfxBE7QGN)61 zI^P_?oJKt&s3qcoXqaSa=}n$}Ih77;jzRR2@&^06@&FE>CEdIdC{RH6;7wkUa)I1k^cxlNwlKI>OcF@RuQzgA%lnqMc%Q{up$Gtg?|C3npTXKo~3| zuk*|qWxb+^5J!sAWjWd3Nh|3@qR|(g(C#=z3ChRSziqShWe(R5exWZXVTSIny5XIqByQkn~x{nY8D;-%oDpyHLVl0^5216$A_8{BhUT!`v z)(%9;&BP3HC<)gv1aPXoi^|-#{>d{-(bc2?r0i)Rl1ObrK;kG&l@*%7aGLTQxLNw& zzpt|dyMH>G1AEf^7hZOhneqfR9%?NRsa#wgo#9b(FV#x*!?fJq%|f`!H@yW-6;+=5 zmi`h|-!vGDbX1e0>usO;Yz@#+a^0Kr*Rgv^uA}ei?lc(+!vXi{U!b>JKtN2`P0z{%@dkN5lCX`1EbOhy@mW~tSlw5#;PT8rs`q_g?wbMvjkS} zgSFy^o}mxvZ7jehRt=s+2r6tBUJj~wv{{KtwDVrG;$H0}Ww%hJCnm+czm@`Ds({L0 zq?ULwhn?as?=&Yv7Ld0@p9{?1e8F>gKr~krC$hhy18o=&J+xyktZCpus-aWk!Za1L zZPQ4f!zSl@v}5S9@wK(4Bih@GXeJu5Wvh=JY7z}G2{zg{G(jw;WZpw&&`$hyhX&Bi za7$_>9#}}Tb%-GHv3gQ!`<4(Wh zK>X9cj~fDUqt4Y;{->+!2VfyxrmmQtR>{PCLZcM#as9I%dp2_2ky4%juN5)HV z)P4GU@%&k%Qg@Czf1FA&kiV7&`AeAk_9Me<`3CQOiQQS~X6F()5NV(>Q&|g({$8>< zn;62%6c|G}*nr0PCenL<;QopaISyV(Y3jM{1-lj_mXud08IQ??c)lVhqV!S|t}_ zjt&*PjV(ISKHr>qy<6r+=^px~%W-3WpTUrsS-xlIoxfske{}G-qZuSH_8Bbg`Q|*Y zYR}HvwMI<0n)$D5);b(AV9s#%Z?wJT#$Uauv0}M1ufwc?R5!P^-P@P6{kel?&`930 zP^S(9u~PWj?-xq^_{0nfFcmLjzIR+vuQ4o=Uw_I7&e+orLcy!i}ocWu7=;MiMYmJlab#yN8`}eC9`$%`b9}sOGY1R9R8_r{N zX;7bI&;BDGaWf^=mZv?dX38SPlBtY15%B5>bEC(>fY=h_&o4aJ&X>JMpsa_$Izo^Y z#7%P&9K?GPw>cYnS7r2BKWwG!yaemdL+x__p)_xFbtgj6b#E~mvWb|S-eU8m@q5)_ z`QeYFOKH(%{Wm!%(z$w^bVEFiC4A>cEPos`bl9bDJxSsYi1sY~`84#zQ!^!3k{G^a z8q;M%elB;u-`hFp%q-DYxmR9lvQ_uyI?W9|`(sWQWL>tQ4c@(>-^YH9-*iOdEDPnH zAto*N4uivfc!2BCOn>G{wzOtzk&vE0+xS;4@{woTv)Xjz(zR}h<1bYekmk3jUAb+z zM!ZKOSPeX%g@ZMo+@%HD03faxlyo~E>>}E|meE3SpC`bR(iM@41&){6e?EsQB$eT{ ze^z}qBhmDJ>XgNd1CP?&fl9~-9fhy2lK7v+>R5URoIxyD=mMZ@PWCrHLfu6r86wxC)So+YrdVmI-SnZOI zC$b_hFks4%*jHY^lMWA3n^pz^oQOJkI1GF3n@_PWso7=3;2;GQ$_6m$a=HeQPG+wM z1nxqIGB@GQ{{WzIW?Xv#i?>Ahl9%W^cUaVCv+vKjCT8EM>j*AP_$%6RxXXA|kxBBo zXz7?H`VxB3Cl6{Nl6j^zZp(vcH+D*E*SFwoI;#(m1{_20H*E3!!7aq|a58s7%WsVz z0T1+{xo;p89=%H9Beg#sZA-e>%kuS1qI_vVpnPP!pLR|C?3&;A*jrd8B$1|2WEV<0 zR)8^-i@0S@m;*~o588slEQx;ore_Z=ZfYJI22)KOyGJ6oifv=zn**T2<)52#7SXI% zOWsuWKggFgM~c967o-snup^N4;vf41dU==_{JM@oq~xiDT^k~xl+^HEGA*eothhh@dGk-(gQ*0YJtcotZq4PRydRAP>kz!eYY8>i+z* zpX38mDcjXOSJoek@(9&RQyPmCV|%`Pz7qrm%Kd0j9XNEzZG%qR=JQ{7Il2N&^aTU2 zG7=+B1ea26gDawMC?>tkWumR<@nfev$B~Xy5@QCW7FGA`P-0AGfk9H*Y#m4~H)AIv z`C^FO&#!O%%`0BL@$yqWHB8Xw;S_93y)M`#*U(x(6#+#3>(QG6=;UYAs0t{J@S%wt z52+;;yunu)n3C!q#kS_AIwpJMj37naDA)y%wgEkX z7+Kz}7D1_m=hkHsY0;yE?zZeC&PT~u5rb+qS=UU|bDdhYvWWJ&&~!EdB^EmZ3KGIe z9_fM+JP~!O-k!hzJk2YGCUB<-lZ<3xV*h21;|lmbe;D>_geu=SwW4l1d+pNNBFRvZ zhKtEs3O|M~tXxb@ulG`KXqak;A~Dc)tS+DTTSqfj<@Tea6FYGY*Q4%6#2 z=MDp9yqH_xVvT z#NT5({={NF3W46l;H!ax9MwVtJY_n&2zcZ4Y^-|k@zgw5&b5y&`|CA)2U$D7dX@yT zeg1;KDhPUGC>Ax$%lM|x@|RxNnzjb#Jc#mqf&UtPQO0+Q6At?T%w_`3qQMCw7zNY% z^_dU3#2f%0{$^wp>~{Zb(^`G{s`j}P#l5xW@9*rRN#d()+lJ&>$$18aI_n=}ltbNQ zpJ=ebC=yYk5wHihBoC>PIb!09DK`aQL(mQiWl*I$NDiq~-pDXRwghr|OEkNE5r_pB z{^u0;6Jzok2o0hOLViqKLAgZ(P_MKQbW{CeTEOgWjeL%T?DVX2@+n@Gz*EL5ZKWkt z0*j=6-#J@g;Kc)KWt#r(;$GegO$ma4j6XzWC>ToKqu zdHpfybo`kV!@P2elbKnB4_d#ari55Q^jg@y_4c?eGjz4dUiYkT%0dFG%a$^X___(L zcacI%uzXA-(guvCoEh8}(h+@+M?620qFWrnZ5G&#;O%_y*pO3IF!9Nt>ozpc>chhJ z0ncDJodg8J?hV2A?lNpN{yZw{@kaJho3_o-&VbK5rvf)GwbNxH1u1-Dij%l4kTyf7 zM=ZQK1d$@~3k~H1NUGQEoCrorUlA;0NSZ$br$VmChb0|5H7VPp&wY7&opu1?R&lfH z3Uctvz@2J<%jrhQoi<`eI2D+_V*J#v?Vgk23RX#P8iL|!-gHcoX<6U@^}{V%Bmt4dP`XJi)e`4& z0g!!T#pJaGOF5NekkrTR$Nw+F-a8)aHtZiaLKKyTkdY`OlvydG$gb=%8_3=>n`9K( zd+#mlvRBDo$;j5QT_~IIJI=cI^L(G5f9}`o?sB=V&*yWV=W)D`_fQoaS@`7-o9_ik z0fhD)cU*v4fE%dm(C2QYQ$kEAC6C^{B(J}xJvhSKov!E!!|pgY9h==o-R>vYQ{7_ zg72vPiuL?MO#Xww;#~?(B``v{$Ey!;B0L*Ox@%LUy2G6`0Dm(@sYuN&!M{8> z>N;L!UsOFnwe%T;IY-v_khkoP9qf2mWXMZ?74R$9SAQZ?u!b#~LsGE6jM#k{{@6-u zpVVt`GFtCT_yg%AI{Xwset66902Fc$^BzYASExa*Z-R8B$A~PvV-4&4t)L5(2lcyu z+#1c_(B3!M5#|T1O^O-!Ur^BC6e>b}^m~^Gxrb8&k0|m)L3jrrvi+R}zUXoR;48yB zP*jN>u0zqJV*s`a1pWb^2ott;kVc5$Yf2C85gnP0Ep|fljpjRB6uO)V2&xzx2lP}I z`qA}yFr7o2f0y$pUyphx6c4=FI(Ix6vt-l{WV_#;&+p6(0GM`8{A<|;#KJim_|LhL@2XLJ*sU~1 zG~A%yG5YVfhwA_jc!C~EpAiltBO%7Wg|2R)UtUq%Utc~LV~Vr44V^I736__gJ}yoT z8Wahi%^fc8Ga3(!E*{92SyW#6x#bn5{rKTQ^bR=M*~k~|cRzqWZbHDH^Q7JLLXOIR zJqGZt!5rW;?C3YSVIay4Jgw;OAjYIB0vnDn^lJ@r^5 z;j4wcz=rTARB{LiMQ8KL^{r?Ahm?_<@)UV*BLL)KdsYpTI=K6q@4r$86Scg^g(GC2^vRAE^Y6t^Ep+9-wE+>ErDh+ zoR7RvSAYmjKqmmIJQ>(xjF&ZWjR}g@oPewK7XsqiUixQA_^-(hMEJb7u#JkuzXlT< zb}t#pp_;%Oa2d5=q?YlT&yjM=l^c13pJBr&ocwe$f~*f%mMb8KjDYGr3N}}? zA2qJs{pWS#ig#b~TbhY3-sLQt_e7_`O&YU0+$xy%kLx%QZ{J5gBug+fh+QgxE@5Z~ zhKdo;sC{!#=Wcin)XeL{jsJmkk1IL%!IBZu**&~@U-0MhEr)S zyXi#i7 zAA)wF*=ya{1d#;R38VxJi^j8WZ?oEE+5#AWTj6!5Efe3%BZJ~Jw z>jrBHI29+f+>sNP6@llgeEd_jL+Ng8VpD=~w$cuNMgq3Pbm=nkq64)?lXL!f`nX!o zP0HYPyz^M5oxAYraAW+yA-$9h$rQf1u?va6z`fzy@2c+tx(L{2Ipd(tA&uFawug}( zQRt&#(!lMe0Kldl^Fe{|E)L)7=XT{Pe;5#%7lumO;*vo-q-~lsAog14ZIj-_zG|Mp z>p7Rqm4Z%N*jGs6#4Rl?JK$RysojeXfJ^Za6KZrVoM^qdoOP>KG(USUebG`QzfyC* zd&6g}4NZoTY14kK-S`EP8X;TFAG$|ZslPu-9M0Iw-*)kh%kTOsVQhs|L#Irst(%Sx z-F{MicfFzf`aKR8-V0hxTOEn}!F%y7SHiPR&u@=sRvXd<0`$o_esRL>5>Wl-yyeBXMZ{BG4#!2>}cxm4d7V)`LSY@GZ|GifQ7e)-hy_*yM1vsAbE8|@ZyG*bBF^1^)yoZvc3{is|s9*HLfhtANQ z%>NIhRy*q)G5gf%EO~PkRE@K#z2B)W8zc_& zukSGNwmRJE+S3u8a};|zMCADV>6=eQpVNA1-WuIg-FPkOKya77wL&P-?mKy!!CI@Q zb3EY8H@*v+8}syBULc02_tll~lN5{9S+A}wZM2pha-vaJ9%<#JmaSl0cVXvWy`HsF zwXvj(c{nqFblZt9rtMJR!u^9S`%D}wALVp2+Q>*Z1m$#RYnAA}xWqF?(;4^be7Fbl$!)}}f`25*n zha|1e@}J|DSG!E8z-IH|x>MziF5rnug7OgCp15PPqQI)RB zk?sVX9@-o^>HRiKRbkeOIe`s^v!z zjaX^J3+#YA_Uxmwu*w&9VJ~b4pR6A@^47j0)bxLB?Qn8q57zCEM=dqcI^>Yn7-Bb2 zBvc-6r&5;YJg#2HDi}~tJE)8Ngi+%l`8rVGy?5e+{yPn`c|hlC%RNp3GcSnOu;bQk zKMk9qqhUXbgpk>U@Xi{r#oK|*FH3*)%{UT!sGGk(xjrw=QQiRi;f3*)rOGA2BKYW0 zAmQ1<{Ec=?D4sliX?P$6ZS?i5_fQtk$*^$qDDE~p&bQ^nsdnnG7N1(fSc$l-9~ z{y+GeuA+aIguN66s3e4O|7j1c~Pea-n~^ zwJ!Q$X>@y)y6+ z%Ha4tBMg{5SeGsVv`+wZ09%@4+1wkk_kt0c69utt<*^8*;hBs~cX+cx-Pzu(sr%v6{(uj9BbA$mr@ zdkaf^-EP-`Ak2RKt!Ed0bCS?2Pw@WwbA`=ek0;wJc&P!qZ9RbZCnV>*36quuCm49z ziTqKX;{=FdmWGTgG&dg0yEJ|C>XMq<`?X$|-$4~&e->WGwz$vn53HkEupQ~7g;j~a zDPA&EF_i*#SXk@jldNHqFgE)AakV*qA$<~T<>k2CdUb}9!}}9wt5JvW`zO-xUzr`7 ze}--T{#U_-zmpA{uR*c$M@#j)?UE?`@75HVf~AAsY!(G%{m$?1>(7^tjJQ(rOq8Tx zU6upJeqn^@Pka&o)jXpk{JE3d_|VxFtHQ=lU1}!p8#u6frtIGr$hgre*O#$KmPx?f`y$h zkU|f+&_7ZZA0R`aU%c|a2|@6V6ZrqYpn# zVC^p;S<_4U_Qlrifh*Ma{^?ryKl=0ktmwbd0Qe^Vrcm~@Jo2LXU+&7nFXq|*&EPET zMEWyWF`GXBydYpphK_h(a_ha>shraL*xM}^y)gb6ov; zlj)BS2LJJP!@2%ru*5Lj9`Gg^=*(roxe)PpWdZSThqLxzn)`XJKI>19a&Qm<+W~)O&OwMJN!~-)8>_tx6bzp-d#uYbGw>EjQod9tY{5 zA#!F#zyL(k8=*uHB-ut*jYyJ&29TP(e}B+}A~>`n;LXQ#U(dS2ZFbwe*eZ0cJsP1Pw{^F zg&{rGuF00g;}nWj!0an8_ElIQ`>MewAJj`>fL!#*O1Zg66d)b!5w|{Tek~5oOsq zAKHCCc-&Y~x^V6)wC^rpcRuT^vA(qQ@G!rU(-$lF^!vIN!}jN6OoN>?PMOH?ja_yS z8lH&*^Qt1PJmMBmHgXdvT}((m@ai(?lieY!_U z_JBfi39xT2pg9ZW3y|n6j+C$00RN=QU4pt;E#=%0d(ScKsaaplODoYzv1>`A3^X51 z0{!($CB%!>o^OK+R|cp-PZ~vUUB;&sftt8v1GI3jH?t7pFxC`|z3jAYrK!Q_DZQBB zcQ&^Buis5!8{+u&*4{S%eCyBQF7prZ8zZ33Ba&7SEd;1MLTB#JhY^k*>SM0r0j;gl z#atwd1&FizKUN8hi7^{6%;84fY@dFtK;hj|#QygKKcNLH!>U(KJQA_RfEkMLBUl{J z7wGoqYndV)DD)ql|5{8}$4mo8eJMCikmZ&ojLUxkc|ggD1b5~3kc$s`5X(Xr1?yIV z1=I(^&wqbroPDhV*E9iqTF{R3Ba4Pl11VrdqzgKCzWaX-oM1=Zhee(P1OM*BkW7V4 zt{46g&LC|?3`}dP9{>F{juQU+gb=1N|N9?t9RF`D`2Rd>{`sqN#)E~PFctq2aJ=g_ zoYPvMvnbtyOWY3X=XS`sX-B+BAa`TC0HYPsJdd+%{_rVMGQlL14=A>=4`7cNgo#i& z^idtK+cwT0#t|F@Gzf|Bf04`)0)X%)hZ-yl%gaH+WFHH5_gFS{-~~;=&EbJ$@6RW3 zT~GTG;JFFs_(4%-1MS?eBwl-H3_B2k^~N5|9wLy<_qR_t^uY*Pf^1*>Uy3R)d~V(- z!@Ie^GrlixVFc5^F}ts%mh-u#QJ_Hk=75|g$#yKE`E!~AhDj8^sR^<`Y-&c4o^!YG zTp9dOB1Xe9AgPgvB(V;RjrV^7)>2dlYY*BTVje;p|HT6gUm| zGl#bmB=jKS1X0vvVc6IKYu(iU$`@}%I`V)3Py!B;7gebAS8&9DgV?)l-;hcmnRWnK z8Jpvac-b+qOfm%-=|86$@{}Q@CK92@h&0eZPTz;944p#zjyr3}@746cNML6%Pef-a z_~RvO+!Prw18*3qwMV#e`d0-?h7peqcAqGCXrjOsC{%@1te?Gfq6aV(;}b|kK6JVcm*~08k2RiS*~Oj7ClZNbd4&5K?hsSx=#IaH@LCNZu__qMTU(gc!6E*QC(xecu#f)D_dLDSQ! zYSFx!awnv^5G1fZ52;{569T>mLI-+Z(dPPSfGX%C1X(-KwZTwZe-ECaC`eVf(AC3> zssWk>T=`#yof`tkmP(H^87*uJVzoD(h#5`+7p3z0X}0}tEb=3<@T93iebH;K5;Y8=XwV~qU#12Ce$ zvdF8+Suw)^{BMroxJv7J-KUSTVr*fe80`41SvhJgyU>K{z-uwwPJsP}^5G2=F03o_WOz_mRaaMl(kJ1m{%UMaDj>%KZq4Phl>G( zh}%r~i2b*LC@Jb)NPUT2f3^pA@l10^$E1r}$~LSyd~g&fz%GLMtoQs?fbNTi=lQ@g zY44VV4+xouRDr1;pLv8Gajy*7r zmW{4Mn!u)gLhX1MQZ;HS#M)0qnhT`^ca5OJ20!RC>~^GQz=gnmyR-th`7C+U;M6r} zQVUCz2vNEBBqb_9M@vKt=#el;YTU7FFeM^GLbCcUmrYWijWJu<{+4?IutsH3=QB zktddAf0@Fyg0kt$A$!q-` z32#;@^VTOdsPDH~>b-a))od8axn^tamnP`hnQSodK`-)B?n<6>J#6Eq`R`q|6~-q( z_F6oBM~UL2U0C+@Bm)OkvU(+Eg_AT&-mCKCBD>ngZA0%QUc6OS?U}9#BccIb3JsCX zI#j_9&g+;-#9UQ2zPDv^BcHx40MGejIheQ9U>>JDCVhSVhc}H%w}VLAn1TKCdj>^w zUKvN^L94RIA`z$f6j>aF+(>I5gKITR8KG$kIW7qhBkBeR_NOI8s+=&|gr=Bh&N=ka z6qg4gsPxw24n6_KhZ_Qa&430%1RdQOqbC)RMq_Ie4J=#UE7CUy=fB%Q4dHGq(4Pxe z)(s{S7q&RX&dc-J1CVMgunnZJmFsCMMli0#0}S}!UVF!z)7S0H+MTki4Tl5IiJzbR z6zIfr{4rD;HvK5yVj3+m8PI6I8q^mIVI@O22xlr8bWB-wl3Q4J2PI^acze5*Y% zm@Qlzn0pH>@4`-+A1NXR8Bz!rgb&z5EcxI_tr3-wEc~IDm1(5XSx;DgQSIM-&lS00Yzow`4Isx%Z7w zDiFf?qnR;{yus|SAmQ~QxN~Ezw+^hcp1PzNJc|bzPn?Y=#2)S-f0}PAT6m%xsCTt% zK*odF(No{PeZpkS-N}+q8(hwNoxmED*eAnllhd?%oqiDT2X84I?$LxcaNAqCKE;0P z+Zjm5wowaBdwrYE*`zikPMm?qE(52Wuu8+;#8#p12bgh@wF5h?3{3>wUpsh27U*44 zzydY4XT7{);C(ZsvK+qx-IMXGDF1RM?l~#PnDTpUkcu>zMKJkW+6);yj4 zDyG$bej5J$NZd>55awgBfzfT|za5w~cx*mB2ea&Hha4cutX~dICm>Ip=!ENWMh|+1 zxRqR~Q^2zpxC9789SmDn*mvXtEZ!g~a%w=e$Kv)jVnrb(0jA0pnmhN}9e5C@<9+cI z${&YkoEeHI-PM%5lUMzIu9USb6MLe8XkFXhWHf23%VqD$ux?q(@im{dPhdq5+mI~E zr&?zAXn9B<&eTVxa_*o^zl9&JVe`Q3qB8aY@!4l4khX<~(xc-ni?OEy$|HbtLBk@r*R*-yb}nTXqN)h=m7F-i~gQL8IZ``T{5-|>1qsu z@Gx(b4)1|}oV|BRgSYHk9+h~+8<=r z!6AaV>`qiA%cc{GX;@P`_d({dakh5q+c?vA9j*$Y2UTXDi_nQmowA2AKe*7ebTJ!G zEU}odlorkwoc+@$ygRM4vdkdsoq*_Vbt#-^oXhZ0iI6wL`WEmJ2+y4}KAvstCH<t$YSLQ{nS5K=fw%%esUybSZihjY=R5I1k5p_HqiYwcdr z?*KIGj?DBp1G)j#Q1F0#1HWgGt}0M;i6PfC^-1@&`#+#mI%P24d>uB`BI7&r1oQKH z>ccT$-Sz-LpI#6}7#qScn?^-V5ZU(Lm{vRSyx%e(M4(q;6=GEv5$?51nCru?+NL!9 z1(4-NqmS1vWSQQJSTQc+JzR39RDi6r^k8bq0Mf1@Q~M$iJ8EeqAWDbz<&v6*FpFQg z(YbZXvjBPc_df&lsU7*o4!p@x$&b?*s0Q}2O*9~ogEkt4+AVK(t^j2ky9;n(JCq3| zj)$*ay=o)-^&XTU+{p5O_Zj#Sp(2xDjGyZxV$XMZR0zIAI`2zJ9X2wcmA91OEWxwr zn9ciDKb$!O`NLy&V3}`kf6;d<3d!^Il^e z!D4ycd7{p(Ua%3kmO7A1YS84@C-k8DS;_7e)Mqq~V<|0HO$=#WZdFHj;P52dB) zc6D7-F*x%D%H0yfa)*%EPdf}IuU%7%7eL9S@s z>H)mIFodueF`i(D=3jxv>3yFYNb5Z#`HWS2jW?jvw}egny|sDn5k*70!_-MVj)6f%7rM zhFuDEBxgC8g)%tzjX>_0?7f2&pY1@|>=Zf{MlKG!wE^^JaT3_)y*$6O-*Y#>I7p%qTYb0z~|);3Hh7v1Z? zM9zc*U`O=NfuopMPmET{U8Y;LYyE1v5cPGeDT_glT1B`Js_!(=GCpc*haUal&f2-x z*U8O=<~(Y_();JYJ^ICpedxhEf}dwK93}V^s+azaB_CwW!@uNzjKWOY$V&}rpD<4h zNm`MS_Y|x>O#MCa9gDBWz+2~8oKx1_cM+$*q#9z7x3>QV>z3m5B-n6#nlD49IjeJh zY~#;`ZOOvThS-$w;% zY2S8U0TS}muerSq^|MC7p6cP7V4O=D=KeiTXdK)NckGIPV467q)GwS@_WTG*Wy6}_ zzVjnv=Uyd9hHFOG0jSu(e(Jp=4aoY&4%pOeVzg3fi#o5d-S1})1E$rG@#|}I84<&G zpeZTSorfyvoJqR8g$XGDO~ZsxqDN1ghiX3(+)!Xmlv}MY49aOm0Ew5dbQf6oPinlOzbY6u$c)ybby}6HjLoY@&!gk( zyWlvB83uXC%IjOS;HFw=EZ){y#yeW_Vj1e`nDlsHvJriIa9rRN|M|qpS%wdV4;QI8 z)HBW4#Q}NpI`K^Mm^OdxQg035G=Zj(RJpsftxk;&rq8r8j^r{O2iEV=@3tKgm(P{) zM24x`A$<6X2{fYE!a(7Rs;@_5`K|9<2lWFUY*t1OLA2!t=*cBJ>^j0s=i@6_hI6zg-E#AFh6y*KP+w}2eP}^+*4+uxSloc1ML1ko z=}q(v&?Yj?2*|t}m(vP?VyWq*A_ZxlVSvVPHtFqTw-|7MIxv0?3{gu+Z|fVImWE*# z!4{}pi1acFaH{WG0^mz*v_IE6v&%Y{Ddu48Fth~510B7BC<$r6gXpFc)D-rF{Tdbu zK$XKjtT4RwopJH1)akx;a12uG#e$XhqvLWVxk0j=fZ#dQD1Gr&8&+$&46OV;b8krz z+wh558kr+cf#h6olUwrOc&hL$)KoMJ;i&cf*%WXgv;0?Qdl)*~#e{BB{*j}WYOzmC zuxJWnEkIgF2as6(iot8z8+aZ>M=&1qQsh=kM6tEWvSh+GLs0V=?{t^T5}&D1{zSY(1d|AFmn1rRgp;|jxma8zlJ)j^UmfB zv~&{)qIw8Dh&`=}fc(x?bnb0L)g{rV} zdCVvk7GU@bfQppvaA(7D#c%*3hK#L0Q@`XI=D9*O^x&hg0$4+l)8>eONb&E3{$_e!u-d~P zog%%))`4Fze*AVt5Gv_VkW7}q(ajqH=HD9+Cp7pqE}=jf!CkTD6BYN&P6|N?_|_W{ zF@l=V(_gZ<;ZIS-UMR^WqI&~WS($w+2zRUmcBD~ON zgVLfih7J0k6IvA;mpu>+{0SEklm7#$$v50tCG~C>7#5LeH-5YzvTh-QG#x}lHav$u z$_X_P825U4Pr)d*i2M9%B;DO{MIRPmZ<09FfOz!Q*QiXl)ns8GRt6NGu)f`zk5a`( ze;iH|Pp-QwLU>MNr{73dsox$#KaAe`9txXF^CgY)Ir3coX8MqK-u^o|u369mP=fL3 ztxFM^2~Vqvf~^%?=#_(fvtuZpDb#L50?lVSuQwrwlWdYAYYf=thFQ&rVk>!d<)Gqu zQ^fhsyyyyYT6)imNjOkvhE*=Q25h66h+vWc4LBSruYg(JN=bM(s{>WhkMoI|h?#`) zfvyTJaN}LyzbtI+{Q0~_9VI*mskLhA$E#u2hx#DM84aXEF_jxkwt3)O9 z(W{$alXloYHS;wU$E@U&1K-!nHLP3hvVY?Fz=T)(veT75#7do+!S5gqLV<|)xtfPF zExCKX5@$iA^)T#DmlovtD0AEDGAd-(!-_st3yoh-xJxe2l4mk&Dd z`Z1_EQ{PeED(&tmSxl>yEV>@~z)gb3qn@Bb!=VSKy0xxcIIVK_3;$R`MUaR(j${$X zlfeq>Y#LD&VX0|#4Q~g0`Q|g*XRv+Q;jtyBmmWS8$-o-aLV@OAjzylRrF~9S{sN0- zZ>H5cG?gp;tZo`>*APhX-((ap~R znmZr+QQg5@+T31kxIH7bIrC1%T(tXl&m=o}A zNjiZo!zTSQ810M7+*HybP_ntltH9(Wnl!mIVy#i86UI|7hHGP-d_aNzjP0UAAAzhg z305TwPrr=yaH6F3+^y#vL|(>xd7#-n6HKbP^=I9)}798nmfd%G-1 zmFk2ockhTS4Vw%mBIk1?t`OP$e?j-`?w zYq!t30u2?*eGkhpHx}N!V=#fUkgC!qRQEvnE?dAe!4bp65fpRY_aVQ3jj^D|fAIWxA1>+eXD!Y8Q|G@mh|5yuZN zAnZqMza37h3Ax%j=_1}@U8C#ujM{O~eGvw8kI1$iDPuaQPHtJ2a7QF#&RzP2f2d4q z*I$R#05AtZgFQkv=mRkqZg z;=QKOpEXdbe2t480r=v&$huiyitF2MJGX2>8^~G~U5KynwKXwf8*v^H#R**^OWiXp z=KbuZcjArJz)sY~lg6?(;w@(q>!qDK4Q(7#YCH_5qhxa?MR=W&|2vUKXa#buJvL6% ztU1S-wV&a8)*v6!Nr*8_N_~A-o=eMwO|q^RTMMeX>sl@JDviuTo?hYoh95Ce4^ke) z$OA(`a1=nn39;6npD6d(Iu-tg(u2?Rq@tT8y)MqW$}4Xd%_e zxY8u;wur7VgMj{o7`HRShlJ!d)eT*o`6Ry8m^qpmbCET@6Ws$Cs?87d>6K+4-XG*r zD>JxE)obHsp8N7w=*UuEnj&sJC&_hX(2?e8vl6h6ZYlQNJQFI`TM?~l+FfF=bRqHE z`7hY%tnsY+sQdWytX`D<8;;orddzwStBV*zHdE%#J##4+VKDYsxHisOuE^cGy07v! zSg`9CwD=V|{zDu)Nj6c;1pHrR(<~;xR?p`f%pPS5F{r-3WI+oeW{0;;FWS@QQ}p87 z@)-OpXLl1UlLW_a4IHx(u_iEoEJyA=oKBuT`sxl-vYrji(IW(=ir+cZPo9yRthyiC zq%I^py=4}{lhqXJ`sF#AKHfRQw29wx8;6$Jo##r@OMDH* z^QxVylV5lj5W4jR?AsTv52@ATu`t*Sp4%Fu)Kw3*H`*2}D+s&yD50eN9 zd5bQ7zzqaR*6?~#q#2m^lT~&=BAecDC}E>UWTymA-6F?B208c8p)_41yRK4_syU~O zHNU_}9(NY*~VWpT$g#18Nb58O4GdV0M@QKQ0&xU=ToQB6ZiL*uvI zB?Y`?x9qpt4^Na$aw_%-@4JxRzi=~tcq~iy^LB)Z(_^N+_t(Y^h*QmcoaVAKa ztEU10f6QtUZr|06KRNB>{pg&Sd zSil_Fz;xHEGR{iG#xGc3y`DXO!i385Ui{UeZ>Li(5TsbwJcGFm9*lv@cZHgY8WOjU z1D32Amt~i=ek{*)A?$~5x`lVLWr;Li?^=9k+Z=zTjzk})oR&KGcy)2CzlaYDg{EC1 zjY9vq!NU3eLbnGdv zn^Z-<9*fr1H(0N1rM3u+vF~LWa4jPI7c25tVQD9fYzbn71VH!%X6%>ZdgDyL0d6)GtZk&o4TH`Nc=a z*ZO8WBL(xe2DzWR-K4eCBy@^OY)pBivTTfROFv_}>C=;!6cLu?)2LS7?x5hwMc`Ge zdxPucwzKNB31nF?t<3&8sg=&>d~s%$hZ^-K_R-XWmlBd4QVp*g)gr$E2Hv@`3Bzvk z82Skln6;=9#$+Ou-mjMDIfROi_umWi); z0j+s{rA8PjgKf#dhP>ED)nFxj2@d)!H`Wf5LmCPPBSpCBL+*dRF+TTJ#bYjtJ?GGj zsJ=~fzqBRAmuvBCZ)Wt)dr_-XUA55eb(&2Y4GkLD9!vxna{FPScbH6f4{){{u zIZfD?_3Gv$$oRGIr&%W>dC&c3@y7TIZ9}r${F^&F05aF6uO@c;kXx#T|Kz;*ILW@2uk7;cG>D z10HZGjBh^WuXGJEiPFfamE=z1{XiHgxvynP4S7Q)u{kL|;$NFym+p>8w5)U34|d>b z7Ha$KBHIx6uTK(*`;j&LZe(XH!RH~}vU#EE{oV^IN#0=!J=>!P&Yd+N`jBTmVu7>} zCJhEDfk9$c8dFj&kYC2z^~7YIKs9Ogr^bgJ!Lu8A3bw(jcb7g z_Kg!=2j#oFbegi%U%Gob>o&2n$w?DVC&bmkTh(?Oj zoGVF0Lc$T{7Fq*3)=AozQV*C6X=)|7L*FuyG9Q)le9?ZSrqaTYq)?AWvcym*__@`h zvYGhKdYFCR)~NJk+3Jej*j?2wjp3{X^)ffcATh2k7*rTh_uy#fxCt=LzOPJ6A+%O! zh#Qx#FSEYfhk>Rv-Jc-x?(SV%+TMh?@%WXf%eF9;ARuz9;%6#&_Ec%+Mr!=LVE-1M z6(-g_3~Ki`?1``2lWO9Jx^aolJnX9eVArOb{ZqFJpq^v4wO44PKIiPt4zVk9h2r59 z=+2z0mW{b`IpSf8Il&q`?@aFV$4Xlk@jF>RLk`C7ThS_-jXLBh?U0eO>YEAl7ZT=u zD>eC?H6HLS#QrV2bq3Q>4I$+x(qqox!&r>BrW>SnpzAdC` zJKOsAm${Rp41uMGo-JrJyzbFg%VI=c+BrUy4-fmN<1iFtNpkyvxDL(%dgndjMNVMn zfh$!+!84Xnxp7K0uRr%)(#sgTw$qt0?1divk1S*30DBc1RW@$xSoPsOrxLr1+{m$7 z&t_8@E-Mg6O6rjI(OQkISzc0|wosDm7IS5*rhN8sA=ZrI)aU+1vQ$bs4#OKCc;^CX zd1e-d{K?lIlU}U2xCou$`;k&M{6+B+B2Jy!$`!#jn>zD0@~x5uH^MW#%SpmPP#<>{ zQK>5ijOQj(USqr2A_x7%=oaP;{;q_OCwp{m%B)?v6q9ONW4@b*yOX4We_ z+NkObII0rTV7z}Uyi?xYC)?mSCqWEPHuz;@>~*ghoJj`r(fS%QJ%-|q72%@jcXCX` z{BAEu?hHz|oHD@A;!^0IW03l3iRF^Vk&9o+OY*5arC4%ogS(^fwdhy!MCsnLhw0-3 zF3hSSqKTrmYlqa8IQa)9>y1LaI3vb=OGM)Mzx(>rc6+ z&vE=dUD*d_J6?zkEMzS54!WjZ`3$&$$tKyZNo=(=U9P@`M@o!gZt8UX%iAu+n^SU4 z;~H-oRpG4-zP29jf0)izjWx+@&nA~!6$pJuP8HC5b-Y8O$2sYPSattN?W?aBzVsI< z6Sv(TSx5k&i*X8*N0&gK63-ohr zUzzQ4T9r#p9W}i@cM?Txmg*{6&2K}qKzWHr*tK0bpl}cYm7~g&oL@f^p6#>Q%{e;N z|8?<~2fXM9UZ6it*mGL>9M%YjJQvn4mZS9LLBU@VtyM~_yyv~jqVeWo=7*sf8L+#h z=kuxC_e#{mqc6ki6|Uab=41c<<-BJGmq)m6mAI7e3dTvP#OF4421X>MlRnj0Wf5iq z%aDiZU3N^bGNd9KtAI5ZY$_y`(ZAAL>MdG-m-VGKzfzilfLwe+!U#Eag_yMJ;!sKU z=v3|gu4#?IohYY$2(|k*sOcupM955eji+2Rl#=JFSR3zI%iz^2>4upz=_|;G319q- z`E#0Jl2~KfyF%PUj4a`Yb5mYR^hs2=IX>46FHe~@YinmV-v-2}xTSzHSgf;g_H;v%$hq*)#is4&{zFw#=U5CQf>a~LD6*v%5AvIl8}BNOk~n;x z)#!Z36k*40L3D&R=IN!|9$%ix%-4G*H!$-*A@(jd!MO7kY#&s;*4QEXQt9!XB5UjYroK~~UAe3Mqy7PfLD7z0$gsT~w}J)Uo8eO{gY%9v4!5`m zN;=Tcj<;Ji0#`vh&po7LJ#S?P2m}oyrP1$`SCYq-#EWTlbEFiS4__N7U(uf-rz~K; zpD~@urO6oOnYm|x%++E{d9UP=oR>uWeq~JO z=#vkdA=ED3Jh;L-^P{K3EA?fh=XJ6z?!3W~=_W z!pE;!YB0?nk}uSd?$mS1q9Shrm-_`iDRo~(KSfFVzzmmTd8&*7KCqgJ&A8vMeV)Rb zh|0X*OI=I$cV;EZz4k$AKz#C#_++@H{S3BLlN`DELY1r(lTZT zjlq&R?{bkOv(%}Z`dWFSLAEp^b<&2nE8ULjtYlR;P#^4B8EF^SIDDcPNF*UouO87@ zHo#)gz+#~yl+`H%lYb~t!jLwb)u-)YdhzwQqzB8_(_YS*@jOgvII?t+H+1gRdjb~X zn+!wKaQ^jiS{0G=T={}G@m*etuvEEZyGe>f>7fQU+4oC-NIgEH15;GW<@U5 zAGP)Er!ddRq`h|%rM&Hvp6FT94`?X;UnQe7ChK}W` zROl&np|9?TINk)SC(*oQ{gz>RjAc2~kP9nabX(G_)rg}m*GA!9-i`S*!)Ja(*`utN z?JNi| zBKs713e`>@AJx-Cu?Hry0_Q5&Qb0%$KVmwv@}Ge#BC6j^~3Y4LgD3-b(!br~26LL%5^G&W=^{mdLTDYP(q>NtUUo zL^+;=6(ys%0PAonZ|D(c5p-dh#9DAq({h{QeEq8_Dn zJu!Xz0a1(TROrWc7XVm)Iq&&VSX=LXfCN9&InO-(%#o!B(5hk1gYw-;hcQ?;9HS{i&fi!p3B#9M*D4X;!

    w@x!mx>fJ0rK;G8u3DJI7NB<6Q%d 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 diff --git a/wiki/images/rps-practical-macos.png b/wiki/images/rps-practical-macos.png index e98607b44ae60ef967b40eb57a7e676b6d025cb3..433c3cb653d8a662187407a85bf0270af4579b35 100644 GIT binary patch literal 92997 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 <7lbu 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 literal 94666 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ɭ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

    ob+L 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

    P0w<|l>C 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 BY^DGJ literal 101681 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 diff --git a/wiki/images/rps-practical-linux.png b/wiki/images/rps-practical-linux.png index 3d24dd6897a169c501cf7de09e69a866c1c80182..dbafc8c9a4557bfa9d8fc7a137731592a5b3f506 100644 GIT binary patch literal 92261 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 {pBwj5MScezvSH5(sQm-JW316;M!Tg2_~pN*I% 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

    CMG~=3y({I6!bWfRLF*; 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 literal 93982 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 z

      +c8P6BvmW#|_&L-HRG>ndvX? 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 F{{mJFpGE)x diff --git a/wiki/images/rps-practical-macos.png b/wiki/images/rps-practical-macos.png index 433c3cb653d8a662187407a85bf0270af4579b35..3983b7819abbbdf34250a939db44c3d3bc8fe21a 100644 GIT binary patch literal 91681 zcmagGcT^Kw*e@Iq5fubfnpEMaNR{53QjUONC?Z`cQly986$?FbL;_L;LoZSUX#o`o z0@9IA6ok+NgwPYdJ)ZM^_xWw z%vha1nQAq%FHgB}GFOvN{R8ZdpvULT2Pe;HSxil%+s|Co-84GGU=gc#-Kgf%$pZB! z{O>-UqWoA8H?huPCTy0Ym#9$Wj$eaiN`GYSa&lu{!xYgfg+82p?E-w*xV zu%0l$E&qEAi-alvcO-p*W8=TWetMdp;IyEh91gnH6aOBnOEE>B`u8yM5g&~4-$U4U zbr{cohi{+!pHDkM75Lw)&a~A3*AK4oOicLm7U_*&xRx~UZyZn02RyzlS zr8@rkYMFR;34WD>#XQGd-IwRMjYi9@ja$OWgSl~HZzpP8>`)E~1>%@J{s`V4mE9>9@LoebkxI?ieftL^$NO8|;zNxDOuBZ$ zr8fuLORrPRAEil;S|MbD)jA}O$DOj#55K-ZSF}(Rze`}biac=`mv2{4Zo>+BCZ?vQ z!T8L8!E4!}|AZfHVnZ=|ONJ3|Cr2*MbtLF{Hk0lhESFUHH1g;0;IkSgNDJwn`P}|v zmvI=%!OBp1Nm zwmUuK8F4ttl|!}6rcvI(WyvfZJ0HH=h#N^~nHXEs+6X-+?;2uxLfkSxV~}bTdGasD zh`*2buxdVDA8P5E#6AuixvYI0HBegrWN#5cCUJ&ZTcGGZWryvI2i?`7k$4=(chna_ zA^LtfeeJy#tNDBQq}y$>kYu_2gWEJt*Ys0gwba?&)o7~VSi>Dt0uD$O5t&)R%SBv! zV!lg*SJs+{y-OL0-Xda%^waf-gQ0An+Q3p<54Db;sbdBiQsC+_v{A!O8Q$6rTV29K za=1{b5u$MEhntG)pXRpk1MJLgYV*m)gWyV09q}B-bM-dO!D#o|@vFOO?QFKn-{}mM zH#OI7`;>|L!E*_6TMv*Ec6Wy~PH`unQ(FBnjA_okNd-&YoG^JqnFn*ZXU8UZ2`%mQ zvsIh$@;R%8AOnZwUruc&NT)FTpJwh?uHIr)Nxo+rMtU?pQ`Ie&&J%I8$#qef!Y9 zlo~VGe^-s%vqY13CdEZtj<$;Gr+tU+1bwie8C*H<9u4y`X-&^GO!PPqC# z`ibRxc}ylmFn9>lu37nyJCg3HeA=6h8-nX_zqx9Vai37z<@ibGXJ{0IY$0*KV*=5q zGW2oOX0p(6&NKZKPavP!4h$B_@$G{lSlI^5^n&EeYSeT|T6@{YN7qmV=d!~OTqYh@ zH2XYYbj}dmRd(*rSw2kq$T5!r7d|5G^SkqCY;hnD!Rng)EF00QP~Z~6%yhVzhxGAZ z-rJlb+CyhYtPI|r4lomEd-7?mcCtJ;jfv_2jj~ZZMa*SLlCVk^aQcDR`gRR3LYg37 zr*+fJkyPCkWTQ+6;O6nU6`HaE4&Q9OKA&`~GhYg4d1IBUsOO+9mmF~Z%9y~bP_UYQ zs|T4-ISa-$Rn7(`+LzN|bQE?{3CcTFt zu$N#G*Tn>^j!7K5Gez-SI@2pxP)NhXqLzEpklrHt41HyGoNOBo-s|5R!Hmi=dx>44TzC1f^ z3N3(QP|b{+SJjU9`>uKts{2$+CcLrSkGV>qK`qI~f%{U-Yy05I$>Md);d=46*Vj=h%BwC;FU6&1MOo984-~#?`@YbfA!8=6R`BiC9Y|XDMgh>U^ZC# zH@;al3z!LVGOhENcCC>TQwiBAwLpBADXAT^i!071uR58YICZY{Z3Jb%z(VXt*y6jF zZ_%Prv<$`G@tED25SgqNFlkE^{gzFdd)}DYD2&K=bBqKzMQ=it^$KO(_dMnf<-Fo_3P~aYyl(bxBkxbp81t#F!uZY z$&m@GpAYokN?&(c(OR%~xT4K!>tO!l%_iIUlOzrHANTDOhU+|Wv}$D$5r4|If z*M<09&a<}mB6NDvZet&Yi;N4ltFy_a2b-Nd@ul6Jn(_3lWB1lZ<9fb!o{2B*@3e^* z>F#_KU)s^(?3&J*SH8=V{rM$tc&aD%(A9YzpTC~XM3ijVnRvXkQqj_T_?OTPP5(#M zS6->@{fye~60Z0?S;@O1)X2qeEZtTAvhym=r(2Y`rbK9xB8+yjPCMs;W@OIE!gtf* zWr{F|HEPgk5Wd{7I61!x3RS(YU-bTKPz8IgdWs+Dat*at9^loE6}Y|InD_ldvy#F% zZ32Hi&&X72j49@kXz`EU<(+T6m27~F|G8MbdB4ZhX8nF#{I5D(xDo-oxGP-I)PVH!8xpa50R~}q9LNCuAHtU@7 zMr&xu;aXkanz-Lr2D$gs{*z_B__Mf(<1i1W4BOc$PW=1?F&`UV4`wrQOpDNh)8S__$&+{sL6vfDy2y&177M z3yXe)%)c=!MkyU_eC2ctabRQZCRAd1zE7ll$xruqi&~qk^TZqjykS<>xZWUB3swcz zL>x42oEdl6_JG1+)y@h_Mg2;7DLbrKF<@PJWQDXeRItn#v3F}^tkS+9xNNKryerT~tV#kZ@rskCZ%?WQZv0%v zg5I8u$13`--Y1bpZRI{?*Ukj5EYG(9lv3<6kQz_=0-6SX*^yD<_p7BDo7Jy&<9UgS zVCmN{ye&~w3iLNsx*%7~bhIGXlC~Tex4LnPH}peCLsDhaVs6}z`(g*PG1s#0J9Px? z&G8=J|M=}{x(VTU0`=yeMbR=qJFX^&bAJ36RI1+S317R20);_*_ZE4hK9AFB4^Px{Sdhbdvt^r_{3s%;FyXulvVvVlK<6vT$AT7T(fqwo@P+`G8OqSi z$b?XIwxQmn22eq^O#1p(!&#zEH3SfBRDM3_e0BNG%nz`-O+SJTH1FQNYgk{k zkid+~ZdY|Jd`}KPTr+ESOYZlKrF+IUIR@|(=q|ljKZd8p?tm@yc7F#qltf!)|LPus zE5OV)%rAj*f4vG!8pEN;*a^E2`juti^4wnVpuT_PhQTZ?mP?kk=31HLr0wjL!*O9^r_j!MMPw- z#gKC2-Qko#(2YEIYLjEPhT)O{Q=hzD%Ig<&LBIAt00W(*$1PqrQiqWE(o7#<~`x3MiVvGwfH64+0=wS z|H^h&VassU#O^^=W-PI0%%vc+xZp)}5o0XE1br|z>QQeleuo8`uog7Cem69EfE<=X+F7D zM-U@gKGag!H5yRMt6;@f$@e8+FgCe3bn4=j6}|Rk>gVzWCPo zmG>H=Eul(XJ6P|!UoSX+q@KHsIW| z`A4l4AAeYw*3ASzCe4E@2oaNkFwb$|UeyKj?p$A2a*Rle0S0$59PFC2qH0hhj zIL8jglLReog59P83Q-W2%D*HiYH3xTyj}CC6{{+&Vk5B9vH>{6NTCr^UBpgx_IxZo zd_Ko2JAEYi(JZTZA0WpECguYWsZJnYL|1x(v%S=2t2tm~H^84CFaWp=DPc<=?RV8@4aQCo+=?zt^E*1RyLokJVCZo@9fM)7Ha_Mm? zyg3u#?&{Uyt1D%7HYCX;Q{HUHjEKjE5lr~)#n<*7@h-#OY(sp?K)jGiiRmk-8Pp8* zfH>AjO)N3kTX{qVt%Kl3eXoZ~k~k!oqOvx>}(Gif*XzgwQ@lt zk3W*>32p+y=*y9x0UopT=ahIExEajsl?Hde&TvESV(K`!>qH;8U6_T86M&lAVeU9B@MnyM%*SP)?3Y$hu04DX>P=YU;G@~(00_)E-TP)+zU9iu?o_shL9OB zQ#5nz_ube!TGf>1?23>m@0Is@r;MewTw0qXP>Z{j2FBC}a?`%X=L)r8Exzdz(K$ON z=Qd|@hkdQrqJ4(FLuLHR@hRofOzdF*!nBAqTJ?-uHQ4eyTNu#%73ab%JK>ynwQdCz zg3|TAdFmiIrO{cB242t(Fp}J~V;h)^)64F|=Q4VG!bx>4WKmCX+R0&6&vx~w)R&lY zS+@_LX-5!wqpCYV5}No;3=mw9^z1oc<`bK^h%akstGVjejN0Rx8}s~|{^~w}W9E2i z0cJX+!rsSqM#jUEVe4_ zc17qEA*DOF5j-fV5G5F_Mt@B>^9j%kY7F2VB!JX(TaM<%yH$D7&SxPV$&Uk<`z+Aq z`sOEY$GJTHO>ptbBel7I9Y8uow;Dv{vWt86fZ~$s(M;3DGJ65wt zZ6j0?xD+IDiCfc;ODnZAyD0#7-Db1$(h!s2c8r}P|M0L)-faOL5n-9jMWp3)dxZhY z!I4#RwHkmX%TwWfSt^Kq3TRrg)1ckf`vxlCTaFbj?;M5ODR+7HIYUy6;%3_g&gRhM zftiOdxtFc;Z@oNMuh!vLG^R#qISv=o<37BhIs}NRnHukWVV-Y@a}r% zBQ1DC2xfml_|OV|Per8u_dk9qmFocIS^yL@1Qv2;cb42=DM0`*11P>Zhc#2PNlrvk zj()x5U2tcey&nPa^43~vter)HW-1`Jq_qk1yUN_DkasoHQjNCl0k_7$%FI_3Uu`+2 zECH3Sgwh*pL?HI5Ma)DkyoI?3QPJq303m;&=liK2F?`ZN@`XP z;E@Ryb=R@;@l)quu(CKvz`I*;lFjNy8Blsgc0r9?QC4$5YUTO-obFyba(tc|jwX)r z0D6%y(=8z$=q_Ox*mH_U<24`v9>uUwnu0jq!#IUGClkvv%&F1)Rx20Q68V+^`g(Js z7y!aY=Tfwo1Q*^UDtOE_WN-{DbVRr6g?--OXX2pRW1_0{q1t<~V_0eyO}?9Lkg13U zcTJ`57bjIdU7=QMb8V^U^(rhH;HgYtgiU~S69z|bgzeamiJl#J)&U{#;py?&D@Tual>V7Igkv6*R z3iVBiR|2%Rj{qyZ4JeZ{DWe~-GS3Nz*LMaXMk6b4hD!BRTo}q4;NP3Rdt7GNb7+He zV%4ao^ZHR|HIPVmGZDxMtHjMcULas{`BK0_;&e01Kv9Jt6T*lOlLLa2_ zkU+nDas2nDeRvU_pymrN2RSTq4-gDJNCWlxfH6t(lP~LXG}2!9m8i6ydO}dVY2)TO zc}?|7rYA!;fRg>@d#7h_Z8GhLsSV{7kdc}1!{gzn>{xzLQ>8c{nsj16Dfc@9ZPlP9#R=Nd^w7P0qV zpjx7PtMevhkm$QzvKNkgqAwA7S?EIBuIbXDIKwJ7@Jb%5qmhKADl`)t5rWkci$agu7sIz>-mQQ)hg5*m#coxeT-|>Vpbl1l}o z^qs`#-7khfm-Gef^YhSMdpNT$HS-MNmOf8^KWeug=`)EVEIFgAEL80qYgVptMb#@=@E^N75SU00lZgzP;BDK`8Q zIUPz{ zx~l=Y?g9`%7sn`kOKs<|%LnBu^4ZN$`mQ3;6eQtY;Q{mb7TiX)SGXN-TvM^vo6uK* zd2&+1tDLTN6jiS(ic?}>2#oIh~Zrlu#}S= zw4;y&)2uC06eL$;c~g$J3)JS%R}BeNMaD(K9d;mprjrUqXU8`Gr29>FHnV#gPm(oe zP*-?f&p}=%=O@rfdkNR5TebXy&=Xu5aeMkJXYV%w%sW!I@>aa@GMb}0$z|dd-Ay)* z96!evo$=oV+2M+~M7NDjnuPe?)ChUWTby01NFf?#f~n`{i%zk<((p&{&39 z*Pq{g4p@KXZTFZ#lGe{%;QDlroVa9p0(+*L`nbCm9F9p^tVQJ$ z=f`KzrlM!OLsft@W_)tp-h)VI^b%sEGVPG_5;c4IX)EdEPd%v(`{w*;4O;jbKlR3D zCVN!FJ#)u5%lNqKe6w5@VtY2Oc?q&zRC|M@Gw3TzE5az-!+js(chsRlk?^f1dB)M* z%nK25ZTnI-!nEpb3N;c@x8AONaw`XG=*HPXY8Xs#6SM~Z@zn@H}nP zkB>*i#3!qr`iheTbbi#Y0v>pu91Q6@Gfb$Q9tQzQ; zV72o4d}OtKXl4_HcC}~*Jaq)CZ)KoH-qtSLEl?vD1!u~-PneK*TaL?$9a=0x);4bz{CH4LT*j61t1$Mi1yxRwc|&#MBI-Gq_tuqwcxPWSl$7` zTqxX@)tgJeJL64k)fga65hOCO@)gYH3rpUIZNGkPpm-e;tVfVqE?bT%=J~ng;?4yz zN#xnhFeYr+<*NR?FIpMGvoc_GmaTe~tERsK4v6ZjhTI%Kndd-f${R4H>T=v+8z1%V zjVC;vKzG<!Eg*lu)r22FNejm9X1PIfu_YB85Z58pz`u60`S}X6~Rh+ zY*HckCl$aTH+2J-*u@XG!&sdr$$M&<{&Ta^KtVt|zB9rwc|{8T>)l@b^1-?2{e?NH z1p9~2S?+bd(bFv{?J1qBQb2kFqFyJ<{Jg?f02rw$0^zOVPg5YD&*w(9s+qN)=>(u4 zfTWZ(N#}4~xhLRd9{nJ!hlBG;BwcdH(Izu{Z0qK$%eS@|kKs3KF+P*VkqdGsA@>{in)ulB z{cu)!Y7%;W#Ho!^q6f6YGG^)M2$sCR{Aiv4+cRr21mL~}vQ;!68Q_?K-(=zuu@C>x zxAu$F%wsVROlU&+|7NDDO!eT?{hQ5k9|sJ?sjQnd2w-ycRdD1cz;!W9pKAok%D}Q1 zE-=jIdLO@XaB+S`Ad<~JE+_=7>!IZ(s<%Sa>FuFI@Q(U-gNK`xxS&OWPL2~+x>1Os zhGrkTY-~>lHQ?Ob5|eD0Co_I_aI-qEazb{cVFGTL7F;J!rrt;Ola0M#A)xA8nG!M}<6 zTyhd>haVn(Ek?x=-Dz}`0@ket!cDoZZBphAg{eQF#TpiKx6^S)kBZMPZmJRhrwp}P z1Io(?66+lf1W0_2X9lW3XFI8RXQJeQ0yLo{ycUwo^n|oW5u$Z&ujC@WA64yZ`x(2p z${)#%e*zS~b!=n~n3l5H7v`+2wu_kD#Tjy6rb=FYI`!Q7))Z1X6;e<@qPcFtxw|Gg2bwLMWQ&4K z{|QKWOvY4PFpz)uc~oIBC+gCafj!7~C?o{i!i5e%sVxj3H}B3gu0Ea$C4L|2b_2Ja zAtew4iu2>99RUCCjc~m+k_-o;`^XBY{>Q27Ya^`LLp9qKpSb*n;ilF9q?tcewE`gx zhV?n1ao1_%%1bo;^i6MovL?5TD0$2Ygc0iza87b}!XAJ&TXAr(Qemmt5?gdR#nPjG znefzmuH()}{p34pKkgBaSMI>)Yxd zfva=fXx3TUhLSK1EjqL3@$o){%M(TxJ5BHOLbFE$l-nq7J^qloMgoO%BxEYnyMx0N z%(RLCC1Q`1;YbLfS#HGthsEPEm-WZJI)c;IWfR{~Z!&$61GrssmFK=an z8f6oy5K@ncWs<74Z4Xz*XCSuLI-3&X=O)lCb5rc|_`KE7rXRp?NUO%&a(JloF-hj-j#=YuXMZR0!ihN@^E>FOH!Z z+o_3^1xSm3$7!|OPA%nv`PP7%z%7jGCO3yUWmDnJ1>*~vDS`HwQ^H{Yj&Cx+)K}0n zATV(ER`P0Mj&tTU4+_tYNsJO?}Tjp6IXq0CCIDs=Vs7y__8C;3v zUp%i7Bgnx$zwP7zbXu!#tAa>g$E`d!51Q~(^z5&?C$UolelA^<(?CVO4Vg_8t2|%7 zWFfJIONp%^^$)aZKIXb>_)8ycdbr6Tnt`8`XmtburL6L`H!GGBwut06i9QPw;(p1siT1*}cd>Zx zCo_WC)5H58EUQxQy<=bWYGc;Cym6k)&y)8AHE=qw*9{n(Hxh1CnX9(le3V-0D8sPUCexn z<-++@hA?bLWZoDGE~MI)p;C4EXw}-11(~Oivh51ewKAeu>x?10pBDP=OynyV+-zzz;akIuC4ENp z*3M8aro|ni1?zL1u*e@;P}nij*3q<5X z)t(LkzuPOTPlc9g_zEpsduu-X7)w;7UF#i_Y2Xk!3;oGQ()`rZ)OLk;1dV-os9?$F zyssV4p5#9hgoiw`;Z#`xA#+XIh-5_qs3vc3JiK{HH8e07ls3dwABO@qfC1CDK?tw< zCINh8DvNZvEDJd3$<3uF0wk8*?XR;xC-~hexrR0LGw?Y@eOw|3Q z6SVzF+5r?eU6hs2H+>gjKzvsIp#ti5t6L^j#Lp+E3}g%gAPfnt**C1fu8#e9*0~|| zE2T%OPhV~(&_1ghBbIcT7ZIQB_2sk+II+5JV0kZHJpn~Rb&ug5I8`zLrOcr(@3}oW z$@+KHDMkZG%LoS0m^ifoCaEJ-q>0<-!w$A@3zvVg1I9pt&jOG`)e+2)n#EUE-K$sx zB1A>NxT>C>iQaz)32zxB9uC5vY$9j~!qXx-9GWiijnN1^x8XPsn1m z|2>91@W1wdjjd`NE{xIX$6Y~LNhW}>sVJ~m{JH-9KmD_z8=p@Vfe@YxaFd2=vS7+m z)-*UUCXf66%f*Ts8PBCrZ}j+TEgS;q>O}bSdVg*+;AH#3=r{L@eT`wMF;JN3YMIly ze`B$cilN&BI{VbHgvk}ln52jNz{h|E6{C+;=8`DVb1LbJ8S6`wjlka zD|a&T(I6-_!~YM(zZv3Ik;@CAj7j_DtIDwNXrR9DQ@55D+)0;( zZnz93JJm+F9~#jcdZ}O}Fo{(}SijXo9h)vy>Kni1;i8V?3qyMUbMk_m92_E5I4}o0 zgeWhgkFULr`Y)2K&JBofhB&OBeK{YxP#A3Z;o$q*`xD9=FzFZc|F5v}|4KnS;{7@6V3P)pBQ=4D zJ&A8^#q;M{h^;_w1tGF@SHGHbn_mMIubh?Hx@#~_ui``kp zQ~rx%s(wp~;Kk4M{|%U%@KeHx@H$V|(=!TdUAl5l%r$9nwu*Mm!{sIc_EY8c&$B^q)EfOT7ai?&BqZxAo&hYwy1W>aX$Rp@~Vx8Uv_9LB1Ao z&D6|V21IXa2k%hlocyzTVUhP1frj6W%7?sIi=g>8Llxnql5G&cc@K1UX>LG2Wm5J* z4SU^z*d0v+Wt2~BaozU zRXzrqQ~~gxRB<*S+%m+4=z$Y4^@S3(N+41oQ^t`Id&Bv5O5Rvoj*mVk<4UxjA-P&EB z9)dJc?YaV!40{l$%77MRFj!~N0qv`QVTNXvhwtl&el!7b@=1F43o?I{SeUx7FTm~j zLk3D^w^y|Le}QasQ9v4SdW4`X`V!EP4S@3RbiwlU&^pL~>0!AL`mP}79t@(AL*QR+ z2wNZn_P7C<89oo1I(5b3xs_xq)Bq(5JqDikokoJqaYiGER_G`KlK`jj2Y5U5i4 zU(F=DYpRRVzRCa@h9bjkRZ{KCuDBdmXXg#tvRk1APz=%qh{1Yw)Bcvt-5vFgkbhGL z#Jg^3Tqtp*@d$*scb5r0z~)f|K7d)?gfWUe+81!20^n$lwsKeDvqHq&fv=Y^!wFo? zKqxD|)|~eDzw^lA-T!!6#ws?Zrf+P3*B7evGzyq<$0prS!hSy(qS$qok6|A^)@5%c zf-I3Qpg!o!w_dyl>a~DV+bByb*cDLX6Dd-qRRO|f!$1$a)TiTBMu&L`MQRvmf9jQ0 zbqNLWsV6OQnXgqg2bMX{85^p+Ndb{=mx&I5QczG|6$3s9)Gnn|04lE^q$$&JXkx?T zW~-miav8rxbK!HKoFH83nvmN?j{Qw*9#apq)!rf?(v=krVeoQ24@N zHf6g2%H03vI{-E<3IZG85+Oesina_ZrDXwmPggFAbpa%- zzeoAR3Q2-iVaW5>@EGg}_`o+zwJA`0m--DY;sP)?72H80#|35WpLThzz^?&>H@6}+ zEm;3|Ay8od1auZOpkZ=q5F%a}Br-eGOYFL@sT*5g`79tM|07#D$j1Vtm5m59%`0JK zluhvUJ0NIFBH+}VC@cskoeo=i{%AgzuyOSK1g~9s<=O`@>qgU5tZ~Y_^AoZlS{oYk zz!l(pb#M299lGL<5L@SW&zHlFhs$hRfOk*qGd#uRrG7~{(CbgkD$4kI=ecR1zxZTx z-gux6^t|f)32mAQfuB53{!AH#NM1{b90R$|@%Pibh)w|WfL zW_gFV(xaZ#_T`>jskf@1#JqLOC#L{s61eoXUS zL%qB7dqAM`+k&OjwW{s^e!UOONmDVq^>yHgtMpyrC5zEsW1-sHD~}->W*E;lis@&_ zOE4P5Qn+xByEwin;yF9l7@hYP(StC4KMUM2`IUS7zt0m7^g(+4l0 zgW|FL_cD4%(8+*CaS8qNZc3gwUtmEu4F- ztrkuALT3kgqx+3=v=v&s3V^`5Zl|;NU)0!LBo5&0`wh3Tds)b31@vqa>ty1*U2(jR z-7AeIEU-MqQIm`kcmLQ9E3zi&1t8V;c4vleeH;21k?KESW{=bHd(OUx0MHiSQa{@$ zsY+zO%N#WmOQnGhKb*uZ_{|YZ`ar$NM8#3y>sG80jqM5&HgXh?_!bWP);W+p%z#qk zMJY&xi<@|{(#SR1(l#GX_Zm3QUq;ve-S4ITkxspRsv~KMlfR#9S5F+x|61;;X;Omu zQS_zHrRTU6O;EiF=VwVVk^0+{9R&t9CR$V&lK0Him+jcMoxIP#PEyj?2Joo55+-@3WhD zuU29gCgEo=RtpYCW481ZL23f?`&hS@&Z7{(Z}L|Jt{3w^oA^B5A@p6Wl)DY>&Ht$$ zj9>wdydJOwYC>n)GV@*fq<1_|G8$+<9|5Rh04079=x6Mm%u#N$?8wr7c9VmU^c#9(1Ov*W zDJ;fb&|aQ;WZTb*y>hWCT%I%q1O$gz%&d}5NowtQiCh@5;wQ>e|CCr1k<32p?RIeu zxl-t1EF?6ii8}{06a&AM&1`mloWb=?7N^YzZAIMSbRARZKf2{l-s2&8dLfY`9l zT`}5=7uSTTIg`@3Kfml0iI>$jKcZvR@qbKXH;Y{h%*v1HI-~VUg7#J$BcZZS;O<4L z?~wS_+gIj)LxlR)W>lz)f2gsRnxM2_@e}r8cyt$|eq-m22r$_Z==e@pVx&LK8G%4< zj*QLFdetpZJPL3ir9Lu3Z}&={rhSebNi;LL6TNmX*PS^!7GV=zbe^B?UNpkRqTjk?2oBjC9+vH(F+xJM8<9+fCw{uUmU|2=gKrMS$IqT7qj`U1Up}`O24o7dT|9K7U$>}L*aJB z3kYBql?KFf8*XMe*}aVd8SV$g%c27n_GfbJn6%t+;fL-#$>$*>vxu?~N3@HkN|X>3 zo4K|9>ysvJcybc*2`?J=akK8eiF-7{iFv9*v=;}jFRbCc7yB=r>UT(rX#&wB0~Wei zw*opIEg1hW$=)T&kyqo%V7;rrio(RLZjfP*tw*0>L7tWMi5!fsNsM1b!Kt*A&1E zb6(C#q@(EU_(q4rM~^y5F;6(OUdc?bjTcEn+bv(0IB5O|yxhg8llGfwJegTgghc}z zDAKFq9g6C`#>FB6x+>j2Y`NJZBcpE{-7oiYGyjhL>5^e9kjjE^XG1p#1fu)&TlQ>< zRN8gd^pc%C|E9SfSEL_Xy1Br$eZiF3&g<`J{av42LvA4c8xT z<`or+ZR2}77%M9AiqA%=x6XS;1-K(6C(@Z~66UThyhp;qiwd6^n{*eggs~xkuQzi? zv9>TR$;Os<20*!$X={m2(Wk%R(*;Z`nkVyoBED+2M6Z$#D7A-&xZ|v-#m%}04y~hN zS9tB1tZ5G7sIuQh98-c|)}?Gz6n0;e=p7c^FF#UAXE<_|T&R6QSGNrzL)jq4|Iwn=UzOg)7I2>qM=>pyl4~%RK( ~!-5kkfeYh_aTA$Y=JA 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 <7lbu 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 diff --git a/wiki/images/rps-practical-windows.png b/wiki/images/rps-practical-windows.png index c1196230127a4d683ea05ac820db58bf5a28e0fb..6273a4ffe1ca23476ed9ca63507e55a1f50aa5b1 100644 GIT binary patch literal 91082 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 literal 91081 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 oX&A+tTK_5J|8K~x-}ZIkTORN Date: Sun, 4 Oct 2026 14:04:34 +0530 Subject: [PATCH 03/24] Serve Plus cache hits on terminate-lite so a warmed GET skips the origin. BeforeResponse and AfterResponse subscriptions forced cache and CORS onto the session path, so a hit never avoided the origin. Store coalesced small 200s on the lite forward, write CORS headers on the way out, and shard each Plus edition row with its baseline. --- .github/workflows/rps-suite.yml | 24 +- src/Titanium.Cli/Config/RunCommand.cs | 39 +--- src/Titanium.Plus/Security/AccessSecurity.cs | 10 +- .../Middleware/IProxyMiddleware.cs | 6 + .../PublicAPI.Unshipped.txt | 2 + .../Caching/HttpResponseCacheMiddleware.cs | 216 ++++++++++++++---- .../Handlers/H1TerminateFastForward.cs | 78 ++++++- .../Handlers/ResponseHandler.cs | 46 ++++ src/Titanium.Web.Proxy/ProxyServer.cs | 13 ++ .../PublicAPI.Unshipped.txt | 4 + tests/Titanium.E2E.Tests/CliPlusE2ETests.cs | 3 +- .../PlusResilienceAndSecurityTests.cs | 16 ++ .../Caching/HttpResponseCacheTests.cs | 97 ++++++++ tools/RpsLoadProbe/Cli.cs | 9 + tools/RpsLoadProbe/ComparisonGroup.cs | 47 ++++ tools/RpsLoadProbe/README.md | 3 + tools/RpsLoadProbe/RampOrchestrator.cs | 36 ++- tools/RpsLoadProbe/ServeHosts.cs | 9 + tools/RpsLoadProbe/TitaniumCliHost.cs | 28 ++- tools/RpsLoadProbe/paste-editions-wiki.py | 78 ++++--- tools/RpsLoadProbe/validate-edition-gates.ps1 | 11 +- wiki/Performance.md | 2 +- 22 files changed, 644 insertions(+), 133 deletions(-) diff --git a/.github/workflows/rps-suite.yml b/.github/workflows/rps-suite.yml index 6ed53cd2e..ef5d8ba23 100644 --- a/.github/workflows/rps-suite.yml +++ b/.github/workflows/rps-suite.yml @@ -1,8 +1,9 @@ # One job per wiki row for a single ramp mode, on all three OS. # Dispatch one run per mode (compare-product, compare-bodies, ...) so each table has one # Source URL and the paste scripts, which look arms up by name, never mix modes. -# compare-saturation and compare-editions stay one job per OS (key "all"): saturation Block A -# compares proxy arms against origin-direct from the same job. +# compare-saturation stays one job per OS (key "all"): saturation Block A compares proxy +# arms against origin-direct from the same job. compare-editions is one group per wiki row; +# each group contains the feature arm and the baseline it is divided by. # # Free-plan account limits: 20 concurrent jobs, 5 of them macOS. This workflow caps each OS # matrix itself; runs of different modes still queue together against the account limit. @@ -41,6 +42,11 @@ on: description: 'Concurrent Windows or Linux legs' required: true default: '15' + only_keys: + description: 'Comma-separated group keys (empty = every group for the mode)' + required: false + default: '' + type: string permissions: contents: read @@ -66,10 +72,11 @@ jobs: shell: pwsh env: SUITE_MODE: ${{ inputs.mode }} + ONLY_KEYS: ${{ inputs.only_keys }} run: | $ErrorActionPreference = 'Stop' - # These modes compare arms that must share a job, so they stay unsharded. - $unsharded = @('compare-saturation', 'compare-editions') + # Saturation compares proxy arms against origin-direct from the same job. + $unsharded = @('compare-saturation') if ($unsharded -contains $env:SUITE_MODE) { $keys = @('all') } @@ -87,6 +94,15 @@ jobs: # Longest rows first so the slowest work starts in the first wave. $keys = @($groups | Sort-Object Arms -Descending | Select-Object -ExpandProperty Key) } + if (-not [string]::IsNullOrWhiteSpace($env:ONLY_KEYS)) { + $want = [System.Collections.Generic.HashSet[string]]::new([StringComparer]::OrdinalIgnoreCase) + foreach ($part in $env:ONLY_KEYS.Split(',')) { + $trimmed = $part.Trim() + if ($trimmed) { [void]$want.Add($trimmed) } + } + $keys = @($keys | Where-Object { $want.Contains($_) }) + if ($keys.Count -eq 0) { throw "only_keys matched no groups: $($env:ONLY_KEYS)" } + } Write-Host ("{0}: {1} group(s): {2}" -f $env:SUITE_MODE, $keys.Count, ($keys -join ', ')) # Piping a one-element array into ConvertTo-Json unwraps it to a JSON string. # fromJSON then is not an array, and the OS matrices are skipped (saturation, diff --git a/src/Titanium.Cli/Config/RunCommand.cs b/src/Titanium.Cli/Config/RunCommand.cs index 5563ea326..ad1ab5e20 100644 --- a/src/Titanium.Cli/Config/RunCommand.cs +++ b/src/Titanium.Cli/Config/RunCommand.cs @@ -691,41 +691,10 @@ private static void ConfigureResponseCache( var cacheMiddleware = new HttpResponseCacheMiddleware(responseCache); middleware.Add(cacheMiddleware); - // Buffer in BeforeResponse so fill does not depend on MITM session-lite coalescing. - // After the body is streamed, IsBodyReceived is set without IsBodyRead and - // AfterResponse GetResponseBody throws โ€” perpetual misses (~0.64ร— CLI vs ~0.99ร— hits). - proxy.BeforeResponse += async (_, e) => - { - try - { - var response = e.HttpClient.Response; - if (response.StatusCode == 200 && - response.HasBody && - !response.IsBodyRead) - { - response.KeepBody = true; - await e.GetResponseBody().ConfigureAwait(false); - } - } - catch - { - // Cache best-effort only. - } - }; - - proxy.AfterResponse += (_, e) => - { - try - { - cacheMiddleware.TryCacheCurrentResponse(e); - } - catch - { - // Cache best-effort only. - } - - return Task.CompletedTask; - }; + // Session-path fill (a transform plus cache) buffers a small 200 inside the response + // handler. Do not subscribe BeforeResponse/AfterResponse: those force every request + // off H1 terminate-lite, so a hit never skips the origin. + proxy.HttpResponseCacheFiller = cacheMiddleware.TryCacheCurrentResponse; } private static async Task TryActivatePlusAsync(TwpConfig config, PlusActivationContext context) diff --git a/src/Titanium.Plus/Security/AccessSecurity.cs b/src/Titanium.Plus/Security/AccessSecurity.cs index 09bfbf587..835852203 100644 --- a/src/Titanium.Plus/Security/AccessSecurity.cs +++ b/src/Titanium.Plus/Security/AccessSecurity.cs @@ -95,18 +95,16 @@ private static void RegisterCors(PlusActivationContext context, IReadOnlyDiction var cors = new CorsMiddleware(origin, methods, headers, creds, maxAge); context.Middleware!.Add(cors); - // Inject ACAO on successful proxied responses when session path is used. + // Inject ACAO on the way out. A BeforeResponse subscription would disable terminate-lite. if (context.ProxyServer is Titanium.Web.Proxy.ProxyServer proxy) { - proxy.BeforeResponse += (_, e) => + proxy.ResponseHeaderContributor = response => { foreach (var h in cors.BuildResponseHeaders()) { - e.HttpClient.Response.Headers.RemoveHeader(h.Name); - e.HttpClient.Response.Headers.AddHeader(h); + response.Headers.RemoveHeader(h.Name); + response.Headers.AddHeader(h); } - - return Task.CompletedTask; }; } diff --git a/src/Titanium.Web.Proxy.Abstractions/Middleware/IProxyMiddleware.cs b/src/Titanium.Web.Proxy.Abstractions/Middleware/IProxyMiddleware.cs index c5b99bc92..66f7341eb 100644 --- a/src/Titanium.Web.Proxy.Abstractions/Middleware/IProxyMiddleware.cs +++ b/src/Titanium.Web.Proxy.Abstractions/Middleware/IProxyMiddleware.cs @@ -48,6 +48,12 @@ public sealed class ProxyMiddlewareContext public string? HandledBody { get; set; } + ///

      + /// Raw response body for a handled terminate-lite reply. When set, the lite writer uses these + /// bytes instead of encoding . + /// + public byte[]? HandledBodyBytes { get; set; } + public List>? HandledHeaders { get; set; } } diff --git a/src/Titanium.Web.Proxy.Abstractions/PublicAPI.Unshipped.txt b/src/Titanium.Web.Proxy.Abstractions/PublicAPI.Unshipped.txt index f5b378ec0..91d8e0cd5 100644 --- a/src/Titanium.Web.Proxy.Abstractions/PublicAPI.Unshipped.txt +++ b/src/Titanium.Web.Proxy.Abstractions/PublicAPI.Unshipped.txt @@ -74,6 +74,8 @@ Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.ClientRemoteEn Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.ClientRemoteEndPoint.set -> void Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledBody.get -> string? Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledBody.set -> void +Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledBodyBytes.get -> byte[]? +Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledBodyBytes.set -> void Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledHeaders.get -> System.Collections.Generic.List>? Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledHeaders.set -> void Titanium.Web.Proxy.Abstractions.Middleware.ProxyMiddlewareContext.HandledStatusCode.get -> int? diff --git a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs index 84f9692fe..f1e59324f 100644 --- a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs +++ b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs @@ -1,11 +1,13 @@ using System; using System.Collections.Generic; +using System.Net; using System.Threading; using System.Threading.Tasks; using Titanium.Web.Proxy.Abstractions.Middleware; using Titanium.Web.Proxy.Abstractions.Plugins; using Titanium.Web.Proxy.EventArguments; using Titanium.Web.Proxy.Extensions; +using Titanium.Web.Proxy.Http; using Titanium.Web.Proxy.Models; namespace Titanium.Web.Proxy.Caching; @@ -16,6 +18,9 @@ namespace Titanium.Web.Proxy.Caching; /// public sealed class HttpResponseCacheMiddleware : IProxyMiddleware { + /// Largest body stored from the H1 terminate-lite coalesce buffer. + internal const int MaxCachedBodyBytes = 64 * 1024; + private readonly IHttpResponseCache _cache; private readonly TimeSpan _defaultTtl; @@ -30,58 +35,72 @@ public async ValueTask InvokeAsync( ProxyMiddlewareDelegate next, CancellationToken cancellationToken) { - if (context.Session is not SessionEventArgs session) + if (!TryResolveCacheable(context, out var method, out var host, out var path)) { await next(context, cancellationToken).ConfigureAwait(false); return; } - var request = session.HttpClient.Request; - var method = request.Method ?? "GET"; - var isCacheableMethod = - method.Equals("GET", StringComparison.OrdinalIgnoreCase) || - method.Equals("HEAD", StringComparison.OrdinalIgnoreCase); - - if (isCacheableMethod) + var key = BuildCacheKey(method, host, path); + if (_cache.TryGet(key, out var cached) && cached is not null) { - var key = BuildCacheKey(session); - if (_cache.TryGet(key, out var cached) && cached is not null) - { - var headers = new List(cached.Headers.Count + 1); - foreach (var h in cached.Headers) - { - headers.Add(new HttpHeader(h.Key, h.Value)); - } - - headers.Add(new HttpHeader("X-Cache", "HIT")); - session.GenericResponse(cached.Body, (System.Net.HttpStatusCode)cached.StatusCode, headers); - context.IsHandled = true; - return; - } + ServeHit(context, cached); + return; } await next(context, cancellationToken).ConfigureAwait(false); - if (!isCacheableMethod || context.IsHandled) + if (context.Session is SessionEventArgs session && !context.IsHandled) + { + TryCacheCurrentResponse(session); + } + } + + /// + /// Store a 200 whose body is already in memory (lite coalesce or a buffered session response). + /// Hop-by-hop headers and bodies larger than are skipped. + /// + internal void TryStore( + string method, + string host, + string path, + int statusCode, + IEnumerable headers, + ReadOnlySpan body) + { + if (statusCode != 200 || body.Length > MaxCachedBodyBytes) + { + return; + } + + if (!method.Equals("GET", StringComparison.OrdinalIgnoreCase) && + !method.Equals("HEAD", StringComparison.OrdinalIgnoreCase)) { return; } - // Cache synthetic / already-buffered 200 responses produced during BeforeRequest. - // Upstream responses are cached when body is available (e.g. after GetResponseBody). - TryCacheCurrentResponse(session); + var copy = new byte[body.Length]; + body.CopyTo(copy); + _cache.Set( + BuildCacheKey(method, host, path), + new CachedHttpResponse + { + StatusCode = 200, + Body = copy, + Headers = CopyCacheableHeaders(headers), + ExpiresUtc = DateTimeOffset.UtcNow + _defaultTtl, + }, + _defaultTtl); } /// - /// Call from when caching upstream 200 bodies. + /// Call from the session response path when a small 200 body is already buffered. /// public void TryCacheCurrentResponse(SessionEventArgs session) { ArgumentNullException.ThrowIfNull(session); - var method = session.HttpClient.Request.Method ?? ""; - if (!method.Equals("GET", StringComparison.OrdinalIgnoreCase) && - !method.Equals("HEAD", StringComparison.OrdinalIgnoreCase)) + if (!TryRequestParts(session, out var method, out var host, out var path)) { return; } @@ -102,29 +121,83 @@ public void TryCacheCurrentResponse(SessionEventArgs session) return; } - var headers = new List>(); - foreach (var header in response.Headers) + TryStore(method, host, path, 200, response.Headers, body); + } + + internal static string BuildCacheKey(string method, string host, string path) + { + if (string.IsNullOrEmpty(path)) { - headers.Add(new KeyValuePair(header.Name, header.Value)); + path = "/"; } - _cache.Set( - BuildCacheKey(session), - new CachedHttpResponse - { - StatusCode = 200, - Body = body, - Headers = headers, - ExpiresUtc = DateTimeOffset.UtcNow + _defaultTtl, - }, - _defaultTtl); + return $"{method}:{host}{path}"; + } + + private void ServeHit(ProxyMiddlewareContext context, CachedHttpResponse cached) + { + var headers = new List(cached.Headers.Count + 1); + foreach (var h in cached.Headers) + { + headers.Add(new HttpHeader(h.Key, h.Value)); + } + + headers.Add(new HttpHeader("X-Cache", "HIT")); + + if (context.Session is SessionEventArgs session) + { + session.GenericResponse(cached.Body, (HttpStatusCode)cached.StatusCode, headers); + } + + context.HandledStatusCode = cached.StatusCode; + context.HandledBodyBytes = cached.Body; + context.HandledHeaders = new List>(headers.Count); + foreach (var h in headers) + { + context.HandledHeaders.Add(new KeyValuePair(h.Name, h.Value)); + } + + context.IsHandled = true; } - private static string BuildCacheKey(SessionEventArgs session) + private static bool TryResolveCacheable( + ProxyMiddlewareContext context, + out string method, + out string host, + out string path) + { + if (context.Session is SessionEventArgs session) + { + return TryRequestParts(session, out method, out host, out path); + } + + if (context.Request is { } view) + { + method = view.Method ?? "GET"; + host = view.Host ?? ""; + path = string.IsNullOrEmpty(view.Path) ? "/" : view.Path; + return IsCacheableMethod(method); + } + + method = ""; + host = ""; + path = ""; + return false; + } + + private static bool TryRequestParts(SessionEventArgs session, out string method, out string host, out string path) { var request = session.HttpClient.Request; - var host = request.Host ?? request.RequestUri?.Host ?? ""; - var path = request.RequestUri?.PathAndQuery; + method = request.Method ?? ""; + if (!IsCacheableMethod(method)) + { + host = ""; + path = ""; + return false; + } + + host = request.Host ?? request.RequestUri?.Host ?? ""; + path = request.RequestUri?.PathAndQuery ?? ""; if (string.IsNullOrEmpty(path)) { path = request.RequestUriString8.GetString(); @@ -134,6 +207,55 @@ private static string BuildCacheKey(SessionEventArgs session) } } - return $"{request.Method}:{host}{path}"; + return true; + } + + private static bool IsCacheableMethod(string method) => + method.Equals("GET", StringComparison.OrdinalIgnoreCase) || + method.Equals("HEAD", StringComparison.OrdinalIgnoreCase); + + private static List> CopyCacheableHeaders(IEnumerable headers) + { + var hopByHop = new HashSet(StringComparer.OrdinalIgnoreCase) + { + "Connection", + "Keep-Alive", + "Proxy-Connection", + "Transfer-Encoding", + "TE", + "Trailer", + "Upgrade", + }; + + var staged = new List>(); + foreach (var header in headers) + { + if (header.Name.Equals("Connection", StringComparison.OrdinalIgnoreCase)) + { + foreach (var part in header.Value.Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)) + { + if (!part.Equals("close", StringComparison.OrdinalIgnoreCase) && + !part.Equals("keep-alive", StringComparison.OrdinalIgnoreCase)) + { + hopByHop.Add(part); + } + } + + continue; + } + + staged.Add(new KeyValuePair(header.Name, header.Value)); + } + + var kept = new List>(staged.Count); + foreach (var header in staged) + { + if (!hopByHop.Contains(header.Key)) + { + kept.Add(header); + } + } + + return kept; } } diff --git a/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs b/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs index 1e76408fb..d2de15548 100644 --- a/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs +++ b/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs @@ -83,9 +83,10 @@ internal static void ReleaseH1TerminateLiteClient(HttpWebClient client) /// GC under c=32 (cool: c=1 already leads YARP, c=32 was ~0.88โ€“0.90ร—). /// Callers must also refuse / /// at the connection level โ€” this path only speaks HTTP/1.1 TCP to the origin. - /// Pre-origin middleware (CIDR/WAF/JWT/rate-limit) runs on this path via - /// without a session bag; AfterResponse subscribers - /// still force the full session path via . + /// Pre-origin middleware (CIDR/WAF/JWT/rate-limit/cache/CORS) runs on this path via + /// without a session bag. A + /// or subscriber still forces the full session path via + /// . /// internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, bool enable100Continue, bool enableWinAuth, bool hasCustomUpstreamProxyFunc, UpstreamHttpProtocol? upstreamProtocol = null) @@ -139,6 +140,7 @@ internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, boo request.Locked = true; request.IsBodyReceived = true; + CaptureTerminateLiteCacheIdentity(endPoint, request, out var cacheMethod, out var cacheHost, out var cachePath); // Remember before stripping hop-by-hop Connection for the origin write โ€” NC clients send // Connection: close; forwarding it forces the origin to close and defeats pooling (Bare still @@ -229,6 +231,7 @@ internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, boo HttpVersion = request.HttpVersion }; badGateway.Headers.AddHeader(KnownHeaders.Connection, KnownHeaders.ConnectionClose); + ApplyResponseHeaderContributor(badGateway); await clientStream.WriteResponseAsync(badGateway, cancellationToken); return false; } @@ -237,7 +240,7 @@ internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, boo // Known-CL โ‰ค64 KiB: one coalesced client write without assigning Response.Body. // Larger / chunked bodies: still stream via CopyBody with a throwaway session (hooks unused). - const int coalesceBodyLimit = 64 * 1024; + const int coalesceBodyLimit = Caching.HttpResponseCacheMiddleware.MaxCachedBodyBytes; if (response.HasBody && !response.IsChunked && !response.HasTrailingHeaders @@ -263,7 +266,13 @@ internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, boo if (response.ContentLength != read) response.ContentLength = read; } + else + { + TryStoreH1TerminateLiteCache(cacheMethod, cacheHost, cachePath, response, + body.AsSpan(0, read)); + } + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseWithWireBodyAsync(response, body.AsMemory(0, read), cancellationToken); } @@ -274,6 +283,7 @@ await clientStream.WriteResponseWithWireBodyAsync(response, body.AsMemory(0, rea } else if (response.HasBody) { + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseAsync(response, cancellationToken); var copySession = openSession ?? CreateH1TerminateLiteColdSession(endPoint, clientStream); try @@ -295,6 +305,9 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat } else { + if (response.StatusCode == 200) + TryStoreH1TerminateLiteCache(cacheMethod, cacheHost, cachePath, response, ReadOnlySpan.Empty); + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseAsync(response, cancellationToken); } @@ -347,6 +360,7 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat var request = args.HttpClient.Request; request.Locked = true; request.IsBodyReceived = true; + CaptureTerminateLiteCacheIdentity(endPoint, request, out var cacheMethod, out var cacheHost, out var cachePath); var clientRequestedClose = H1TerminateClientRequestedClose(request); request.StripHopByHopConnectionForTransparentOrigin(); @@ -451,6 +465,8 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat var mayNeedBodyAfterWrite = AfterResponse != null || HasOnResponseBodyWriteSubscribers; if (response.HasBody && response.IsBodyRead) { + await TryFillHttpResponseCacheAsync(args, cancellationToken); + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseAsync(response, cancellationToken); } else if (knownClCoalesce && !response.IsBodyRead) @@ -475,7 +491,13 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat if (response.ContentLength != read) response.ContentLength = read; } + else + { + TryStoreH1TerminateLiteCache(cacheMethod, cacheHost, cachePath, response, + body.AsSpan(0, read)); + } + ApplyResponseHeaderContributor(response); if (mayNeedBodyAfterWrite) { byte[] exact; @@ -509,6 +531,7 @@ await clientStream.WriteResponseWithWireBodyAsync(response, body.AsMemory(0, rea } else if (response.HasBody) { + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseAsync(response, cancellationToken); await connection.Stream.CopyBodyAsync(response, false, clientStream, TransformationMode.None, false, args, cancellationToken); @@ -516,6 +539,9 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat } else { + if (response.StatusCode == 200) + TryStoreH1TerminateLiteCache(cacheMethod, cacheHost, cachePath, response, ReadOnlySpan.Empty); + ApplyResponseHeaderContributor(response); await clientStream.WriteResponseAsync(response, cancellationToken); } @@ -619,7 +645,7 @@ private SessionEventArgs CreateH1TerminateLiteColdSession(TransparentBaseProxyEn /// . Returns keep-alive when middleware handled the request; /// null when the origin forward should continue. /// - private static async Task TryRunTerminateLiteMiddlewareAsync( + private async Task TryRunTerminateLiteMiddlewareAsync( TransparentBaseProxyEndPoint endPoint, HttpClientStream clientStream, Request request, @@ -680,7 +706,7 @@ private static MiddlewareRequestView CreateTerminateLiteMiddlewareRequest( }; } - private static async Task WriteTerminateLiteMiddlewareResponseAsync( + private async Task WriteTerminateLiteMiddlewareResponseAsync( HttpClientStream clientStream, Request request, ProxyMiddlewareContext ctx, @@ -697,11 +723,49 @@ private static async Task WriteTerminateLiteMiddlewareResponseAsync( response.Headers.AddHeader(h.Key, h.Value); } - response.Body = response.Encoding.GetBytes(ctx.HandledBody ?? string.Empty); + response.Body = ctx.HandledBodyBytes ?? response.Encoding.GetBytes(ctx.HandledBody ?? string.Empty); + ApplyResponseHeaderContributor(response); response.Headers.AddHeader(KnownHeaders.Connection, H1TerminateClientRequestedClose(request) ? KnownHeaders.ConnectionClose : KnownHeaders.ConnectionKeepAlive); await clientStream.WriteResponseAsync(response, cancellationToken).ConfigureAwait(false); } + + private static void CaptureTerminateLiteCacheIdentity( + TransparentBaseProxyEndPoint endPoint, + Request request, + out string method, + out string host, + out string path) + { + var view = CreateTerminateLiteMiddlewareRequest(endPoint, request); + method = view.Method; + host = view.Host; + path = view.Path; + } + + private void ApplyResponseHeaderContributor(Response response) => + ResponseHeaderContributor?.Invoke(response); + + private void TryStoreH1TerminateLiteCache( + string method, + string host, + string path, + Response response, + ReadOnlySpan body) + { + var middleware = ReverseProxy?.Middleware; + if (middleware == null) + return; + + for (var i = 0; i < middleware.Count; i++) + { + if (middleware[i] is Caching.HttpResponseCacheMiddleware cache) + { + cache.TryStore(method, host, path, response.StatusCode, response.Headers, body); + return; + } + } + } } diff --git a/src/Titanium.Web.Proxy/Handlers/ResponseHandler.cs b/src/Titanium.Web.Proxy/Handlers/ResponseHandler.cs index a347b1731..b59eaaab1 100644 --- a/src/Titanium.Web.Proxy/Handlers/ResponseHandler.cs +++ b/src/Titanium.Web.Proxy/Handlers/ResponseHandler.cs @@ -123,6 +123,8 @@ and not (int)HttpStatusCode.SwitchingProtocols) // it may changed in the user event response = args.HttpClient.Response; + await TryFillHttpResponseCacheAsync(args, cancellationToken); + ApplyResponseHeaderContributor(response); var clientStream = args.ClientStream; @@ -335,6 +337,50 @@ private async Task OnBeforeResponse(SessionEventArgs args) await BeforeResponse.InvokeAsync(this, args, logger).ConfigureAwait(false); } + /// + /// Buffer a small known-length 200 and store it when a cache filler is set. + /// No-op when cache is off, so the hot path does not read the body. + /// + private async Task TryFillHttpResponseCacheAsync(SessionEventArgs args, CancellationToken cancellationToken) + { + var fill = HttpResponseCacheFiller; + if (fill == null) + return; + + var response = args.HttpClient.Response; + if (response.StatusCode != 200) + return; + + if (!response.IsBodyRead + && response.HasBody + && !response.IsChunked + && !response.HasTrailingHeaders + && response.ContentLength is > 0 and <= Caching.HttpResponseCacheMiddleware.MaxCachedBodyBytes) + { + try + { + response.KeepBody = true; + await args.GetResponseBody(cancellationToken).ConfigureAwait(false); + } + catch + { + return; + } + } + + if (!response.IsBodyRead) + return; + + try + { + fill(args); + } + catch + { + // Cache best-effort only. + } + } + /// /// Records learnable MITM HTTP blocks. For document navigations, activates bypass immediately and /// replaces the response with a meta-refresh so the browser opens a new CONNECT (opaque tunnel). diff --git a/src/Titanium.Web.Proxy/ProxyServer.cs b/src/Titanium.Web.Proxy/ProxyServer.cs index e2be1bb7b..0afeb2355 100644 --- a/src/Titanium.Web.Proxy/ProxyServer.cs +++ b/src/Titanium.Web.Proxy/ProxyServer.cs @@ -1499,6 +1499,19 @@ internal Task InvokeOnResponseBodyWriteAsync(object sender, BeforeBodyWriteEvent /// public Func? ShouldInterceptHttp { get; set; } + /// + /// Fills the GET/HEAD response cache from a session that is already on the interception path. + /// Does not subscribe or , so it does + /// not turn on. + /// + public Action? HttpResponseCacheFiller { get; set; } + + /// + /// Adds response headers on the way to the client without subscribing . + /// Plus CORS uses this so a listener can stay on H1 terminate-lite. + /// + public Action? ResponseHeaderContributor { get; set; } + /// /// Returns when the global interception gate is active for the given /// endpoint: any session event handler is subscribed, is diff --git a/src/Titanium.Web.Proxy/PublicAPI.Unshipped.txt b/src/Titanium.Web.Proxy/PublicAPI.Unshipped.txt index 2512676d4..9fd2277e6 100644 --- a/src/Titanium.Web.Proxy/PublicAPI.Unshipped.txt +++ b/src/Titanium.Web.Proxy/PublicAPI.Unshipped.txt @@ -265,6 +265,10 @@ Titanium.Web.Proxy.ProxyServer.EnableDecryptFailureBypass.get -> bool Titanium.Web.Proxy.ProxyServer.EnableDecryptFailureBypass.set -> void Titanium.Web.Proxy.ProxyServer.ForceDecryptFailureBypass(string! host) -> bool Titanium.Web.Proxy.ProxyServer.GetDecryptFailureBypassEntries() -> System.Collections.Generic.IReadOnlyList! +Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller.get -> System.Action? +Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller.set -> void Titanium.Web.Proxy.ProxyServer.RemoveDecryptFailureBypass(string! host) -> bool +Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor.get -> System.Action? +Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor.set -> void Titanium.Web.Proxy.ProxyServer.ShouldBypassDecryptForLearnedHost(string? host) -> bool static Titanium.Web.Proxy.Network.FirefoxCertificateTrust.LastEnterpriseRootsStep.get -> string? diff --git a/tests/Titanium.E2E.Tests/CliPlusE2ETests.cs b/tests/Titanium.E2E.Tests/CliPlusE2ETests.cs index 946dfb6ca..a6dd2dc41 100644 --- a/tests/Titanium.E2E.Tests/CliPlusE2ETests.cs +++ b/tests/Titanium.E2E.Tests/CliPlusE2ETests.cs @@ -421,7 +421,8 @@ public async Task Plus_ApiKeyAuth_AndCors() }); try { - using var http = new HttpClient { Timeout = TimeSpan.FromSeconds(20) }; + using var handler = new HttpClientHandler { UseProxy = false }; + using var http = new HttpClient(handler) { Timeout = TimeSpan.FromSeconds(20) }; await WaitControlPlaneAsync(http, control); using (var denied = new HttpRequestMessage(HttpMethod.Get, $"http://127.0.0.1:{listen}/secure")) diff --git a/tests/Titanium.Plus.Tests/PlusResilienceAndSecurityTests.cs b/tests/Titanium.Plus.Tests/PlusResilienceAndSecurityTests.cs index fb3df8e2b..987be2c1a 100644 --- a/tests/Titanium.Plus.Tests/PlusResilienceAndSecurityTests.cs +++ b/tests/Titanium.Plus.Tests/PlusResilienceAndSecurityTests.cs @@ -1,3 +1,4 @@ +using System.Net; using Microsoft.VisualStudio.TestTools.UnitTesting; using Titanium.Plus.Resilience; using Titanium.Plus.Security; @@ -113,6 +114,21 @@ public void AccessSecurity_RegistersApiKeyAndCors() Assert.AreEqual(2, middleware.Count); Assert.IsInstanceOfType(middleware[0]); Assert.IsInstanceOfType(middleware[1]); + Assert.IsFalse(proxy.NeedsHttpInterception()); + Assert.IsNotNull(proxy.ResponseHeaderContributor); + var response = new Titanium.Web.Proxy.Http.Responses.GenericResponse(HttpStatusCode.OK); + proxy.ResponseHeaderContributor!(response); + var allowOrigin = false; + foreach (var header in response.Headers) + { + if (header.Name.Equals("Access-Control-Allow-Origin", StringComparison.OrdinalIgnoreCase) && + header.Value == "https://app.example") + { + allowOrigin = true; + } + } + + Assert.IsTrue(allowOrigin); } [TestMethod] diff --git a/tests/Titanium.Web.Proxy.UnitTests/Caching/HttpResponseCacheTests.cs b/tests/Titanium.Web.Proxy.UnitTests/Caching/HttpResponseCacheTests.cs index 3628753f1..bdc608399 100644 --- a/tests/Titanium.Web.Proxy.UnitTests/Caching/HttpResponseCacheTests.cs +++ b/tests/Titanium.Web.Proxy.UnitTests/Caching/HttpResponseCacheTests.cs @@ -155,6 +155,103 @@ await mw.InvokeAsync(ctx, (_, _) => Assert.IsFalse(ctx.IsHandled); } + [TestMethod] + public async Task InvokeAsync_LiteHit_ShortCircuitsWithBodyBytes() + { + var cache = new MemoryHttpResponseCache(); + var body = Encoding.UTF8.GetBytes("cached"); + cache.Set("GET:example.com/hit", new CachedHttpResponse + { + StatusCode = 200, + Body = body, + Headers = [new KeyValuePair("Content-Type", "text/plain")], + ExpiresUtc = DateTimeOffset.UtcNow.AddMinutes(5), + }, TimeSpan.FromMinutes(5)); + + var mw = new HttpResponseCacheMiddleware(cache); + var nextCalled = false; + var ctx = new ProxyMiddlewareContext + { + Session = new object(), + Request = new MiddlewareRequestView { Method = "GET", Path = "/hit", Host = "example.com" }, + }; + await mw.InvokeAsync(ctx, (_, _) => + { + nextCalled = true; + return ValueTask.CompletedTask; + }, CancellationToken.None); + + Assert.IsFalse(nextCalled); + Assert.IsTrue(ctx.IsHandled); + Assert.AreEqual(200, ctx.HandledStatusCode); + CollectionAssert.AreEqual(body, ctx.HandledBodyBytes); + Assert.IsTrue(ctx.HandledHeaders!.Exists(h => + h.Key.Equals("X-Cache", StringComparison.OrdinalIgnoreCase) && h.Value == "HIT")); + } + + [TestMethod] + public async Task InvokeAsync_LiteMiss_CallsNext() + { + var mw = new HttpResponseCacheMiddleware(new MemoryHttpResponseCache()); + var nextCalled = false; + var ctx = new ProxyMiddlewareContext + { + Session = new object(), + Request = new MiddlewareRequestView { Method = "GET", Path = "/miss", Host = "example.com" }, + }; + await mw.InvokeAsync(ctx, (_, _) => + { + nextCalled = true; + return ValueTask.CompletedTask; + }, CancellationToken.None); + + Assert.IsTrue(nextCalled); + Assert.IsFalse(ctx.IsHandled); + Assert.IsNull(ctx.HandledBodyBytes); + } + + [TestMethod] + public async Task TryStore_ThenLiteHit_ReturnsBody() + { + var cache = new MemoryHttpResponseCache(); + var mw = new HttpResponseCacheMiddleware(cache, TimeSpan.FromMinutes(3)); + var body = Encoding.UTF8.GetBytes("from-coalesce"); + mw.TryStore("GET", "example.com", "/a", 200, + [new HttpHeader("Content-Type", "text/plain"), new HttpHeader("Connection", "keep-alive")], + body); + + Assert.IsTrue(cache.TryGet("GET:example.com/a", out var stored)); + CollectionAssert.AreEqual(body, stored!.Body); + foreach (var header in stored.Headers) + Assert.IsFalse(header.Key.Equals("Connection", StringComparison.OrdinalIgnoreCase)); + + var nextCalled = false; + var ctx = new ProxyMiddlewareContext + { + Session = new object(), + Request = new MiddlewareRequestView { Method = "GET", Path = "/a", Host = "example.com" }, + }; + await mw.InvokeAsync(ctx, (_, _) => + { + nextCalled = true; + return ValueTask.CompletedTask; + }, CancellationToken.None); + + Assert.IsFalse(nextCalled); + CollectionAssert.AreEqual(body, ctx.HandledBodyBytes); + } + + [TestMethod] + public void TryStore_SkipsNon200AndOversized() + { + var cache = new MemoryHttpResponseCache(); + var mw = new HttpResponseCacheMiddleware(cache); + mw.TryStore("GET", "example.com", "/no", 404, [], [1]); + mw.TryStore("POST", "example.com", "/no", 200, [], [1]); + mw.TryStore("GET", "example.com", "/big", 200, [], new byte[HttpResponseCacheMiddleware.MaxCachedBodyBytes + 1]); + Assert.AreEqual(0, cache.Count); + } + [TestMethod] public async Task InvokeAsync_GetHit_ShortCircuits() { diff --git a/tools/RpsLoadProbe/Cli.cs b/tools/RpsLoadProbe/Cli.cs index 4ea8b2557..c40f1eb0d 100644 --- a/tools/RpsLoadProbe/Cli.cs +++ b/tools/RpsLoadProbe/Cli.cs @@ -747,6 +747,15 @@ private static bool TryParseMode(string text, out ProbeMode mode) case "twp-cli-plus-cache-hit-http1": mode = ProbeMode.TwpCliPlusCacheHitHttp1; return true; + case "twp-cli-plus-cors-http1": + mode = ProbeMode.TwpCliPlusCorsHttp1; + return true; + case "twp-cli-plus-circuit-http1": + mode = ProbeMode.TwpCliPlusCircuitHttp1; + return true; + case "twp-cli-plus-retry-http1": + mode = ProbeMode.TwpCliPlusRetryHttp1; + return true; case "twp-cli-static-http1": mode = ProbeMode.TwpCliStaticHttp1; return true; diff --git a/tools/RpsLoadProbe/ComparisonGroup.cs b/tools/RpsLoadProbe/ComparisonGroup.cs index 73483a4d0..3ec5cad1f 100644 --- a/tools/RpsLoadProbe/ComparisonGroup.cs +++ b/tools/RpsLoadProbe/ComparisonGroup.cs @@ -204,4 +204,51 @@ void Wire(string id, params ProbeMode[] modes) return map; } + + /// + /// Editions wiki rows. The baseline arm is listed in every row that divides by it so a shard + /// never ratios a feature from one VM against a CLI baseline from another. + /// + private static readonly (string Key, string[] ArmNames)[] EditionGroups = + [ + ("edition-cli-h1", ["twp-cli-reverse-http1", "twp-reverse-http1"]), + ("edition-cli-tls", ["twp-cli-reverse-http1-tls", "twp-reverse-http1-tls"]), + ("edition-route", ["twp-cli-reverse-http1-route", "twp-cli-reverse-http1"]), + ("edition-plus-base", ["twp-cli-plus-base-http1", "twp-cli-reverse-http1"]), + ("edition-plus-cache", ["twp-cli-plus-cache-http1", "twp-cli-reverse-http1"]), + ("edition-intercept", ["twp-cli-intercept-http1", "twp-cli-reverse-http1"]), + ("edition-plus-waf", ["twp-cli-plus-waf-http1", "twp-cli-reverse-http1"]), + ("edition-plus-cidr", ["twp-cli-plus-cidr-http1", "twp-cli-reverse-http1"]), + ("edition-plus-jwt", ["twp-cli-plus-jwt-http1", "twp-cli-reverse-http1"]), + ("edition-plus-ratelimit", ["twp-cli-plus-ratelimit-http1", "twp-cli-reverse-http1"]), + ("edition-plus-resilience", ["twp-cli-plus-resilience-http1", "twp-cli-reverse-http1"]), + ("edition-plus-discovery", ["twp-cli-plus-discovery-file-http1", "twp-cli-reverse-http1"]), + ("edition-plus-metrics", ["twp-cli-plus-metrics-scrape-http1", "twp-cli-reverse-http1"]), + ("edition-plus-cache-hit", ["twp-cli-plus-cache-hit-http1", "twp-cli-plus-cache-http1"]), + ("edition-static", ["twp-cli-static-http1", "twp-cli-reverse-http1"]), + ("edition-logging", ["twp-cli-logging-http1", "twp-cli-reverse-http1"]), + ("edition-leasttime", ["twp-cli-lb-leasttime-http1", "twp-cli-reverse-http1-route"]), + ("edition-dialect", ["twp-cli-dialect-twp-http1", "twp-cli-reverse-http1"]), + ("edition-plus-cors", ["twp-cli-plus-cors-http1", "twp-cli-reverse-http1"]), + ("edition-plus-circuit", ["twp-cli-plus-circuit-http1", "twp-cli-reverse-http1"]), + ("edition-plus-retry", ["twp-cli-plus-retry-http1", "twp-cli-reverse-http1"]), + ]; + + public static IReadOnlyList<(string Key, int ArmCount)> ListEditionGroups() => + EditionGroups.Select(g => (g.Key, g.ArmNames.Length)).ToList(); + + public static bool TryEditionArms(string groupKey, out string[] armNames) + { + foreach (var group in EditionGroups) + { + if (string.Equals(group.Key, groupKey, StringComparison.OrdinalIgnoreCase)) + { + armNames = group.ArmNames; + return true; + } + } + + armNames = []; + return false; + } } diff --git a/tools/RpsLoadProbe/README.md b/tools/RpsLoadProbe/README.md index 710e828f2..76b1d51de 100644 --- a/tools/RpsLoadProbe/README.md +++ b/tools/RpsLoadProbe/README.md @@ -212,6 +212,9 @@ pwsh tools/RpsLoadProbe/validate-edition-gates.ps1 -CsvPath tools/RpsLoadProbe/r | `twp-cli-plus-discovery-file-http1` | File discovery + mid-ramp rewrite | | `twp-cli-plus-metrics-scrape-http1` | Background `/v1/snapshot` + dashboard `/metrics` every 10s | | `twp-cli-plus-cache-hit-http1` | Cache warm then measure (vs plus-cache cold) | +| `twp-cli-plus-cors-http1` | CORS response headers on terminate-lite | +| `twp-cli-plus-circuit-http1` | Circuit breaker (session path; near intercept) | +| `twp-cli-plus-retry-http1` | Idempotent retry (session path; near intercept) | | `twp-cli-static-http1` | `staticFiles.root` tiny file | | `twp-cli-logging-http1` | Logging enabled + Info file sink | | `twp-cli-lb-leasttime-http1` | LeastTime across two healthy origins | diff --git a/tools/RpsLoadProbe/RampOrchestrator.cs b/tools/RpsLoadProbe/RampOrchestrator.cs index 6b69e3f9c..181aeb912 100644 --- a/tools/RpsLoadProbe/RampOrchestrator.cs +++ b/tools/RpsLoadProbe/RampOrchestrator.cs @@ -276,6 +276,12 @@ internal enum ProbeMode TwpCliPlusMetricsScrapeHttp1, /// CLI + Plus cache.enable with Cache-Control origin; warm then measure. TwpCliPlusCacheHitHttp1, + /// CLI + Plus CORS response headers on terminate-lite. + TwpCliPlusCorsHttp1, + /// CLI + Plus circuit breaker (session path; expects intercept-like cost). + TwpCliPlusCircuitHttp1, + /// CLI + Plus idempotent retry (session path; expects intercept-like cost). + TwpCliPlusRetryHttp1, /// CLI staticFiles.root tiny file. TwpCliStaticHttp1, /// CLI logging.enabled + Info file sink. @@ -355,9 +361,14 @@ public static IReadOnlyList ListArmNames(RampOptions options) => /// libmsquic is installed, and dropping HTTP/3 groups there silently skips those wiki rows on every /// OS. The legs apply the real capability filters when they run. /// - public static IReadOnlyList<(string Key, int ArmCount)> ListArmGroups(RampOptions options) => - ComparisonGroup.ListGroups(ListArms(options, applySelection: false, filterQuic: false), + public static IReadOnlyList<(string Key, int ArmCount)> ListArmGroups(RampOptions options) + { + if (options.Mode == ProbeMode.CompareEditions) + return ComparisonGroup.ListEditionGroups(); + + return ComparisonGroup.ListGroups(ListArms(options, applySelection: false, filterQuic: false), a => ComparisonGroup.Key(a.Mode, a.Name)); + } private static List ListArms(RampOptions options, bool applySelection, bool filterQuic = true) { @@ -1343,6 +1354,12 @@ private static IReadOnlyList ResolveArms(ProbeMode mode, bool nginxAvai ProbeMode.TwpCliPlusCacheHitHttp1 => [new("twp-cli-plus-cache-hit-http1", ProbeMode.TwpCliPlusCacheHitHttp1, null, WarmCacheFirst: true)], + ProbeMode.TwpCliPlusCorsHttp1 => + [new("twp-cli-plus-cors-http1", ProbeMode.TwpCliPlusCorsHttp1, null)], + ProbeMode.TwpCliPlusCircuitHttp1 => + [new("twp-cli-plus-circuit-http1", ProbeMode.TwpCliPlusCircuitHttp1, null)], + ProbeMode.TwpCliPlusRetryHttp1 => + [new("twp-cli-plus-retry-http1", ProbeMode.TwpCliPlusRetryHttp1, null)], ProbeMode.TwpCliStaticHttp1 => [new("twp-cli-static-http1", ProbeMode.TwpCliStaticHttp1, null)], ProbeMode.TwpCliLoggingHttp1 => @@ -1708,6 +1725,9 @@ private static IReadOnlyList BuildEditionArms() => new("twp-cli-plus-metrics-scrape-http1", ProbeMode.TwpCliPlusMetricsScrapeHttp1, null, BackgroundControlPlaneScrape: true), new("twp-cli-plus-cache-hit-http1", ProbeMode.TwpCliPlusCacheHitHttp1, null, WarmCacheFirst: true), + new("twp-cli-plus-cors-http1", ProbeMode.TwpCliPlusCorsHttp1, null), + new("twp-cli-plus-circuit-http1", ProbeMode.TwpCliPlusCircuitHttp1, null), + new("twp-cli-plus-retry-http1", ProbeMode.TwpCliPlusRetryHttp1, null), new("twp-cli-static-http1", ProbeMode.TwpCliStaticHttp1, null), new("twp-cli-logging-http1", ProbeMode.TwpCliLoggingHttp1, null), new("twp-cli-lb-leasttime-http1", ProbeMode.TwpCliLbLeastTimeHttp1, null), @@ -2386,8 +2406,16 @@ private static List MoveNginxArmsToEnd(List arms) private static List ApplyArmShard(List arms, int shardIndex, int shardCount) => ComparisonGroup.ApplyShard(arms, a => ComparisonGroup.Key(a.Mode, a.Name), shardIndex, shardCount); - private static List ApplyArmGroup(List arms, string groupKey) => - ComparisonGroup.ApplyGroup(arms, a => ComparisonGroup.Key(a.Mode, a.Name), groupKey); + private static List ApplyArmGroup(List arms, string groupKey) + { + if (ComparisonGroup.TryEditionArms(groupKey, out var names)) + { + var set = new HashSet(names, StringComparer.Ordinal); + return arms.Where(a => set.Contains(a.Name)).ToList(); + } + + return ComparisonGroup.ApplyGroup(arms, a => ComparisonGroup.Key(a.Mode, a.Name), groupKey); + } /// /// Periodic "still alive" line so GHA log tails show progress when a measure step is long. diff --git a/tools/RpsLoadProbe/ServeHosts.cs b/tools/RpsLoadProbe/ServeHosts.cs index ba365da44..b3d603935 100644 --- a/tools/RpsLoadProbe/ServeHosts.cs +++ b/tools/RpsLoadProbe/ServeHosts.cs @@ -209,6 +209,9 @@ await NginxHost.TryStartH2cToHttpsAsync(originPort, nginxPath), case ProbeMode.TwpCliPlusDiscoveryFileHttp1: case ProbeMode.TwpCliPlusMetricsScrapeHttp1: case ProbeMode.TwpCliPlusCacheHitHttp1: + case ProbeMode.TwpCliPlusCorsHttp1: + case ProbeMode.TwpCliPlusCircuitHttp1: + case ProbeMode.TwpCliPlusRetryHttp1: case ProbeMode.TwpCliStaticHttp1: case ProbeMode.TwpCliLoggingHttp1: case ProbeMode.TwpCliLbLeastTimeHttp1: @@ -230,6 +233,9 @@ await NginxHost.TryStartH2cToHttpsAsync(originPort, nginxPath), ProbeMode.TwpCliPlusDiscoveryFileHttp1 => TitaniumCliHost.CliArmKind.PlusDiscoveryFile, ProbeMode.TwpCliPlusMetricsScrapeHttp1 => TitaniumCliHost.CliArmKind.PlusMetricsScrape, ProbeMode.TwpCliPlusCacheHitHttp1 => TitaniumCliHost.CliArmKind.PlusCacheHit, + ProbeMode.TwpCliPlusCorsHttp1 => TitaniumCliHost.CliArmKind.PlusCors, + ProbeMode.TwpCliPlusCircuitHttp1 => TitaniumCliHost.CliArmKind.PlusCircuit, + ProbeMode.TwpCliPlusRetryHttp1 => TitaniumCliHost.CliArmKind.PlusRetry, ProbeMode.TwpCliStaticHttp1 => TitaniumCliHost.CliArmKind.StaticFiles, ProbeMode.TwpCliLoggingHttp1 => TitaniumCliHost.CliArmKind.Logging, ProbeMode.TwpCliLbLeastTimeHttp1 => TitaniumCliHost.CliArmKind.LbLeastTime, @@ -1255,6 +1261,9 @@ internal static string ModeName(ProbeMode mode) => ProbeMode.TwpCliPlusDiscoveryFileHttp1 => "twp-cli-plus-discovery-file-http1", ProbeMode.TwpCliPlusMetricsScrapeHttp1 => "twp-cli-plus-metrics-scrape-http1", ProbeMode.TwpCliPlusCacheHitHttp1 => "twp-cli-plus-cache-hit-http1", + ProbeMode.TwpCliPlusCorsHttp1 => "twp-cli-plus-cors-http1", + ProbeMode.TwpCliPlusCircuitHttp1 => "twp-cli-plus-circuit-http1", + ProbeMode.TwpCliPlusRetryHttp1 => "twp-cli-plus-retry-http1", ProbeMode.TwpCliStaticHttp1 => "twp-cli-static-http1", ProbeMode.TwpCliLoggingHttp1 => "twp-cli-logging-http1", ProbeMode.TwpCliLbLeastTimeHttp1 => "twp-cli-lb-leasttime-http1", diff --git a/tools/RpsLoadProbe/TitaniumCliHost.cs b/tools/RpsLoadProbe/TitaniumCliHost.cs index 7c45e33ca..b6297dda9 100644 --- a/tools/RpsLoadProbe/TitaniumCliHost.cs +++ b/tools/RpsLoadProbe/TitaniumCliHost.cs @@ -81,6 +81,9 @@ public enum CliArmKind PlusDiscoveryFile, PlusMetricsScrape, PlusCacheHit, + PlusCors, + PlusCircuit, + PlusRetry, StaticFiles, Logging, LbLeastTime, @@ -90,7 +93,8 @@ public enum CliArmKind public static bool NeedsPlusDll(CliArmKind kind) => kind is CliArmKind.PlusBase or CliArmKind.PlusCache or CliArmKind.PlusWaf or CliArmKind.PlusCidr or CliArmKind.PlusJwt or CliArmKind.PlusRateLimit or CliArmKind.PlusResilience - or CliArmKind.PlusDiscoveryFile or CliArmKind.PlusMetricsScrape or CliArmKind.PlusCacheHit; + or CliArmKind.PlusDiscoveryFile or CliArmKind.PlusMetricsScrape or CliArmKind.PlusCacheHit + or CliArmKind.PlusCors or CliArmKind.PlusCircuit or CliArmKind.PlusRetry; public static bool NeedsControlPlane(CliArmKind kind) => NeedsPlusDll(kind); @@ -544,6 +548,28 @@ internal static string BuildYaml(CliArmKind kind, int listenPort, int originPort ["cache.enable"] = "true" }, dashboardPort); break; + case CliArmKind.PlusCors: + AppendForwardHostListener(sb, listenPort, originPort, decryptSsl: false); + AppendPlus(sb, controlPlanePort, new Dictionary + { + ["cors.enabled"] = "true", + ["cors.allowOrigin"] = "*" + }, dashboardPort); + break; + case CliArmKind.PlusCircuit: + AppendForwardHostListener(sb, listenPort, originPort, decryptSsl: false); + AppendPlus(sb, controlPlanePort, new Dictionary + { + ["resilience.circuit.enabled"] = "true" + }, dashboardPort); + break; + case CliArmKind.PlusRetry: + AppendForwardHostListener(sb, listenPort, originPort, decryptSsl: false); + AppendPlus(sb, controlPlanePort, new Dictionary + { + ["resilience.retry.idempotentAttempts"] = "1" + }, dashboardPort); + break; case CliArmKind.PlusWaf: AppendForwardHostListener(sb, listenPort, originPort, decryptSsl: false); AppendPlus(sb, controlPlanePort, new Dictionary diff --git a/tools/RpsLoadProbe/paste-editions-wiki.py b/tools/RpsLoadProbe/paste-editions-wiki.py index 96d745f51..2958ff7d3 100644 --- a/tools/RpsLoadProbe/paste-editions-wiki.py +++ b/tools/RpsLoadProbe/paste-editions-wiki.py @@ -3,6 +3,7 @@ from __future__ import annotations import argparse +import csv import importlib.util import re from pathlib import Path @@ -26,6 +27,9 @@ ("`twp-cli-plus-discovery-file-http1` vs CLI", "twp-cli-plus-discovery-file-http1", "twp-cli-reverse-http1"), ("`twp-cli-plus-metrics-scrape-http1` vs CLI", "twp-cli-plus-metrics-scrape-http1", "twp-cli-reverse-http1"), ("`twp-cli-plus-cache-hit-http1` vs cache cold", "twp-cli-plus-cache-hit-http1", "twp-cli-plus-cache-http1"), + ("`twp-cli-plus-cors-http1` vs CLI", "twp-cli-plus-cors-http1", "twp-cli-reverse-http1"), + ("`twp-cli-plus-circuit-http1` vs CLI", "twp-cli-plus-circuit-http1", "twp-cli-reverse-http1"), + ("`twp-cli-plus-retry-http1` vs CLI", "twp-cli-plus-retry-http1", "twp-cli-reverse-http1"), ("`twp-cli-static-http1` vs CLI", "twp-cli-static-http1", "twp-cli-reverse-http1"), ("`twp-cli-logging-http1` vs CLI", "twp-cli-logging-http1", "twp-cli-reverse-http1"), ("`twp-cli-lb-leasttime-http1` vs route", "twp-cli-lb-leasttime-http1", "twp-cli-reverse-http1-route"), @@ -47,55 +51,77 @@ def ratio(num, den) -> str: return f"**{num['Sustain'] / den['Sustain']:.2f}ร—**" +def pair_from_csv(ph, run: int, os_folder: str, numerator: str, denominator: str): + """Metrics for both arms from one CSV. Mixing shard files would divide across VMs.""" + run_dir = ROOT / str(run) + for path in ph._csv_files_for_os(run_dir, os_folder): + arms = {r["arm"] for r in csv.DictReader(path.open(newline=""))} + if numerator in arms and denominator in arms: + return ph.arm_metrics(path, numerator), ph.arm_metrics(path, denominator) + return None, None + + def main() -> None: parser = argparse.ArgumentParser() parser.add_argument("--run", required=True, type=int) parser.add_argument("--head-sha", required=True) + parser.add_argument("--prior-sha", default="", help="SHA of rows this run does not re-measure") args = parser.parse_args() ph = load_paste() - win = ph.load_os(args.run, "windows-latest") - lin = ph.load_os(args.run, "ubuntu-latest") - if "twp-cli-reverse-http1" not in win or "twp-cli-reverse-http1" not in lin: - raise SystemExit("editions CSVs missing twp-cli-reverse-http1") + + text = WIKI.read_text(encoding="utf-8") + start = text.find("## Editions (CLI / Plus / Intercept)") + end = text.find("\n## Heavier reverse workloads", start) + if start < 0 or end < 0: + raise SystemExit("editions section not found") + block = text[start:end] + table_at = block.find("| Arm |") + if table_at < 0: + raise SystemExit("editions table not found") + existing_rows = {} + for line in block[table_at:].splitlines(): + if line.startswith("| `"): + existing_rows[line.split("|")[1].strip()] = line lines = [ "| Arm | Win | Linux | Winรท | Linรท | Gate |", "|---|---:|---:|---:|---:|---|", ] + updated = 0 for label, num, den in ROWS: - lines.append( - f"| {label} | {ph.fmt_cell(win.get(num))} | {ph.fmt_cell(lin.get(num))} | " - f"{ratio(win.get(num), win.get(den))} | {ratio(lin.get(num), lin.get(den))} | โ‰ฅ **0.50ร—** |" - ) + win_num, win_den = pair_from_csv(ph, args.run, "windows-latest", num, den) + lin_num, lin_den = pair_from_csv(ph, args.run, "ubuntu-latest", num, den) + if win_num and lin_num and win_den and lin_den: + lines.append( + f"| {label} | {ph.fmt_cell(win_num)} | {ph.fmt_cell(lin_num)} | " + f"{ratio(win_num, win_den)} | {ratio(lin_num, lin_den)} | โ‰ฅ **0.50ร—** |" + ) + updated += 1 + elif label in existing_rows: + lines.append(existing_rows[label]) + else: + lines.append( + f"| {label} | *Not measured* | *Not measured* | โ€” | โ€” | โ‰ฅ **0.50ร—** |" + ) + if updated == 0: + raise SystemExit("no edition pair found in a single CSV") table = "\n".join(lines) - def lib(data, arm) -> str: - m = data.get(arm) - if not m: - return "โ€”" - return f"**{round(m['Sustain']):,}**" - + prior = f" Other edition rows stay @ `{args.prior_sha}`." if args.prior_sha else "" footer = ( - f"`validate-edition-gates.ps1` floors are **0.50ร—** (runner noise on Plus/CLI feature arms). " - f"Library baselines @ c=64 (same job): Win H1 {lib(win, 'twp-reverse-http1')} / TLS {lib(win, 'twp-reverse-http1-tls')}; " - f"Linux H1 {lib(lin, 'twp-reverse-http1')} / TLS {lib(lin, 'twp-reverse-http1-tls')}. " - f"Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). " - f"The macOS job in this run lost the hosted runner before the ramp finished, so this table stays Windows and Linux." + f"`validate-edition-gates.ps1` floors are **0.50ร—**. " + f"Each รท column uses the two arms from the same job. " + f"Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " + f"Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." ) header = ( f"Median of **3** repeats @ `{args.head_sha}`. Source: Actions [{args.run}]" - f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run}). " + f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run}).{prior} " f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " f"The Gate column is that script's floor." ) - text = WIKI.read_text(encoding="utf-8") - start = text.find("## Editions (CLI / Plus / Intercept)") - end = text.find("\n## Heavier reverse workloads", start) - if start < 0 or end < 0: - raise SystemExit("editions section not found") - block = text[start:end] block2, n = re.subn( r"Median of \*\*3\*\* repeats @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)\.[^\n]*", header, diff --git a/tools/RpsLoadProbe/validate-edition-gates.ps1 b/tools/RpsLoadProbe/validate-edition-gates.ps1 index 5d2e0a2a1..a26b5d197 100644 --- a/tools/RpsLoadProbe/validate-edition-gates.ps1 +++ b/tools/RpsLoadProbe/validate-edition-gates.ps1 @@ -146,12 +146,21 @@ $pairs = @( @{ Label = 'CLI static รท CLI'; Num = 'twp-cli-static-http1'; Den = 'twp-cli-reverse-http1'; Gate = $StaticGate }, @{ Label = 'CLI logging รท CLI'; Num = 'twp-cli-logging-http1'; Den = 'twp-cli-reverse-http1'; Gate = $LoggingGate }, @{ Label = 'CLI lb-leasttime รท CLI route'; Num = 'twp-cli-lb-leasttime-http1'; Den = 'twp-cli-reverse-http1-route'; Gate = $LbLeastTimeGate }, - @{ Label = 'CLI dialect .twp รท CLI'; Num = 'twp-cli-dialect-twp-http1'; Den = 'twp-cli-reverse-http1'; Gate = $DialectTwpGate } + @{ Label = 'CLI dialect .twp รท CLI'; Num = 'twp-cli-dialect-twp-http1'; Den = 'twp-cli-reverse-http1'; Gate = $DialectTwpGate }, + @{ Label = 'CLI+Plus-cors รท CLI'; Num = 'twp-cli-plus-cors-http1'; Den = 'twp-cli-reverse-http1'; Gate = 0.50 }, + @{ Label = 'CLI+Plus-circuit รท CLI'; Num = 'twp-cli-plus-circuit-http1'; Den = 'twp-cli-reverse-http1'; Gate = 0.50 }, + @{ Label = 'CLI+Plus-retry รท CLI'; Num = 'twp-cli-plus-retry-http1'; Den = 'twp-cli-reverse-http1'; Gate = 0.50 } ) $failed = $false Write-Host "Edition gates @ c=64 ($([IO.Path]::GetFileName($CsvPath)))" -ForegroundColor Cyan foreach ($p in $pairs) { + $numPresent = $present.Contains([string]$p.Num) + $denPresent = $present.Contains([string]$p.Den) + if (-not $numPresent -and -not $denPresent) { + Write-Host ("SKIP {0}: neither arm in this CSV" -f $p.Label) + continue + } $info = Get-RatioInfo $p.Num $p.Den if ($null -eq $info.Ratio) { Write-Host ("FAIL {0}: cannot compute ratio ({1})" -f $p.Label, $info.Note) -ForegroundColor Red diff --git a/wiki/Performance.md b/wiki/Performance.md index 1af0dbbe1..945440d70 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -420,7 +420,7 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( ## Editions (CLI / Plus / Intercept) -**Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit) runs on H1 terminate-lite without `SessionEventArgs`; JWT caches successful bearer validations. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). +**Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). Median of **3** repeats @ `0386b2aa`. Source: Actions [37156921654](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156921654). Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is the floor enforced by `validate-edition-gates.ps1`. From 0753573de001f7ce0364678f303c1c326191a44e Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 14:12:40 +0530 Subject: [PATCH 04/24] Run product and body RPS suites on every OS, and the rest on Linux. Windows and macOS jobs were still starting for lossy and the other tables, and a Linux-only paste would blank those wiki sections. --- .github/workflows/rps-suite.yml | 25 +- tools/RpsLoadProbe/ComparisonGroup.cs | 5 +- tools/RpsLoadProbe/PERF-GATES.md | 12 +- tools/RpsLoadProbe/paste-editions-wiki.py | 99 +++-- tools/RpsLoadProbe/paste-grpc-ws-wiki.py | 77 +++- tools/RpsLoadProbe/paste-heavier-wiki.py | 483 ++++++++++++---------- wiki/Performance.md | 12 +- 7 files changed, 429 insertions(+), 284 deletions(-) diff --git a/.github/workflows/rps-suite.yml b/.github/workflows/rps-suite.yml index ef5d8ba23..f671f1f2b 100644 --- a/.github/workflows/rps-suite.yml +++ b/.github/workflows/rps-suite.yml @@ -1,7 +1,10 @@ -# One job per wiki row for a single ramp mode, on all three OS. +# One job per wiki row for a single ramp mode. +# compare-product and compare-bodies run on Windows, Linux, and macOS. Every other mode +# runs on Linux only; skipped Windows and macOS jobs must not fail the suite. +# compare-spot on beta/stable pull requests is not this workflow. # Dispatch one run per mode (compare-product, compare-bodies, ...) so each table has one # Source URL and the paste scripts, which look arms up by name, never mix modes. -# compare-saturation stays one job per OS (key "all"): saturation Block A compares proxy +# compare-saturation stays one Linux job (key "all"): saturation Block A compares proxy # arms against origin-direct from the same job. compare-editions is one group per wiki row; # each group contains the feature arm and the baseline it is divided by. # @@ -130,6 +133,7 @@ jobs: windows: name: ${{ inputs.mode }} / ${{ matrix.key }} / windows needs: prep + if: ${{ inputs.mode == 'compare-product' || inputs.mode == 'compare-bodies' }} strategy: fail-fast: false max-parallel: ${{ fromJSON(inputs.max_parallel_other) }} @@ -145,6 +149,7 @@ jobs: macos: name: ${{ inputs.mode }} / ${{ matrix.key }} / macos needs: prep + if: ${{ inputs.mode == 'compare-product' || inputs.mode == 'compare-bodies' }} strategy: fail-fast: false max-parallel: ${{ fromJSON(inputs.max_parallel_mac) }} @@ -176,7 +181,12 @@ jobs: $keys = @($env:KEYS_JSON | ConvertFrom-Json) $arts = gh api "repos/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID/artifacts?per_page=100" --paginate --jq '.artifacts[] | select(.name | startswith("rps-status-")) | .name' $statusNames = @($arts | Where-Object { $_ }) - $osLabels = [ordered]@{ linux = 'ubuntu-latest'; windows = 'windows-latest'; macos = 'macos-15' } + $threeOs = @('compare-product', 'compare-bodies') -contains $env:SUITE_MODE + $osLabels = [ordered]@{ linux = 'ubuntu-latest' } + if ($threeOs) { + $osLabels.windows = 'windows-latest' + $osLabels.macos = 'macos-15' + } $missing = @() foreach ($key in $keys) { $label = ($key -replace '/', '-') @@ -185,6 +195,7 @@ jobs: if ($statusNames -notcontains $name) { $missing += $name } } } + $expected = if ($threeOs) { "$($keys.Count) x 3 OS" } else { "$($keys.Count) x Linux only" } $summary = @( "### RPS suite: $env:SUITE_MODE", "", @@ -194,7 +205,7 @@ jobs: "| windows | $env:WINDOWS_RESULT |", "| macos | $env:MACOS_RESULT |", "", - "Expected rows: $($keys.Count) x 3 OS.", + "Expected rows: $expected.", "Status artifacts found: $($statusNames.Count)." ) if ($missing) { @@ -203,8 +214,10 @@ jobs: $summary += ($missing | ForEach-Object { "- $_" }) } $summary -join "`n" | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8 - $osFailed = @($env:LINUX_RESULT, $env:WINDOWS_RESULT, $env:MACOS_RESULT) | Where-Object { $_ -ne 'success' } + $checked = @($env:LINUX_RESULT) + if ($threeOs) { $checked += @($env:WINDOWS_RESULT, $env:MACOS_RESULT) } + $osFailed = @($checked | Where-Object { $_ -ne 'success' }) if ($missing -or $osFailed) { throw "Suite incomplete: $($missing.Count) status artifact(s) missing, OS results: linux=$env:LINUX_RESULT windows=$env:WINDOWS_RESULT macos=$env:MACOS_RESULT" } - Write-Host "Suite complete: $($keys.Count) rows x 3 OS" + Write-Host "Suite complete: $expected" diff --git a/tools/RpsLoadProbe/ComparisonGroup.cs b/tools/RpsLoadProbe/ComparisonGroup.cs index 3ec5cad1f..0cb10abee 100644 --- a/tools/RpsLoadProbe/ComparisonGroup.cs +++ b/tools/RpsLoadProbe/ComparisonGroup.cs @@ -215,7 +215,9 @@ private static readonly (string Key, string[] ArmNames)[] EditionGroups = ("edition-cli-tls", ["twp-cli-reverse-http1-tls", "twp-reverse-http1-tls"]), ("edition-route", ["twp-cli-reverse-http1-route", "twp-cli-reverse-http1"]), ("edition-plus-base", ["twp-cli-plus-base-http1", "twp-cli-reverse-http1"]), - ("edition-plus-cache", ["twp-cli-plus-cache-http1", "twp-cli-reverse-http1"]), + // Cold, hit, and the CLI baseline share one job so both ratios are same-VM. + // Re-measure this group after the other Plus shards. + ("edition-plus-cache", ["twp-cli-plus-cache-http1", "twp-cli-plus-cache-hit-http1", "twp-cli-reverse-http1"]), ("edition-intercept", ["twp-cli-intercept-http1", "twp-cli-reverse-http1"]), ("edition-plus-waf", ["twp-cli-plus-waf-http1", "twp-cli-reverse-http1"]), ("edition-plus-cidr", ["twp-cli-plus-cidr-http1", "twp-cli-reverse-http1"]), @@ -224,7 +226,6 @@ private static readonly (string Key, string[] ArmNames)[] EditionGroups = ("edition-plus-resilience", ["twp-cli-plus-resilience-http1", "twp-cli-reverse-http1"]), ("edition-plus-discovery", ["twp-cli-plus-discovery-file-http1", "twp-cli-reverse-http1"]), ("edition-plus-metrics", ["twp-cli-plus-metrics-scrape-http1", "twp-cli-reverse-http1"]), - ("edition-plus-cache-hit", ["twp-cli-plus-cache-hit-http1", "twp-cli-plus-cache-http1"]), ("edition-static", ["twp-cli-static-http1", "twp-cli-reverse-http1"]), ("edition-logging", ["twp-cli-logging-http1", "twp-cli-reverse-http1"]), ("edition-leasttime", ["twp-cli-lb-leasttime-http1", "twp-cli-reverse-http1-route"]), diff --git a/tools/RpsLoadProbe/PERF-GATES.md b/tools/RpsLoadProbe/PERF-GATES.md index ea9b9ffd0..3084ed923 100644 --- a/tools/RpsLoadProbe/PERF-GATES.md +++ b/tools/RpsLoadProbe/PERF-GATES.md @@ -35,13 +35,13 @@ Do **not** run full `compare-product` on every develop PR. Thresholds change onl |------|------|------|------------| | Daily / develop PR | feature commits (advisory) | `compare-spot` ([`run-spot-matrix.ps1`](run-spot-matrix.ps1)) | minutes | | Milestone / investigation | before merge to main | `compare-terminate` or `compare-matrix` | ~1รขย€ย“2h | -| Editions | after CLI/Plus changes | `compare-editions` + [`validate-edition-gates.ps1`](validate-edition-gates.ps1) | ~60 min | -| Beta / stable publish | push to `beta`/`stable` | `compare-editions` + parallel `compare-spot` ([`run-spot-matrix.ps1`](run-spot-matrix.ps1)) | ~60 min wall | +| Editions | after CLI/Plus changes | `compare-editions` on Linux + [`validate-edition-gates.ps1`](validate-edition-gates.ps1) | ~60 min | +| Beta / stable publish | push to `beta`/`stable` | Linux `compare-editions` + parallel `compare-spot` ([`run-spot-matrix.ps1`](run-spot-matrix.ps1)) | ~60 min wall | | Pre-wiki smoke (required) | after Core / harness changes | **`compare-product-smoke`** Linux **2** comparison-group shards (`repeats=1`) before full product | ~30โ€“60 min | -| Release / wiki refresh | release SHA | `compare-product` (median of 3) via the [RPS suite](../../.github/workflows/rps-suite.yml): one job per wiki row on Win/Linux/macOS; paste unions the row CSVs | ~5h wall on a Free account (5 macOS slots) | -| Unary gRPC | as needed | `compare-grpc` (H2 TLS and H2 TLSโ†’h2c; one job per row on Win/Linux/macOS) | ~20โ€“50 min | -| WebSocket dual-TLS / RFC 8441 | as needed | `compare-ws-h1tls` / `compare-ws-h2` | ~15โ€“40 min each | -| Heavier wiki tables | as needed | `compare-bodies` / `post` / `lossy` / `arch` / `tls-cost`, each its own suite run | one row per job | +| Release / wiki refresh | release SHA | `compare-product` and `compare-bodies` (median of 3) via the [RPS suite](../../.github/workflows/rps-suite.yml) on Win/Linux/macOS. Other suite modes are Linux only | ~5h wall on a Free account when macOS runs | +| Unary gRPC | as needed | `compare-grpc` on Linux (H2 TLS and H2 TLSโ†’h2c) | ~20โ€“50 min | +| WebSocket dual-TLS / RFC 8441 | as needed | `compare-ws-h1tls` / `compare-ws-h2` on Linux | ~15โ€“40 min each | +| Heavier wiki tables | as needed | `compare-bodies` on all three OS; `post` / `lossy` / `arch` / `tls-cost` on Linux | one row per job | ### One job per wiki row diff --git a/tools/RpsLoadProbe/paste-editions-wiki.py b/tools/RpsLoadProbe/paste-editions-wiki.py index 2958ff7d3..72ee9c175 100644 --- a/tools/RpsLoadProbe/paste-editions-wiki.py +++ b/tools/RpsLoadProbe/paste-editions-wiki.py @@ -1,5 +1,10 @@ #!/usr/bin/env python3 -"""Fill the Editions table from one compare-editions run (Win + Linux in one folder).""" +"""Fill the Editions table from one compare-editions run. + +Linux is required. Windows (and any later macOS folder) is applied only when that +OS folder is present; otherwise existing Windows cells stay, and new rows say +they were not measured on Windows. +""" from __future__ import annotations import argparse @@ -53,7 +58,7 @@ def ratio(num, den) -> str: def pair_from_csv(ph, run: int, os_folder: str, numerator: str, denominator: str): """Metrics for both arms from one CSV. Mixing shard files would divide across VMs.""" - run_dir = ROOT / str(run) + run_dir = ph.ROOT / str(run) for path in ph._csv_files_for_os(run_dir, os_folder): arms = {r["arm"] for r in csv.DictReader(path.open(newline=""))} if numerator in arms and denominator in arms: @@ -83,6 +88,7 @@ def main() -> None: if line.startswith("| `"): existing_rows[line.split("|")[1].strip()] = line + win_here = bool(ph._csv_files_for_os(ph.ROOT / str(args.run), "windows-latest")) lines = [ "| Arm | Win | Linux | Winรท | Linรท | Gate |", "|---|---:|---:|---:|---:|---|", @@ -91,36 +97,59 @@ def main() -> None: for label, num, den in ROWS: win_num, win_den = pair_from_csv(ph, args.run, "windows-latest", num, den) lin_num, lin_den = pair_from_csv(ph, args.run, "ubuntu-latest", num, den) - if win_num and lin_num and win_den and lin_den: - lines.append( - f"| {label} | {ph.fmt_cell(win_num)} | {ph.fmt_cell(lin_num)} | " - f"{ratio(win_num, win_den)} | {ratio(lin_num, lin_den)} | โ‰ฅ **0.50ร—** |" - ) - updated += 1 - elif label in existing_rows: - lines.append(existing_rows[label]) + have_win = bool(win_num and win_den) + have_lin = bool(lin_num and lin_den) + existing = existing_rows.get(label) + if not have_win and not have_lin: + if existing: + lines.append(existing) + else: + lines.append( + f"| {label} | *Not measured* | *Not measured* | โ€” | โ€” | โ‰ฅ **0.50ร—** |" + ) + continue + old = [p.strip() for p in existing.strip().strip("|").split("|")] if existing else [] + if have_win: + win_cell, win_ratio = ph.fmt_cell(win_num), ratio(win_num, win_den) + elif len(old) >= 4: + win_cell, win_ratio = old[1], old[3] + else: + win_cell, win_ratio = "*Not measured*", "โ€”" + if have_lin: + lin_cell, lin_ratio = ph.fmt_cell(lin_num), ratio(lin_num, lin_den) + elif len(old) >= 5: + lin_cell, lin_ratio = old[2], old[4] else: - lines.append( - f"| {label} | *Not measured* | *Not measured* | โ€” | โ€” | โ‰ฅ **0.50ร—** |" - ) + lin_cell, lin_ratio = "*Not measured*", "โ€”" + lines.append( + f"| {label} | {win_cell} | {lin_cell} | {win_ratio} | {lin_ratio} | โ‰ฅ **0.50ร—** |" + ) + updated += 1 if updated == 0: raise SystemExit("no edition pair found in a single CSV") table = "\n".join(lines) - prior = f" Other edition rows stay @ `{args.prior_sha}`." if args.prior_sha else "" - footer = ( - f"`validate-edition-gates.ps1` floors are **0.50ร—**. " - f"Each รท column uses the two arms from the same job. " - f"Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " - f"Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." - ) - header = ( - f"Median of **3** repeats @ `{args.head_sha}`. Source: Actions [{args.run}]" - f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run}).{prior} " - f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " - f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " - f"The Gate column is that script's floor." - ) + prior_sha = args.prior_sha + if win_here: + prior = f" Other edition rows stay @ `{prior_sha}`." if prior_sha else "" + header = ( + f"Median of **3** repeats @ `{args.head_sha}`. Source: Actions [{args.run}]" + f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run}).{prior} " + f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " + f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " + f"The Gate column is that script's floor." + ) + else: + stayed = prior_sha or "the previous run" + header = ( + f"Median of **3** repeats. Linux rows in this paste were re-measured @ `{args.head_sha}` " + f"(Actions [{args.run}](https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run})). " + f"Other edition rows stay @ `{stayed}`. " + f"Windows cells were not re-measured after the terminate-lite cache fix. " + f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " + f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " + f"The Gate column is that script's floor." + ) block2, n = re.subn( r"Median of \*\*3\*\* repeats @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)\.[^\n]*", @@ -131,6 +160,22 @@ def main() -> None: if n != 1: raise SystemExit("editions header not replaced") block2 = ph.replace_table_at(block2, block2.find("| Arm |"), table) + if win_here: + footer = ( + "`validate-edition-gates.ps1` floors are **0.50ร—**. " + "Each รท column uses the two arms from the same job. " + "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " + "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." + ) + else: + footer = ( + "`validate-edition-gates.ps1` floors are **0.50ร—**. " + "Each รท column uses the two arms from the same job. " + "Windows cells were not re-measured after the terminate-lite cache fix; " + "CORS, circuit breaker, and idempotent retry have no Windows cell from this run. " + "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " + "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." + ) block2, n = re.subn( r"`validate-edition-gates\.ps1`[^\n]*", footer, diff --git a/tools/RpsLoadProbe/paste-grpc-ws-wiki.py b/tools/RpsLoadProbe/paste-grpc-ws-wiki.py index 81e2334d0..cd6dffa19 100755 --- a/tools/RpsLoadProbe/paste-grpc-ws-wiki.py +++ b/tools/RpsLoadProbe/paste-grpc-ws-wiki.py @@ -195,6 +195,8 @@ def render_table( nginx_impossible: Optional[str] = None, *, include_heading: bool = True, + measured_os: Optional[set[str]] = None, + preserve_rows: Optional[dict[str, str]] = None, ) -> str: # Drop nginx when it is impossible on every OS (h2c / RFC 8441). products = ["Titanium", "YARP", "nginx", "HAProxy", "Envoy"] @@ -215,6 +217,11 @@ def render_table( lines.append("") lines.extend([header, rule]) for os_label, os_key in (("Windows", "windows"), ("Linux", "linux"), ("macOS", "macos")): + if measured_os is not None and os_key not in measured_os: + kept = (preserve_rows or {}).get(os_label) + if kept: + lines.append(kept) + continue data = by_os.get(os_key, {}) winner = pick_row_winner( products, arms, data, os_key=os_key, win_no_haproxy_envoy=win_no_haproxy_envoy @@ -232,16 +239,24 @@ def render_table( return "\n".join(lines) +def _os_row(body: str, label: str) -> Optional[str]: + prefix = f"| {label} |" + for line in body.splitlines(): + if line.startswith(prefix): + return line + return None + + def apply_to_wiki( wiki_path: Path, - sections: list[tuple[str, str]], + sections: list[tuple[str, str, set[str]]], head_sha: str, primary_run_id: str, ) -> None: import re text = wiki_path.read_text(encoding="utf-8") - for heading, table_md in sections: + for heading, table_md, measured in sections: pat = re.compile( rf"(^## {re.escape(heading)}\n)(.*?)(?=^## |\Z)", re.MULTILINE | re.DOTALL, @@ -250,12 +265,42 @@ def apply_to_wiki( if not m: raise SystemExit(f"Section not found in wiki: ## {heading}") head, body = m.group(1), m.group(2) + if measured >= {"windows", "linux", "macos"}: + sha_line = ( + f"Median of **3** repeats @ `{head_sha}` โ€” [{primary_run_id}]" + f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{primary_run_id})" + ) + else: + skipped = [] + if "windows" not in measured: + skipped.append("Windows") + if "macos" not in measured: + skipped.append("macOS") + stay = " and ".join(skipped) + " rows were not re-measured" + sha_line = ( + f"Median of **3** repeats. Linux @ `{head_sha}` โ€” [{primary_run_id}]" + f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{primary_run_id}). {stay}" + ) body = re.sub( r"Median of \*\*3\*\* repeats @ `[^`]+` โ€” \[[0-9]+\]\(https://github\.com/justcoding121/titanium-web-proxy/actions/runs/[0-9]+\)", - f"Median of **3** repeats @ `{head_sha}` โ€” [{primary_run_id}](https://github.com/justcoding121/titanium-web-proxy/actions/runs/{primary_run_id})", + sha_line, body, count=1, ) + if not measured >= {"windows", "linux", "macos"}: + rewritten: list[str] = [] + for line in table_md.splitlines(): + replaced = False + for label, key in (("Windows", "windows"), ("Linux", "linux"), ("macOS", "macos")): + if line.startswith(f"| {label} |") and key not in measured: + old = _os_row(body, label) + if old: + rewritten.append(old) + replaced = True + break + if not replaced: + rewritten.append(line) + table_md = "\n".join(rewritten) prose_end = re.search(r"(?:\*Not possible:.*\n\n)?\| OS \|", body) if not prose_end: raise SystemExit(f"No OS table under ## {heading}") @@ -286,18 +331,22 @@ def roots(ids: list[str]) -> list[Path]: out.append(p) return out - def load(ids: list[str]) -> dict[str, dict[str, dict[str, float]]]: + def load(ids: list[str]) -> tuple[dict[str, dict[str, dict[str, float]]], set[str]]: merged: dict[str, dict[str, dict[str, float]]] = {k: {} for k in OS_FOLDERS} + present: set[str] = set() for root in roots(ids): for os_name, csvs in find_csvs(root).items(): + if not csvs: + continue + present.add(os_name) med = load_arm_medians(csvs) merged[os_name].update(med) - return merged + return merged, present - sections: list[tuple[str, str]] = [] + sections: list[tuple[str, str, set[str]]] = [] print_blocks: list[str] = [] if args.grpc_root: - grpc_data = load(args.grpc_root) + grpc_data, grpc_os = load(args.grpc_root) h2 = render_table("Unary gRPC (H2 TLS)", GRPC_H2, grpc_data, include_heading=False) h2c = render_table( "Unary gRPC (H2 TLS โ†’ h2c)", @@ -306,28 +355,30 @@ def load(ids: list[str]) -> dict[str, dict[str, dict[str, float]]]: nginx_impossible="Not possible (no H2 upstream)", include_heading=False, ) - sections.append(("Unary gRPC (H2 TLS)", h2)) - sections.append(("Unary gRPC (H2 TLS โ†’ h2c)", h2c)) + sections.append(("Unary gRPC (H2 TLS)", h2, grpc_os)) + sections.append(("Unary gRPC (H2 TLS โ†’ h2c)", h2c, grpc_os)) print_blocks.extend([h2, h2c]) if args.ws_h1tls_root: + ws_data, ws_os = load(args.ws_h1tls_root) t = render_table( "WebSocket (H1 TLS โ†’ H1 TLS)", WS_H1TLS, - load(args.ws_h1tls_root), + ws_data, include_heading=False, ) - sections.append(("WebSocket (H1 TLS โ†’ H1 TLS)", t)) + sections.append(("WebSocket (H1 TLS โ†’ H1 TLS)", t, ws_os)) print_blocks.append(t) if args.ws_h2_root: + h2_data, h2_os = load(args.ws_h2_root) t = render_table( "WebSocket (H2 TLS 8441 โ†’ H1)", WS_H2, - load(args.ws_h2_root), + h2_data, nginx_impossible="Not possible (no RFC 8441 extended CONNECT)", include_heading=False, ) # Wiki heading uses "8441 โ†’ H1" (not "RFC 8441 โ†’ H1 plain"). - sections.append(("WebSocket (H2 TLS 8441 โ†’ H1)", t)) + sections.append(("WebSocket (H2 TLS 8441 โ†’ H1)", t, h2_os)) print_blocks.append(t) if not sections: ap.error("Provide at least one of --grpc-root / --ws-h1tls-root / --ws-h2-root") diff --git a/tools/RpsLoadProbe/paste-heavier-wiki.py b/tools/RpsLoadProbe/paste-heavier-wiki.py index ddf937c36..7ee02df12 100755 --- a/tools/RpsLoadProbe/paste-heavier-wiki.py +++ b/tools/RpsLoadProbe/paste-heavier-wiki.py @@ -149,6 +149,11 @@ def run_id_with_os(run_ids: RunIds, os_folder: str) -> int: return ids[0] +def has_os(run_ids: RunIds, os_folder: str) -> bool: + """True when a downloaded rps-csv folder exists for this OS. Absent folders must not wipe wiki rows.""" + return any(_csv_files_for_os(ROOT / str(rid), os_folder) for rid in _run_id_list(run_ids)) + + def parse_run_ids(text: str) -> RunIds: parts = [p.strip() for p in text.split(",") if p.strip()] ids = [int(p) for p in parts] @@ -519,87 +524,99 @@ def rdiv(num: Optional[dict], den: Optional[dict]) -> str: f"Blocks B/C use peerรทYARP / รทnginx on median peak (not % of H1 origin). **RPS cells** embed median RSS / CPU for the **proxy child** plus its **full descendant tree** " f"(serve-proxy โ†’ nginx master โ†’ workers); origin-direct samples the **origin** child. Product matrices below use matched `dotnet-httpclient` only (not bombardier).\n" ) - text = re.sub( - r"Calibration for the shared 4 vCPU loopback shape:.*?(?=\n\n#### Block A)", - sat_intro.rstrip() + "\n", - text, - count=1, - flags=re.S, - ) + # Saturation is Linux-only unless a Windows or macOS folder was actually downloaded. + sat_win = has_os(runs["saturation"], "windows-latest") + sat_lin = has_os(runs["saturation"], "ubuntu-latest") + sat_mac = has_os(runs["saturation"], mac_folder) + if sat_win and sat_lin: + text = re.sub( + r"Calibration for the shared 4 vCPU loopback shape:.*?(?=\n\n#### Block A)", + sat_intro.rstrip() + "\n", + text, + count=1, + flags=re.S, + ) # Block A a = text.find("#### Block A โ€” H1 plain") b = text.find("#### Block B โ€” H2 TLSโ†’H1") block = text[a:b] - w = block.find("**Windows**") - l = block.find("**Linux**") - block = replace_table_at(block, block.find("| Arm | Generator | RPS", w), sat_block_a(win["saturation"])) - l = block.find("**Linux**") - block = replace_table_at(block, block.find("| Arm | Generator | RPS", l), sat_block_a(lin["saturation"])) - mac_a = sat_block_a(mac["saturation"]) - if "**macOS**" not in block: - mac_section = f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_a + "\n" - prose = block.find("\nReverse peers are about") - if prose < 0: - prose = block.find("\nOn this macOS run") - block = (block[:prose] + mac_section + block[prose:]) if prose > 0 else block.rstrip() + mac_section - else: - mpos = block.find("**macOS**") - block = replace_table_at(block, block.find("| Arm |", mpos), mac_a) + if sat_win: + w = block.find("**Windows**") + block = replace_table_at(block, block.find("| Arm | Generator | RPS", w), sat_block_a(win["saturation"])) + if sat_lin: + l = block.find("**Linux**") + block = replace_table_at(block, block.find("| Arm | Generator | RPS", l), sat_block_a(lin["saturation"])) + if sat_mac: + mac_a = sat_block_a(mac["saturation"]) + if "**macOS**" not in block: + mac_section = f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_a + "\n" + prose = block.find("\nReverse peers are about") + if prose < 0: + prose = block.find("\nOn this macOS run") + block = (block[:prose] + mac_section + block[prose:]) if prose > 0 else block.rstrip() + mac_section + else: + mpos = block.find("**macOS**") + block = replace_table_at(block, block.find("| Arm |", mpos), mac_a) def peak_pct(data: dict, arm: str, origin: str) -> str: num = data.get(arm) den = data.get(origin) if not num or not den or not den.get("Peak"): return "โ€”" return f"{num['Peak'] / den['Peak'] * 100:.1f}%" - block = re.sub( - r"Reverse peers on Block A @ .*?Bare and origin-direct are controls \(not medal peers\)\.", - ( - f"Reverse peers on Block A @ `{HEAD}`: Windows TWP is **{peak_pct(win['saturation'], 'twp-reverse-http1', 'origin-direct')}** " - f"of origin-direct and Linux TWP is **{peak_pct(lin['saturation'], 'twp-reverse-http1', 'origin-direct')}**. " - f"Prefer the **%** column over absolute RPS across runs. Bare and origin-direct are controls (not medal peers)." - ), - block, - count=1, - flags=re.S, - ) - mac_origin = mac["saturation"].get("origin-direct") - if mac_origin: + if sat_win and sat_lin: block = re.sub( - r"On this macOS run `origin-direct` was \*\*[0-9.]+%\*\* CPU", - f"On this macOS run `origin-direct` was **{mac_origin['Cpu']:.1f}%** CPU", + r"Reverse peers on Block A @ .*?Bare and origin-direct are controls \(not medal peers\)\.", + ( + f"Reverse peers on Block A @ `{HEAD}`: Windows TWP is **{peak_pct(win['saturation'], 'twp-reverse-http1', 'origin-direct')}** " + f"of origin-direct and Linux TWP is **{peak_pct(lin['saturation'], 'twp-reverse-http1', 'origin-direct')}**. " + f"Prefer the **%** column over absolute RPS across runs. Bare and origin-direct are controls (not medal peers)." + ), block, count=1, + flags=re.S, ) + if sat_mac: + mac_origin = mac["saturation"].get("origin-direct") + if mac_origin: + block = re.sub( + r"On this macOS run `origin-direct` was \*\*[0-9.]+%\*\* CPU", + f"On this macOS run `origin-direct` was **{mac_origin['Cpu']:.1f}%** CPU", + block, + count=1, + ) text = text[:a] + block + text[b:] # Block B b = text.find("#### Block B โ€” H2 TLSโ†’H1") c = text.find("#### Block C โ€” H3โ†’H1") block = text[b:c] - w = block.find("**Windows**") - block = replace_table_at( - block, - block.find("| Arm |", w), - sat_block_bc(win["saturation"], "nginx-reverse-http2", "yarp-reverse-http2", "twp-reverse-http2-cleartext"), - ) - l = block.find("**Linux**") - block = replace_table_at( - block, - block.find("| Arm |", l), - sat_block_bc(lin["saturation"], "nginx-reverse-http2", "yarp-reverse-http2", "twp-reverse-http2-cleartext"), - ) - mac_b = sat_block_bc( - mac["saturation"], - "nginx-reverse-http2", - "yarp-reverse-http2", - "twp-reverse-http2-cleartext", - ) - if "**macOS**" not in block: - block = block.rstrip() + f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_b + "\n" - else: - mpos = block.find("**macOS**") - block = replace_table_at(block, block.find("| Arm |", mpos), mac_b) + if sat_win: + w = block.find("**Windows**") + block = replace_table_at( + block, + block.find("| Arm |", w), + sat_block_bc(win["saturation"], "nginx-reverse-http2", "yarp-reverse-http2", "twp-reverse-http2-cleartext"), + ) + if sat_lin: + l = block.find("**Linux**") + block = replace_table_at( + block, + block.find("| Arm |", l), + sat_block_bc(lin["saturation"], "nginx-reverse-http2", "yarp-reverse-http2", "twp-reverse-http2-cleartext"), + ) + if sat_mac: + mac_b = sat_block_bc( + mac["saturation"], + "nginx-reverse-http2", + "yarp-reverse-http2", + "twp-reverse-http2-cleartext", + ) + if "**macOS**" not in block: + block = block.rstrip() + f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_b + "\n" + else: + mpos = block.find("**macOS**") + block = replace_table_at(block, block.find("| Arm |", mpos), mac_b) text = text[:b] + block + text[c:] # Block C @@ -611,43 +628,46 @@ def peak_pct(data: dict, arm: str, origin: str) -> str: if how < 0: raise SystemExit("missing end of saturation Block C") block = text[c:how] - w = block.find("**Windows**") - block = replace_table_at( - block, - block.find("| Arm |", w), - sat_block_bc( - win["saturation"], - "nginx-reverse-http3-cleartext", - "yarp-reverse-http3-cleartext", - "twp-reverse-http3-cleartext", - win_no_nginx=True, - ), - ) - l = block.find("**Linux**") - block = replace_table_at( - block, - block.find("| Arm |", l), - sat_block_bc( - lin["saturation"], + if sat_win: + w = block.find("**Windows**") + block = replace_table_at( + block, + block.find("| Arm |", w), + sat_block_bc( + win["saturation"], + "nginx-reverse-http3-cleartext", + "yarp-reverse-http3-cleartext", + "twp-reverse-http3-cleartext", + win_no_nginx=True, + ), + ) + if sat_lin: + l = block.find("**Linux**") + block = replace_table_at( + block, + block.find("| Arm |", l), + sat_block_bc( + lin["saturation"], + "nginx-reverse-http3-cleartext", + "yarp-reverse-http3-cleartext", + "twp-reverse-http3-cleartext", + ), + ) + if sat_mac: + mac_table = sat_block_bc( + mac["saturation"], "nginx-reverse-http3-cleartext", "yarp-reverse-http3-cleartext", "twp-reverse-http3-cleartext", - ), - ) - mac_table = sat_block_bc( - mac["saturation"], - "nginx-reverse-http3-cleartext", - "yarp-reverse-http3-cleartext", - "twp-reverse-http3-cleartext", - ) - if "**macOS**" not in block: - block = block.rstrip() + f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_table + "\n" - else: - mpos = block.find("**macOS**") - block = replace_table_at(block, block.find("| Arm |", mpos), mac_table) + ) + if "**macOS**" not in block: + block = block.rstrip() + f"\n\n**macOS** (`{mac_folder}`, Apple Silicon)\n\n" + mac_table + "\n" + else: + mpos = block.find("**macOS**") + block = replace_table_at(block, block.find("| Arm |", mpos), mac_table) remeasure = block.find("Re-measured @") win_heading = block.find("\n\n**Windows**") - if remeasure > 0 and win_heading > remeasure: + if sat_win and sat_lin and remeasure > 0 and win_heading > remeasure: def peer_aside(os_name: str, data: dict) -> str: bits = [] for label, arm in ( @@ -713,120 +733,132 @@ def patch_heavier(heading: str, new_hdr: str, new_table: str) -> None: f"Median of **3** repeats @ `{HEAD}`. Source: Actions [{rid_b}]({run_url(rid_b)}) (`compare-bodies`). Warmup 2s / measure 8s.\n", bodies_table(lin["bodies"], False), ) - patch_heavier( - "### Windows โ€” POST 64 KiB request + 64 KiB response", - f"Median of **3** repeats on `windows-latest` @ `{HEAD}`. Source: Actions [{rid_p}]({run_url(rid_p)}) (`compare-post`).\n\n{WIN_NO_HAPROXY_ENVOY_NOTE}", - post_table(win["post"], True), - ) - patch_heavier( - "### Linux โ€” POST 64 KiB request + 64 KiB response", - f"Median of **3** repeats @ `{HEAD}`. Source: Actions [{rid_p}]({run_url(rid_p)}) (`compare-post`).\n", - post_table(lin["post"], False), - ) - patch_heavier( - "### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss)", - f"Userspace **5 ms** one-way delay + **1%** TCP connection stall (H1/H2); UDP is **loss% only** (no per-datagram delay; MsQuic-safe) + **1%** datagram drop (H3); **64 KiB** GET. Median of **3** repeats on `windows-latest` @ `{HEAD}` โ€” [{rid_l}]({run_url(rid_l)}) (`compare-lossy`).\n\n{WIN_NO_HAPROXY_ENVOY_NOTE}", - lossy_table(win["lossy"], True), - ) - patch_heavier( - "### Linux โ€” lossy / high-RTT (H2 HOL / H3 loss)", - f"Median of **3** repeats @ `{HEAD}`. Source: [{rid_l}]({run_url(rid_l)}) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only).\n", - lossy_table(lin["lossy"], False), - ) + if has_os(runs["post"], "windows-latest"): + patch_heavier( + "### Windows โ€” POST 64 KiB request + 64 KiB response", + f"Median of **3** repeats on `windows-latest` @ `{HEAD}`. Source: Actions [{rid_p}]({run_url(rid_p)}) (`compare-post`).\n\n{WIN_NO_HAPROXY_ENVOY_NOTE}", + post_table(win["post"], True), + ) + if has_os(runs["post"], "ubuntu-latest"): + patch_heavier( + "### Linux โ€” POST 64 KiB request + 64 KiB response", + f"Median of **3** repeats @ `{HEAD}`. Source: Actions [{rid_p}]({run_url(rid_p)}) (`compare-post`).\n", + post_table(lin["post"], False), + ) + if has_os(runs["lossy"], "windows-latest"): + patch_heavier( + "### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss)", + f"Userspace **5 ms** one-way delay + **1%** TCP connection stall (H1/H2); UDP is **loss% only** (no per-datagram delay; MsQuic-safe) + **1%** datagram drop (H3); **64 KiB** GET. Median of **3** repeats on `windows-latest` @ `{HEAD}` โ€” [{rid_l}]({run_url(rid_l)}) (`compare-lossy`).\n\n{WIN_NO_HAPROXY_ENVOY_NOTE}", + lossy_table(win["lossy"], True), + ) + if has_os(runs["lossy"], "ubuntu-latest"): + patch_heavier( + "### Linux โ€” lossy / high-RTT (H2 HOL / H3 loss)", + f"Median of **3** repeats @ `{HEAD}`. Source: [{rid_l}]({run_url(rid_l)}) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only).\n", + lossy_table(lin["lossy"], False), + ) - text = re.sub( - r"Median of \*\*3\*\* repeats on matched 4 vCPU / 16 GiB runners @ `[^`]+` \(\[[0-9]+\]\([^)]+\)\)(?: \(`compare-arch`\))?\.", - f"Median of **3** repeats on matched 4 vCPU / 16 GiB runners @ `{HEAD}` ([{rid_a}]({run_url(rid_a)})).", - text, - count=1, - ) + arch_win = has_os(runs["arch"], "windows-latest") + arch_lin = has_os(runs["arch"], "ubuntu-latest") + if arch_win and arch_lin: + text = re.sub( + r"Median of \*\*3\*\* repeats on matched 4 vCPU / 16 GiB runners @ `[^`]+` \(\[[0-9]+\]\([^)]+\)\)(?: \(`compare-arch`\))?\.", + f"Median of **3** repeats on matched 4 vCPU / 16 GiB runners @ `{HEAD}` ([{rid_a}]({run_url(rid_a)})).", + text, + count=1, + ) arch = text.find("### Architecture-sensitive") - w = text.find("#### Windows", arch) - arch_w = text.find("| Scenario |", w) - text = replace_table_at(text, arch_w, arch_table(win["arch"], True)) - l = text.find("#### Linux", text.find("### Architecture-sensitive")) - arch_l = text.find("| Scenario |", l) - text = replace_table_at(text, arch_l, arch_table(lin["arch"], False)) - - tls = text.find("### TLS termination cost") - w = text.find("#### Windows", tls) - text2 = text[w:] - text2 = re.sub( - r"Median of \*\*3\*\* repeats on `windows-latest` @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)(?: \(`compare-tls-cost`\))?\.[^\n]*\n", - f"Median of **3** repeats on `windows-latest` @ `{HEAD}`. Source: Actions [{rid_t}]({run_url(rid_t)}). Absolute RPS on GHA swings hard; prefer **TWPรทYARP**.\n", - text2, - count=1, - ) - tls_tbl_w = text2.find("| Workload |") - text2 = replace_table_at(text2, tls_tbl_w, tls_table(win["tls"], True)) - text = text[:w] + text2 - - tls = text.find("### TLS termination cost") - l = text.find("#### Linux", tls) - text2 = text[l:] - text2 = re.sub( - r"Median of \*\*3\*\* repeats @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)(?: \(`compare-tls-cost`\))?\.\n", - f"Median of **3** repeats @ `{HEAD}`. Source: Actions [{rid_t_lin}]({run_url(rid_t_lin)}).\n", - text2, - count=1, - ) - tls_tbl_l = text2.find("| Workload |") - text2 = replace_table_at(text2, tls_tbl_l, tls_table(lin["tls"], False)) - text = text[:l] + text2 - - tls = text.find("### TLS termination cost") - mac_hdr = ( - f"#### macOS\n\n" - f"Median of **3** repeats on `{mac_folder}` @ `{HEAD}`. " - f"Source: Actions [{rid_t_mac}]({run_url(rid_t_mac)}).\n\n" - ) - mac_tbl = tls_table(mac["tls"], False) - mac_section = mac_hdr + mac_tbl + "\n\n" - m = text.find("#### macOS", tls) - next_h2 = text.find("\n## ", tls + 1) - if next_h2 < 0: - next_h2 = len(text) - prose_pat = re.compile( - r"\n(?:All three workloads are \*\*>1\.00ร—\*\* YARP|On Windows, TWP leads YARP on keep-alive tiny)[^\n]*\n", - ) - mac_prose = ( - "\nPrefer **TWPรทYARP** in the table. Absolute RPS on GHA swings hard. " - "New-connection is Darwin SslStream-bound for TWP and YARP (handshake p99 SLO " - "**500 ms** on macOS only โ€” Win/Linux stay at **200 ms**).\n" - ) - if m >= 0 and m < next_h2: - # Replace existing macOS TLS subsection through next ####/## or prose. - end = next_h2 - prose_m = prose_pat.search(text, m, next_h2) - if prose_m: - end = prose_m.start() + if arch_win: + w = text.find("#### Windows", arch) + arch_w = text.find("| Scenario |", w) + text = replace_table_at(text, arch_w, arch_table(win["arch"], True)) + if arch_lin: + l = text.find("#### Linux", text.find("### Architecture-sensitive")) + arch_l = text.find("| Scenario |", l) + text = replace_table_at(text, arch_l, arch_table(lin["arch"], False)) + + if has_os(runs["tls"], "windows-latest"): + tls = text.find("### TLS termination cost") + w = text.find("#### Windows", tls) + text2 = text[w:] + text2 = re.sub( + r"Median of \*\*3\*\* repeats on `windows-latest` @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)(?: \(`compare-tls-cost`\))?\.[^\n]*\n", + f"Median of **3** repeats on `windows-latest` @ `{HEAD}`. Source: Actions [{rid_t}]({run_url(rid_t)}). Absolute RPS on GHA swings hard; prefer **TWPรทYARP**.\n", + text2, + count=1, + ) + tls_tbl_w = text2.find("| Workload |") + text2 = replace_table_at(text2, tls_tbl_w, tls_table(win["tls"], True)) + text = text[:w] + text2 + + if has_os(runs["tls"], "ubuntu-latest"): + tls = text.find("### TLS termination cost") + l = text.find("#### Linux", tls) + text2 = text[l:] + text2 = re.sub( + r"Median of \*\*3\*\* repeats @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)(?: \(`compare-tls-cost`\))?\.\n", + f"Median of **3** repeats @ `{HEAD}`. Source: Actions [{rid_t_lin}]({run_url(rid_t_lin)}).\n", + text2, + count=1, + ) + tls_tbl_l = text2.find("| Workload |") + text2 = replace_table_at(text2, tls_tbl_l, tls_table(lin["tls"], False)) + text = text[:l] + text2 + + if has_os(runs["tls"], mac_folder): + tls = text.find("### TLS termination cost") + mac_hdr = ( + f"#### macOS\n\n" + f"Median of **3** repeats on `{mac_folder}` @ `{HEAD}`. " + f"Source: Actions [{rid_t_mac}]({run_url(rid_t_mac)}).\n\n" + ) + mac_tbl = tls_table(mac["tls"], False) + mac_section = mac_hdr + mac_tbl + "\n\n" + m = text.find("#### macOS", tls) + next_h2 = text.find("\n## ", tls + 1) + if next_h2 < 0: + next_h2 = len(text) + prose_pat = re.compile( + r"\n(?:All three workloads are \*\*>1\.00ร—\*\* YARP|On Windows, TWP leads YARP on keep-alive tiny)[^\n]*\n", + ) + mac_prose = ( + "\nPrefer **TWPรทYARP** in the table. Absolute RPS on GHA swings hard. " + "New-connection is Darwin SslStream-bound for TWP and YARP (handshake p99 SLO " + "**500 ms** on macOS only โ€” Win/Linux stay at **200 ms**).\n" + ) + if m >= 0 and m < next_h2: + # Replace existing macOS TLS subsection through next ####/## or prose. + end = next_h2 + prose_m = prose_pat.search(text, m, next_h2) + if prose_m: + end = prose_m.start() + else: + nxt = text.find("\n#### ", m + 1) + if 0 <= nxt < next_h2: + end = nxt + text = text[:m] + mac_section.rstrip() + "\n" + text[end:] else: - nxt = text.find("\n#### ", m + 1) - if 0 <= nxt < next_h2: - end = nxt - text = text[:m] + mac_section.rstrip() + "\n" + text[end:] - else: - # Insert after Linux TLS table, before closing prose / next ##. - linux = text.find("#### Linux", tls) - tbl = text.find("| Workload |", linux) - # skip table - lines = text[tbl:].splitlines() - i = 0 - while i < len(lines) and (lines[i].startswith("|") or not lines[i].strip()): - i += 1 - insert_at = tbl + sum(len(lines[j]) + 1 for j in range(i)) - # Prefer splicing just before the summary prose if present. - prose_m = prose_pat.search(text, linux, next_h2) - if prose_m: - insert_at = prose_m.start() - text = text[:insert_at].rstrip() + "\n\n" + mac_section + text[insert_at:].lstrip("\n") - - text, n_prose = prose_pat.subn(mac_prose, text, count=1) - if n_prose == 0: - # Ensure prose sits after macOS table when the old sentence was already edited. - grpc = text.find("\n## Unary gRPC", tls) - if grpc > 0 and "Darwin SslStream-bound" not in text[tls:grpc]: - text = text[:grpc] + mac_prose + text[grpc:] + # Insert after Linux TLS table, before closing prose / next ##. + linux = text.find("#### Linux", tls) + tbl = text.find("| Workload |", linux) + # skip table + lines = text[tbl:].splitlines() + i = 0 + while i < len(lines) and (lines[i].startswith("|") or not lines[i].strip()): + i += 1 + insert_at = tbl + sum(len(lines[j]) + 1 for j in range(i)) + # Prefer splicing just before the summary prose if present. + prose_m = prose_pat.search(text, linux, next_h2) + if prose_m: + insert_at = prose_m.start() + text = text[:insert_at].rstrip() + "\n\n" + mac_section + text[insert_at:].lstrip("\n") + + text, n_prose = prose_pat.subn(mac_prose, text, count=1) + if n_prose == 0: + # Ensure prose sits after macOS table when the old sentence was already edited. + grpc = text.find("\n## Unary gRPC", tls) + if grpc > 0 and "Darwin SslStream-bound" not in text[tls:grpc]: + text = text[:grpc] + mac_prose + text[grpc:] def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, table: str) -> None: nonlocal text @@ -851,27 +883,30 @@ def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, tabl f"{mac_intro} Source: Actions [{rid_b_mac}]({run_url(rid_b_mac)}) (`compare-bodies`). Warmup 2s / measure 8s.", bodies_table(mac["bodies"], False), ) - ensure_mac_heading( - "### Linux โ€” POST 64 KiB request + 64 KiB response", - "### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss)", - "### macOS โ€” POST 64 KiB request + 64 KiB response", - f"{mac_intro} Source: Actions [{rid_p_mac}]({run_url(rid_p_mac)}) (`compare-post`).", - post_table(mac["post"], False), - ) - ensure_mac_heading( - "### Linux โ€” lossy / high-RTT (H2 HOL / H3 loss)", - "### Architecture-sensitive", - "### macOS โ€” lossy / high-RTT (H2 HOL / H3 loss)", - f"{mac_intro} Source: [{rid_l_mac}]({run_url(rid_l_mac)}) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only).", - lossy_table(mac["lossy"], False), - ) - ensure_mac_heading( - "#### Linux", - "Slow consumer is sleep-bound", - "#### macOS", - f"{mac_intro} Source: Actions [{rid_a_mac}]({run_url(rid_a_mac)}) (`compare-arch`).", - arch_table(mac["arch"], False), - ) + if has_os(runs["post"], mac_folder): + ensure_mac_heading( + "### Linux โ€” POST 64 KiB request + 64 KiB response", + "### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss)", + "### macOS โ€” POST 64 KiB request + 64 KiB response", + f"{mac_intro} Source: Actions [{rid_p_mac}]({run_url(rid_p_mac)}) (`compare-post`).", + post_table(mac["post"], False), + ) + if has_os(runs["lossy"], mac_folder): + ensure_mac_heading( + "### Linux โ€” lossy / high-RTT (H2 HOL / H3 loss)", + "### Architecture-sensitive", + "### macOS โ€” lossy / high-RTT (H2 HOL / H3 loss)", + f"{mac_intro} Source: [{rid_l_mac}]({run_url(rid_l_mac)}) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only).", + lossy_table(mac["lossy"], False), + ) + if has_os(runs["arch"], mac_folder): + ensure_mac_heading( + "#### Linux", + "Slow consumer is sleep-bound", + "#### macOS", + f"{mac_intro} Source: Actions [{rid_a_mac}]({run_url(rid_a_mac)}) (`compare-arch`).", + arch_table(mac["arch"], False), + ) text = re.sub(r"\nH1-client rows[^\n]*\n", "\n", text) text = re.sub( diff --git a/wiki/Performance.md b/wiki/Performance.md index 945440d70..1de77c5c0 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -880,19 +880,19 @@ CI cadence, shards, paste scripts, and gate floors for people refreshing these t |------|------|------| | Daily / per-PR | `compare-spot` | minutes | | Milestone | `compare-terminate` / `compare-matrix` | ~1โ€“2h | -| Editions | `compare-editions` | one job per OS (arms are compared with each other) | +| Editions | `compare-editions` | Linux only; one job per wiki row (feature arm + its baseline) | | Pre-wiki smoke | `compare-product-smoke` (Linux, `repeats=1`) | ~30โ€“60 min; required before full product | | Release / wiki | `compare-product` via [RPS suite](https://github.com/justcoding121/titanium-web-proxy/blob/develop/.github/workflows/rps-suite.yml) | one job per wiki row on Win/Linux/macOS | -| Unary gRPC | `compare-grpc` | one job per row (H2 TLS and h2c) on Win/Linux/macOS | -| WebSocket dual-TLS | `compare-ws-h1tls` | one row, three OS | -| WebSocket RFC 8441 | `compare-ws-h2` | one row, three OS (nginx N/A) | -| Heavier tables | `compare-bodies` / `post` / `lossy` / `arch` / `tls-cost` | one suite run each, one job per row | +| Unary gRPC | `compare-grpc` | Linux only; paste leaves Win/macOS rows when those folders are absent | +| WebSocket dual-TLS | `compare-ws-h1tls` | Linux only | +| WebSocket RFC 8441 | `compare-ws-h2` | Linux only (nginx N/A) | +| Heavier tables | `compare-bodies` on Win/Linux/macOS; `post` / `lossy` / `arch` / `tls-cost` / `compare-saturation` on Linux only | one suite run each, one job per row | See [PERF-GATES.md](https://github.com/justcoding121/titanium-web-proxy/blob/develop/tools/RpsLoadProbe/PERF-GATES.md). ### Arm shards (comparison groups) -`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The tables on this page are @ `0386b2aa`. HTTP/3 comparison groups are extra runs on that same SHA: suite prep listed groups before libmsquic was installed, so those rows were missing from the suite matrix. Saturation, editions, and both WebSocket modes are one job per OS on that same SHA. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. +`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The tables on this page are @ `0386b2aa`. HTTP/3 comparison groups are extra runs on that same SHA: suite prep listed groups before libmsquic was installed, so those rows were missing from the suite matrix. Saturation, editions, and both WebSocket modes on that SHA were one job per OS. `compare-product` and `compare-bodies` still run on Windows, Linux, and macOS. Every other RPS suite mode runs on Linux only. `compare-spot` on pull requests to beta and stable stays on all three OS. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. One wiki row = one GHA jobโ€™s Clientร—Origin cell set: TWP + YARP + nginx + HAProxy + Envoy (when the OS can run them) + TWP Lite + Full stay on the **same VM**. Shards split **rows**, not individual proxies โ€” so **TWPรทYARP** and **LiteรทReverse** remain same-job ratios. Do not compare **absolute** RPS across shards (different VMs). From d7a1bf749c18b99038e06c6f3b081ddfca575010 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 14:23:17 +0530 Subject: [PATCH 05/24] Skip edition pairs that a shard CSV does not contain. A shared CLI baseline was failing every other feature pair on the same leg. --- .github/workflows/rps-saturation.yml | 2 +- tools/RpsLoadProbe/validate-edition-gates.ps1 | 11 +++++++++-- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/.github/workflows/rps-saturation.yml b/.github/workflows/rps-saturation.yml index 2c897e0f9..08fabb474 100644 --- a/.github/workflows/rps-saturation.yml +++ b/.github/workflows/rps-saturation.yml @@ -962,7 +962,7 @@ jobs: $csv = Get-ChildItem tools/RpsLoadProbe/results -Filter 'rps-ramp-*.csv' | Sort-Object LastWriteTime -Descending | Select-Object -First 1 if (-not $csv) { throw 'No CSV found for edition gate validation' } - pwsh tools/RpsLoadProbe/validate-edition-gates.ps1 -CsvPath $csv.FullName + pwsh tools/RpsLoadProbe/validate-edition-gates.ps1 -CsvPath $csv.FullName -AllowPartial - name: Validate compare-product gates id: gate-product diff --git a/tools/RpsLoadProbe/validate-edition-gates.ps1 b/tools/RpsLoadProbe/validate-edition-gates.ps1 index a26b5d197..90c43bcd3 100644 --- a/tools/RpsLoadProbe/validate-edition-gates.ps1 +++ b/tools/RpsLoadProbe/validate-edition-gates.ps1 @@ -1,7 +1,9 @@ # Validate compare-editions medians at c=64 against edition ratio gates. # Prefer SLO-passing c=64 rows. When an arm ran but missed p99 SLO at c=64, still compute the # ratio from that c=64 row so failures are real ratio misses โ€” not "missing arm data". -# Truly absent CSV arms still FAIL as missing. +# Truly absent CSV arms still FAIL as missing on a full compare-editions CSV. +# -AllowPartial (sharded suite legs) skips a pair unless both arms are in that CSV. +# The shared CLI baseline would otherwise fail every feature pair that this shard did not run. # Non-YARP edition floors are 0.50 (runner noise on Plus/CLI feature arms). param( [Parameter(Mandatory)] [string] $CsvPath, @@ -21,7 +23,8 @@ param( [double] $StaticGate = 0.50, [double] $LoggingGate = 0.50, [double] $LbLeastTimeGate = 0.50, - [double] $DialectTwpGate = 0.50 + [double] $DialectTwpGate = 0.50, + [switch] $AllowPartial ) $ErrorActionPreference = 'Stop' @@ -157,6 +160,10 @@ Write-Host "Edition gates @ c=64 ($([IO.Path]::GetFileName($CsvPath)))" -Foregro foreach ($p in $pairs) { $numPresent = $present.Contains([string]$p.Num) $denPresent = $present.Contains([string]$p.Den) + if ($AllowPartial -and (-not $numPresent -or -not $denPresent)) { + Write-Host ("SKIP {0}: shard CSV does not contain both arms" -f $p.Label) + continue + } if (-not $numPresent -and -not $denPresent) { Write-Host ("SKIP {0}: neither arm in this CSV" -f $p.Label) continue From ec396425021f17d96aa039dea1fe807dca642dd7 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 14:34:18 +0530 Subject: [PATCH 06/24] Give the RPS suite check a token so it can see status artifacts. gh no longer reads GITHUB_TOKEN on its own, so a green Linux leg looked like missing rows. --- .github/workflows/rps-suite.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/rps-suite.yml b/.github/workflows/rps-suite.yml index f671f1f2b..b981d9e45 100644 --- a/.github/workflows/rps-suite.yml +++ b/.github/workflows/rps-suite.yml @@ -171,6 +171,7 @@ jobs: - name: Check every row on every OS shell: pwsh env: + GH_TOKEN: ${{ github.token }} SUITE_MODE: ${{ inputs.mode }} KEYS_JSON: ${{ needs.prep.outputs.keys }} LINUX_RESULT: ${{ needs.linux.result }} @@ -180,6 +181,7 @@ jobs: $ErrorActionPreference = 'Stop' $keys = @($env:KEYS_JSON | ConvertFrom-Json) $arts = gh api "repos/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID/artifacts?per_page=100" --paginate --jq '.artifacts[] | select(.name | startswith("rps-status-")) | .name' + if ($LASTEXITCODE -ne 0) { throw "Could not list status artifacts (gh exit $LASTEXITCODE)" } $statusNames = @($arts | Where-Object { $_ }) $threeOs = @('compare-product', 'compare-bodies') -contains $env:SUITE_MODE $osLabels = [ordered]@{ linux = 'ubuntu-latest' } From 1270e8e21d8f184b3964ee31c919188ab91f108c Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 14:54:52 +0530 Subject: [PATCH 07/24] Run every RPS suite mode on all three OS except Linux-only editions. Windows and macOS product jobs drop MITM arms so Lite/Reverse stays a Linux same-VM ratio, and the product paste keeps an existing MITM section when those arms are absent. --- .github/workflows/rps-saturation.yml | 18 ++++++- .github/workflows/rps-suite.yml | 22 ++++---- tools/RpsLoadProbe/Cli.cs | 12 ++++- tools/RpsLoadProbe/PERF-GATES.md | 12 ++--- tools/RpsLoadProbe/RampOrchestrator.cs | 50 ++++++++++++++++--- tools/RpsLoadProbe/apply-wiki-paste.ps1 | 27 +++++++--- tools/RpsLoadProbe/assert-ramp-complete.ps1 | 10 +++- .../paste-compare-product-wiki.ps1 | 43 ++++++++++++++-- tools/RpsLoadProbe/run-rps.ps1 | 6 ++- .../validate-compare-product-gates.ps1 | 7 +++ wiki/Performance.md | 14 +++--- 11 files changed, 175 insertions(+), 46 deletions(-) diff --git a/.github/workflows/rps-saturation.yml b/.github/workflows/rps-saturation.yml index 08fabb474..e9495638b 100644 --- a/.github/workflows/rps-saturation.yml +++ b/.github/workflows/rps-saturation.yml @@ -60,6 +60,11 @@ on: required: false type: string default: '' + arm_excludes: + description: 'Drop arms whose name matches this substring (same syntax as arm_contains)' + required: false + type: string + default: '' workflow_dispatch: inputs: mode: @@ -243,6 +248,10 @@ on: description: 'Optional arm-name substring filter (e.g. nc-tiny). Empty = all arms in mode.' required: false default: '' + arm_excludes: + description: 'Drop arms whose name matches this substring. Empty = keep every arm.' + required: false + default: '' permissions: contents: read @@ -260,6 +269,7 @@ jobs: RPS_REPEATS: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.repeats || 1 }} RPS_ARM_SHARD: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.arm_shard || 'all' }} RPS_ARM_CONTAINS: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.arm_contains || '' }} + RPS_ARM_EXCLUDES: ${{ (github.event_name == 'workflow_dispatch' || github.event_name == 'workflow_call') && inputs.arm_excludes || '' }} strategy: fail-fast: false matrix: @@ -890,6 +900,7 @@ jobs: RPS_REPEATS: ${{ env.RPS_REPEATS }} RPS_ARM_SHARD: ${{ env.RPS_ARM_SHARD }} RPS_ARM_CONTAINS: ${{ env.RPS_ARM_CONTAINS }} + RPS_ARM_EXCLUDES: ${{ env.RPS_ARM_EXCLUDES }} run: | $hap = Join-Path $env:RUNNER_TEMP 'haproxy-quic/sbin/haproxy' $hapArgs = @() @@ -902,6 +913,10 @@ jobs: Write-Host "Arm name filter: $($env:RPS_ARM_CONTAINS)" $containsArgs = @('-ArmContains', $env:RPS_ARM_CONTAINS) } + if ($env:RPS_ARM_EXCLUDES) { + Write-Host "Arm name exclude: $($env:RPS_ARM_EXCLUDES)" + $containsArgs += @('-ArmExcludes', $env:RPS_ARM_EXCLUDES) + } pwsh tools/RpsLoadProbe/run-rps.ps1 ` -Mode $env:RPS_MODE ` -Concurrency $env:RPS_CONCURRENCY ` @@ -949,7 +964,8 @@ jobs: -ResultsDir tools/RpsLoadProbe/results ` -Mode $env:RPS_MODE ` -ArmShard $env:RPS_ARM_SHARD ` - -Repeats ([int]$env:RPS_REPEATS) + -Repeats ([int]$env:RPS_REPEATS) ` + -ArmExcludes $env:RPS_ARM_EXCLUDES # Post-ramp gates: hard-fail on every event (including workflow_dispatch). # fail-fast: false keeps sibling OS jobs running; Upload CSV uses if: always(). diff --git a/.github/workflows/rps-suite.yml b/.github/workflows/rps-suite.yml index b981d9e45..f7c30517b 100644 --- a/.github/workflows/rps-suite.yml +++ b/.github/workflows/rps-suite.yml @@ -1,10 +1,12 @@ # One job per wiki row for a single ramp mode. -# compare-product and compare-bodies run on Windows, Linux, and macOS. Every other mode -# runs on Linux only; skipped Windows and macOS jobs must not fail the suite. +# Every mode runs on Windows, Linux, and macOS except compare-editions, which is Linux only. +# Skipped Windows and macOS jobs on editions must not fail the suite. +# compare-product on Windows and macOS drops twp-mitm-* arms. Linux keeps them in the same +# job as that row's reverse peers so LiteรทReverse stays same-VM. # compare-spot on beta/stable pull requests is not this workflow. # Dispatch one run per mode (compare-product, compare-bodies, ...) so each table has one # Source URL and the paste scripts, which look arms up by name, never mix modes. -# compare-saturation stays one Linux job (key "all"): saturation Block A compares proxy +# compare-saturation stays one job per OS (key "all"): saturation Block A compares proxy # arms against origin-direct from the same job. compare-editions is one group per wiki row; # each group contains the feature arm and the baseline it is divided by. # @@ -133,7 +135,7 @@ jobs: windows: name: ${{ inputs.mode }} / ${{ matrix.key }} / windows needs: prep - if: ${{ inputs.mode == 'compare-product' || inputs.mode == 'compare-bodies' }} + if: ${{ inputs.mode != 'compare-editions' }} strategy: fail-fast: false max-parallel: ${{ fromJSON(inputs.max_parallel_other) }} @@ -145,11 +147,12 @@ jobs: runner_os: windows-latest arm_shard: ${{ matrix.key }} repeats: ${{ inputs.repeats }} + arm_excludes: ${{ inputs.mode == 'compare-product' && 'twp-mitm-' || '' }} macos: name: ${{ inputs.mode }} / ${{ matrix.key }} / macos needs: prep - if: ${{ inputs.mode == 'compare-product' || inputs.mode == 'compare-bodies' }} + if: ${{ inputs.mode != 'compare-editions' }} strategy: fail-fast: false max-parallel: ${{ fromJSON(inputs.max_parallel_mac) }} @@ -161,6 +164,7 @@ jobs: runner_os: macos-15 arm_shard: ${{ matrix.key }} repeats: ${{ inputs.repeats }} + arm_excludes: ${{ inputs.mode == 'compare-product' && 'twp-mitm-' || '' }} aggregate: name: aggregate ${{ inputs.mode }} @@ -183,9 +187,9 @@ jobs: $arts = gh api "repos/$env:GITHUB_REPOSITORY/actions/runs/$env:GITHUB_RUN_ID/artifacts?per_page=100" --paginate --jq '.artifacts[] | select(.name | startswith("rps-status-")) | .name' if ($LASTEXITCODE -ne 0) { throw "Could not list status artifacts (gh exit $LASTEXITCODE)" } $statusNames = @($arts | Where-Object { $_ }) - $threeOs = @('compare-product', 'compare-bodies') -contains $env:SUITE_MODE + $linuxOnly = $env:SUITE_MODE -eq 'compare-editions' $osLabels = [ordered]@{ linux = 'ubuntu-latest' } - if ($threeOs) { + if (-not $linuxOnly) { $osLabels.windows = 'windows-latest' $osLabels.macos = 'macos-15' } @@ -197,7 +201,7 @@ jobs: if ($statusNames -notcontains $name) { $missing += $name } } } - $expected = if ($threeOs) { "$($keys.Count) x 3 OS" } else { "$($keys.Count) x Linux only" } + $expected = if ($linuxOnly) { "$($keys.Count) x Linux only" } else { "$($keys.Count) x 3 OS" } $summary = @( "### RPS suite: $env:SUITE_MODE", "", @@ -217,7 +221,7 @@ jobs: } $summary -join "`n" | Out-File -FilePath $env:GITHUB_STEP_SUMMARY -Encoding utf8 $checked = @($env:LINUX_RESULT) - if ($threeOs) { $checked += @($env:WINDOWS_RESULT, $env:MACOS_RESULT) } + if (-not $linuxOnly) { $checked += @($env:WINDOWS_RESULT, $env:MACOS_RESULT) } $osFailed = @($checked | Where-Object { $_ -ne 'success' }) if ($missing -or $osFailed) { throw "Suite incomplete: $($missing.Count) status artifact(s) missing, OS results: linux=$env:LINUX_RESULT windows=$env:WINDOWS_RESULT macos=$env:MACOS_RESULT" diff --git a/tools/RpsLoadProbe/Cli.cs b/tools/RpsLoadProbe/Cli.cs index c40f1eb0d..a861d3c60 100644 --- a/tools/RpsLoadProbe/Cli.cs +++ b/tools/RpsLoadProbe/Cli.cs @@ -47,6 +47,7 @@ public static int Run(string[] args) var stopOnSloFail = true; (int Index, int Count)? armShard = null; string? armNameContains = null; + string? armNameExcludes = null; var printArms = false; var printGroups = false; string? armGroupKey = null; @@ -170,6 +171,11 @@ public static int Run(string[] args) if (armNameContains.Length == 0) return Fail("--arm-contains must be a non-empty substring"); break; + case "--arm-excludes": + armNameExcludes = RequireValue(args, ref i, "--arm-excludes").Trim(); + if (armNameExcludes.Length == 0) + return Fail("--arm-excludes must be a non-empty substring"); + break; case "--method": method = RequireValue(args, ref i, "--method").ToUpperInvariant(); if (method is not ("GET" or "POST")) @@ -273,7 +279,7 @@ public static int Run(string[] args) originHttpsExtraPorts, nginxPath, haproxyPath, envoyPath, maxCachedConnections, cts.Token, workload), "serve" => RunServe(modeText, nginxPath, haproxyPath, envoyPath, maxCachedConnections, cts.Token, workload), "ramp" => RunRamp(modeText, nginxPath, haproxyPath, envoyPath, resultsDir, concurrency, warmupSec, durationSec, - maxCachedConnections, repeats, workload, stopOnSloFail, armShard, armGroupKey, armNameContains, printArms, printGroups, cts.Token), + maxCachedConnections, repeats, workload, stopOnSloFail, armShard, armGroupKey, armNameContains, armNameExcludes, printArms, printGroups, cts.Token), _ => Fail("Required: --serve | --serve-origin | --serve-proxy | --ramp") }; } @@ -327,7 +333,7 @@ or ProbeMode.CompareEditions private static int RunRamp(string? modeText, string? nginxPath, string? haproxyPath, string? envoyPath, string? resultsDir, List concurrency, int warmupSec, int durationSec, int? maxCachedConnections, int repeats, WorkloadOptions workload, bool stopOnSloFail, (int Index, int Count)? armShard, - string? armGroupKey, string? armNameContains, bool printArms, bool printGroups, CancellationToken ct) + string? armGroupKey, string? armNameContains, string? armNameExcludes, bool printArms, bool printGroups, CancellationToken ct) { if (modeText == null || !TryParseMode(modeText, out var mode)) return Fail("Required: --ramp --mode "); @@ -347,6 +353,7 @@ private static int RunRamp(string? modeText, string? nginxPath, string? haproxyP ArmShard = armShard, ArmGroupKey = armGroupKey, ArmNameContains = armNameContains, + ArmNameExcludes = armNameExcludes, ConcurrencySteps = concurrency.Count > 0 ? concurrency.ToArray() : [8, 16, 24, 32, 48, 64, 128, 256, 512], @@ -931,6 +938,7 @@ private static void PrintHelp() --arm-shard i/n|all|KEY Exclusive comparison-group (wiki-row) partition; all = no split; KEY (e.g. h1c-h1c, h3-h3-body64k) runs exactly one wiki row --arm-contains TEXT Keep only arms whose name contains TEXT (surgical re-run); + --arm-excludes TEXT Drop arms whose name matches TEXT (same comma/$ syntax); comma-separated alternatives, trailing $ = name ends with --max-cached-connections N Override ProxyServer.MaxCachedConnections for TWP arms --method GET|POST Default GET (compare-post sets POST per arm) diff --git a/tools/RpsLoadProbe/PERF-GATES.md b/tools/RpsLoadProbe/PERF-GATES.md index 3084ed923..b230cf41e 100644 --- a/tools/RpsLoadProbe/PERF-GATES.md +++ b/tools/RpsLoadProbe/PERF-GATES.md @@ -38,16 +38,16 @@ Do **not** run full `compare-product` on every develop PR. Thresholds change onl | Editions | after CLI/Plus changes | `compare-editions` on Linux + [`validate-edition-gates.ps1`](validate-edition-gates.ps1) | ~60 min | | Beta / stable publish | push to `beta`/`stable` | Linux `compare-editions` + parallel `compare-spot` ([`run-spot-matrix.ps1`](run-spot-matrix.ps1)) | ~60 min wall | | Pre-wiki smoke (required) | after Core / harness changes | **`compare-product-smoke`** Linux **2** comparison-group shards (`repeats=1`) before full product | ~30โ€“60 min | -| Release / wiki refresh | release SHA | `compare-product` and `compare-bodies` (median of 3) via the [RPS suite](../../.github/workflows/rps-suite.yml) on Win/Linux/macOS. Other suite modes are Linux only | ~5h wall on a Free account when macOS runs | -| Unary gRPC | as needed | `compare-grpc` on Linux (H2 TLS and H2 TLSโ†’h2c) | ~20โ€“50 min | -| WebSocket dual-TLS / RFC 8441 | as needed | `compare-ws-h1tls` / `compare-ws-h2` on Linux | ~15โ€“40 min each | -| Heavier wiki tables | as needed | `compare-bodies` on all three OS; `post` / `lossy` / `arch` / `tls-cost` on Linux | one row per job | +| Release / wiki refresh | release SHA | `compare-product` reverse, `compare-bodies`, `post`, `lossy`, `arch`, `tls-cost`, `grpc`, both WebSocket modes, and `compare-saturation` (median of 3) via the [RPS suite](../../.github/workflows/rps-suite.yml) on Win/Linux/macOS. TWP MITM arms stay on Linux, in the same product job as that row's reverse peers. `compare-editions` is Linux only | ~5h wall on a Free account when macOS runs | +| Unary gRPC | as needed | `compare-grpc` on Win/Linux/macOS (H2 TLS and H2 TLSโ†’h2c) | ~20โ€“50 min | +| WebSocket dual-TLS / RFC 8441 | as needed | `compare-ws-h1tls` / `compare-ws-h2` on Win/Linux/macOS | ~15โ€“40 min each | +| Heavier wiki tables | as needed | `compare-bodies`, `post`, `lossy`, `arch`, `tls-cost`, and `compare-saturation` on all three OS | one row per job | ### One job per wiki row -Dispatch the [RPS suite](../../.github/workflows/rps-suite.yml) once per mode. Its prep job lists the comparison groups (`--print-groups`) and each group becomes one job per OS, so a wiki row's peers and its MITM Lite and Full arms stay on the same VM while no single job can run for hours. `compare-saturation` and `compare-editions` stay one job per OS, because saturation compares proxy arms against `origin-direct` from the same run. Address a row by its group key (`--arm-shard h1c-h1c`), not by an `i/n` index, so a re-run measures the same row even if a peer install fails. `i/n` remains for the smoke modes. +Dispatch the [RPS suite](../../.github/workflows/rps-suite.yml) once per mode. Its prep job lists the comparison groups (`--print-groups`) and each group becomes one job per OS, so a wiki row's peers stay on the same VM while no single job can run for hours. On Linux, that product job also runs MITM Lite and Full, so LiteรทReverse stays same-VM. Windows and macOS product jobs drop `twp-mitm-*`. `compare-saturation` stays one job per OS, because saturation compares proxy arms against `origin-direct` from the same run. `compare-editions` is one Linux job per wiki row (feature arm plus its baseline). Address a row by its group key (`--arm-shard h1c-h1c`), not by an `i/n` index, so a re-run measures the same row even if a peer install fails. `i/n` remains for the smoke modes. -A single-row leg times out after 60 minutes of ramp and 75 minutes overall, so a wedged macOS VM costs one of the five slots for about an hour instead of six. Each leg uploads a `leg-status.json` (overwritten on re-run) and the suite's aggregate job fails unless every row reports success on every OS. +A single-row leg times out after 60 minutes of ramp and 75 minutes overall, so a wedged macOS VM costs one of the five slots for about an hour instead of six. Each leg uploads a `leg-status.json` (overwritten on re-run) and the suite's aggregate job fails unless every row reports success on every OS that mode runs. `compare-editions` is Linux only, so a skipped Windows or macOS job does not fail that suite. Free-plan accounts run 20 jobs at once and only 5 of them can be macOS. Give the suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run only infrastructure failures (`gh run rerun --failed`); a failed gate is a finding and is never re-rolled, and the published numbers are the last attempt, never the best of several. diff --git a/tools/RpsLoadProbe/RampOrchestrator.cs b/tools/RpsLoadProbe/RampOrchestrator.cs index 181aeb912..696ddbd35 100644 --- a/tools/RpsLoadProbe/RampOrchestrator.cs +++ b/tools/RpsLoadProbe/RampOrchestrator.cs @@ -342,6 +342,11 @@ internal sealed class RampOptions /// Surgical re-runs (e.g. nc-tiny after a Mac TLS handshake fix). /// public string? ArmNameContains { get; init; } + /// + /// When set, drop arms whose name matches this filter (). + /// Windows and macOS product jobs pass twp-mitm- so MITM stays Linux-only. + /// + public string? ArmNameExcludes { get; init; } /// Default workload when an arm does not override (preserves tiny-GET matrix). public WorkloadOptions Workload { get; init; } = WorkloadOptions.TinyGet; } @@ -376,11 +381,12 @@ private static List ListArms(RampOptions options, bool applySelection, var haproxyExe = HaproxyHost.ResolveHaproxyExecutable(options.HaproxyPath); var envoyExe = EnvoyHost.ResolveEnvoyExecutable(options.EnvoyPath); var nginxHttp3 = nginxExe != null && NginxHost.SupportsHttp3Module(NginxHost.ReadConfigureArguments(nginxExe)); + var nginxH2c = NginxHost.SupportsPriorKnowledgeH2c(nginxExe); var haproxyQuic = haproxyExe != null && HaproxyHost.SupportsQuic(haproxyExe); var envoyHttp3 = envoyExe != null && EnvoyHost.SupportsHttp3(envoyExe); var bombardierAvailable = BombardierLoadGenerator.IsAvailable(); var arms = ResolveArms(options.Mode, nginxExe != null, nginxHttp3, bombardierAvailable, - haproxyExe != null, haproxyQuic, envoyExe != null, envoyHttp3).ToList(); + haproxyExe != null, haproxyQuic, envoyExe != null, envoyHttp3, nginxH2c).ToList(); if (filterQuic && !System.Net.Quic.QuicListener.IsSupported) { arms = arms.Where(a => @@ -421,6 +427,9 @@ or ProbeMode.ReverseH2cToH3 or ProbeMode.YarpReverseH2cToH3 arms = arms.Where(a => a.Name.Contains(needle, StringComparison.OrdinalIgnoreCase)).ToList(); } + if (!string.IsNullOrWhiteSpace(options.ArmNameExcludes)) + arms = arms.Where(a => !ArmNameMatches(a.Name, options.ArmNameExcludes)).ToList(); + return arms; } @@ -466,8 +475,11 @@ public static async Task RunAsync(RampOptions options, CancellationToken ca await CsvWriter.WriteHeaderAsync(csv); var nginxHttp3 = nginxExe != null && NginxHost.SupportsHttp3Module(NginxHost.ReadConfigureArguments(nginxExe)); + var nginxH2c = NginxHost.SupportsPriorKnowledgeH2c(nginxExe); if (nginxExe != null && !nginxHttp3) ProbeLog.Info("nginx has no http_v3_module โ€” skipping HTTP/3 native reverse arms (install nginx.org mainline on Linux)."); + if (options.Mode == ProbeMode.CompareProductSmoke && nginxExe != null && !nginxH2c) + ProbeLog.Info("nginx is older than 1.25.1 โ€” skipping the prior-knowledge h2c canary (needs http2 on; Ubuntu 24.04 is 1.24)."); var haproxyQuic = haproxyExe != null && HaproxyHost.SupportsQuic(haproxyExe); if (haproxyExe != null && !haproxyQuic) @@ -479,7 +491,7 @@ public static async Task RunAsync(RampOptions options, CancellationToken ca var bombardierAvailable = BombardierLoadGenerator.IsAvailable(); var arms = ResolveArms(options.Mode, nginxExe != null, nginxHttp3, bombardierAvailable, - haproxyExe != null, haproxyQuic, envoyExe != null, envoyHttp3).ToList(); + haproxyExe != null, haproxyQuic, envoyExe != null, envoyHttp3, nginxH2c).ToList(); if (!System.Net.Quic.QuicListener.IsSupported) { var removed = arms.RemoveAll(a => @@ -530,6 +542,14 @@ or ProbeMode.MitmHttp3ToHttp1 ProbeLog.Info($"arm-contains '{needle}': {arms.Count}/{before} arms."); } + if (!string.IsNullOrWhiteSpace(options.ArmNameExcludes)) + { + var needle = options.ArmNameExcludes.Trim(); + var before = arms.Count; + arms = arms.Where(a => !ArmNameMatches(a.Name, needle)).ToList(); + ProbeLog.Info($"arm-excludes '{needle}': {arms.Count}/{before} arms."); + } + if (arms.Count == 0) { // CompareHaproxySmoke on Windows: HAProxy unavailable is the expected outcome (skip). @@ -545,6 +565,12 @@ or ProbeMode.MitmHttp3ToHttp1 return 0; } + if (!string.IsNullOrWhiteSpace(options.ArmNameExcludes)) + { + ProbeLog.Info($"arm-excludes '{options.ArmNameExcludes}' removed every arm โ€” skip OK."); + return 0; + } + ProbeLog.Error("No arms to run for this mode/host combination."); return 2; } @@ -1072,7 +1098,8 @@ private static void InsertNativeRemainderAfterYarp(List arms, ProbeMode private static IReadOnlyList ResolveArms(ProbeMode mode, bool nginxAvailable, bool nginxHttp3Available = false, bool bombardierAvailable = false, bool haproxyAvailable = false, bool haproxyQuicAvailable = false, - bool envoyAvailable = false, bool envoyHttp3Available = false) + bool envoyAvailable = false, bool envoyHttp3Available = false, + bool nginxH2cAvailable = false) { if (PeerWire.TryGet(mode, out var nativeWire)) return NativeWireAvailable(nativeWire, nginxAvailable, haproxyAvailable, haproxyQuicAvailable, @@ -1375,7 +1402,7 @@ private static IReadOnlyList ResolveArms(ProbeMode mode, bool nginxAvai ..BuildMitmArms(), ..BuildMitmFullArms() ], - ProbeMode.CompareProductSmoke => BuildProductSmokeArms(nginxAvailable, haproxyAvailable, envoyAvailable), + ProbeMode.CompareProductSmoke => BuildProductSmokeArms(haproxyAvailable, envoyAvailable, nginxH2cAvailable), ProbeMode.CompareSpot => BuildSpotArms(), ProbeMode.CompareCeiling => BuildCompareCeilingArms(nginxAvailable, haproxyAvailable, envoyAvailable), ProbeMode.CompareBodies => @@ -1625,8 +1652,8 @@ private static IReadOnlyList BuildSpotArms() /// Minimal arm set for validate-compare-product-gates.ps1 (every Lite/Full/Reverse /// pair the script scores, plus YARP H3 reverse peers). Intended for Mac-only GHA smoke. /// - private static IReadOnlyList BuildProductSmokeArms(bool nginxAvailable, bool haproxyAvailable, - bool envoyAvailable) + private static IReadOnlyList BuildProductSmokeArms(bool haproxyAvailable, + bool envoyAvailable, bool nginxH2cAvailable) { const bool intercept = true; const bool mutate = true; @@ -1680,10 +1707,17 @@ private static IReadOnlyList BuildProductSmokeArms(bool nginxAvailable, }; // Remainder canaries (1a1d78f2) โ€” fail Phase-1 smoke on config typos before full product. - // TWP reverse twins keep each canary in a comparison group (not a singleton peer). - if (nginxAvailable) + // Prior-knowledge h2c needs nginx 1.25.1+ (`http2 on`). A distro 1.24 binary is on PATH + // on ubuntu-latest but cannot serve the wire; scheduling it still records + // twp-reverse-h2c-to-h1, and the MITM gate then fails that wire as a partial pair. + // When the canary does run, include Lite and Full so the reverse row is a complete pair. + if (nginxH2cAvailable) { arms.Add(new("twp-reverse-h2c-to-h1", ProbeMode.ReverseH2cToH1, null)); + arms.Add(new("twp-mitm-h2c-to-h1", ProbeMode.ReverseH2cToH1, null, + EnableHttpInterception: intercept)); + arms.Add(new("twp-mitm-full-h2c-to-h1", ProbeMode.ReverseH2cToH1, null, + EnableHttpInterception: intercept, MutateHttpInterception: mutate)); arms.Add(new("nginx-reverse-h2c-to-h1", ProbeMode.NginxReverseH2cToH1, null)); } diff --git a/tools/RpsLoadProbe/apply-wiki-paste.ps1 b/tools/RpsLoadProbe/apply-wiki-paste.ps1 index 3de04b9f1..41ffe0c55 100644 --- a/tools/RpsLoadProbe/apply-wiki-paste.ps1 +++ b/tools/RpsLoadProbe/apply-wiki-paste.ps1 @@ -97,12 +97,14 @@ $wiki = [regex]::Replace($wiki, }, 1) +if ($winMitm -ne 'KEEP') { $wiki = [regex]::Replace($wiki, '(?s)(### MITM \(TWP only\)\r?\n\r?\n).*?(?=\r?\n## Linux)', [System.Text.RegularExpressions.MatchEvaluator]{ param($m) $m.Groups[1].Value + $mitmNote + "`n`n" + $winMitm + "`n" }, 1) +} $wiki = [regex]::Replace($wiki, "(?ms)(^## Linux .+? Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?\n(?:.*?\r?\n)*?### Reverse\r?\n\r?\n).*?(?=\r?\n### MITM)", @@ -117,14 +119,16 @@ $idx = $linuxHdrMatch.Index $head = $wiki.Substring(0, $idx) $tail = $wiki.Substring($idx) +if ($linMitm -ne 'KEEP') { $tail = [regex]::Replace($tail, "(?s)(### MITM \(TWP only\)\r?\n\r?\n).*?$afterLinuxLookahead", [System.Text.RegularExpressions.MatchEvaluator]{ param($m) $m.Groups[1].Value + $mitmNote + "`n`n" + $linMitm + "`n" }, 1) +} -$macBlock = @( +$macBlockLines = @( $macHdrNew '' '### Reverse' @@ -133,13 +137,18 @@ $macBlock = @( '' $macRev '' - '### MITM (TWP only)' - '' - $mitmNote - '' - $macMitm - '' -) -join "`n" +) +if ($macMitm -ne 'KEEP') { + $macBlockLines += @( + '### MITM (TWP only)' + '' + $mitmNote + '' + $macMitm + '' + ) +} +$macBlock = $macBlockLines -join "`n" $macHdrMatch = [regex]::Match($tail, '(?m)^## macOS .+ Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?$') if ($macHdrMatch.Success) { @@ -154,12 +163,14 @@ if ($macHdrMatch.Success) { $macIdx = $macHdrMatch2.Index $macHead = $tail.Substring(0, $macIdx) $macTail = $tail.Substring($macIdx) + if ($macMitm -ne 'KEEP') { $macTail = [regex]::Replace($macTail, "(?s)(### MITM \(TWP only\)\r?\n\r?\n).*?$afterMacLookahead", [System.Text.RegularExpressions.MatchEvaluator]{ param($m) $m.Groups[1].Value + $mitmNote + "`n`n" + $macMitm + "`n" }, 1) + } $tail = $macHead + $macTail } else { diff --git a/tools/RpsLoadProbe/assert-ramp-complete.ps1 b/tools/RpsLoadProbe/assert-ramp-complete.ps1 index 8922e4654..3b5f6f2dd 100644 --- a/tools/RpsLoadProbe/assert-ramp-complete.ps1 +++ b/tools/RpsLoadProbe/assert-ramp-complete.ps1 @@ -5,7 +5,8 @@ param( [Parameter(Mandatory)][string] $ResultsDir, [Parameter(Mandatory)][string] $Mode, [string] $ArmShard = 'all', - [int] $Repeats = 1 + [int] $Repeats = 1, + [string] $ArmExcludes = '' ) $ErrorActionPreference = 'Stop' @@ -15,6 +16,9 @@ $probeArgs = @('run', '--no-build', '-c', 'Release', '--', '--ramp', '--mode', $ if ($ArmShard -and $ArmShard -ne 'all') { $probeArgs += @('--arm-shard', $ArmShard) } +if ($ArmExcludes) { + $probeArgs += @('--arm-excludes', $ArmExcludes) +} Push-Location $probeDir try { @@ -25,6 +29,10 @@ finally { } if ($expected.Count -eq 0) { + if ($ArmExcludes) { + Write-Host "No arms after exclude '$ArmExcludes' for mode $Mode shard '$ArmShard' - skip OK." + return + } throw "No arms resolved for mode $Mode shard '$ArmShard'. A row with no runnable arms is a failure." } diff --git a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 index 9830a12f3..74dd6444a 100644 --- a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 +++ b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 @@ -258,6 +258,32 @@ function Emit-ReverseTable([string]$OsFolder) { } } +function Get-OsArmNames([string]$OsFolder) { + $names = [System.Collections.Generic.HashSet[string]]::new([StringComparer]::OrdinalIgnoreCase) + foreach ($runId in $RunIds) { + $dir = Join-Path $ResultsRoot $runId + $csvs = @(Get-ChildItem ` + "$dir/rps-csv-$OsFolder/*.csv", ` + "$dir/rps-csv-$OsFolder-*/*.csv", ` + "$dir/$OsFolder/*.csv", ` + "$dir/*.csv" ` + -ErrorAction SilentlyContinue | + Where-Object { + if ($OsFolder -ne 'macos-15') { $true } + else { + $p = $_.FullName.ToLowerInvariant().Replace('\', '/') + $p -notmatch 'macos-15-intel' + } + }) + foreach ($csv in $csvs) { + foreach ($row in @(Import-Csv $csv.FullName)) { + if ($row.arm) { [void]$names.Add([string]$row.arm) } + } + } + } + return $names +} + function Emit-MitmTable([string]$OsFolder) { Write-Output '| Client | Origin | Lite sustain | Full sustain | LiteรทReverse | FullรทReverse |' Write-Output '|---|---|---:|---:|---:|---:|' @@ -285,17 +311,28 @@ function Emit-SinkRedirect { foreach ($line in (& $Block)) { [void]$script:EmitSink.Add([string]$line) } } +function Emit-MitmOrKeep([string]$OsFolder) { + $names = Get-OsArmNames $OsFolder + $hasReverse = @($names | Where-Object { $_ -like 'twp-reverse-*' -or $_ -like 'yarp-reverse-*' }).Count -gt 0 + $hasMitm = @($names | Where-Object { $_.StartsWith('twp-mitm-') }).Count -gt 0 + if ($hasReverse -and -not $hasMitm) { + Write-Output 'KEEP' + return + } + Emit-MitmTable $OsFolder +} + Emit-SinkRedirect { Emit-ReverseTable 'windows-latest' } Out '---WIN_MITM---' -Emit-SinkRedirect { Emit-MitmTable 'windows-latest' } +Emit-SinkRedirect { Emit-MitmOrKeep 'windows-latest' } Out '---LIN_REVERSE---' Emit-SinkRedirect { Emit-ReverseTable 'ubuntu-latest' } Out '---LIN_MITM---' -Emit-SinkRedirect { Emit-MitmTable 'ubuntu-latest' } +Emit-SinkRedirect { Emit-MitmOrKeep 'ubuntu-latest' } Out '---MAC_REVERSE---' Emit-SinkRedirect { Emit-ReverseTable 'macos-15' } Out '---MAC_MITM---' -Emit-SinkRedirect { Emit-MitmTable 'macos-15' } +Emit-SinkRedirect { Emit-MitmOrKeep 'macos-15' } $text = ($lines -join "`n") + "`n" if ($OutFile) { diff --git a/tools/RpsLoadProbe/run-rps.ps1 b/tools/RpsLoadProbe/run-rps.ps1 index 8566bbcf3..32055a44e 100644 --- a/tools/RpsLoadProbe/run-rps.ps1 +++ b/tools/RpsLoadProbe/run-rps.ps1 @@ -76,6 +76,7 @@ param( [int] $Repeats = 1, [string] $ArmShard = 'all', [string] $ArmContains = '', + [string] $ArmExcludes = '', [string] $ResultsDir, [ValidateSet('GET', 'POST')] [string] $Method = 'GET', @@ -101,7 +102,7 @@ if (-not $ResultsDir) { Write-Host '' Write-Host 'RpsLoadProbe โ€” close browsers / heavy apps before a publishable run.' -ForegroundColor Yellow -Write-Host "Mode=$Mode concurrency=$Concurrency warmup=${WarmupSec}s duration=${DurationSec}s repeats=$Repeats arm-shard=$ArmShard$(if ($ArmContains) { " arm-contains=$ArmContains" })" -ForegroundColor Cyan +Write-Host "Mode=$Mode concurrency=$Concurrency warmup=${WarmupSec}s duration=${DurationSec}s repeats=$Repeats arm-shard=$ArmShard$(if ($ArmContains) { " arm-contains=$ArmContains" })$(if ($ArmExcludes) { " arm-excludes=$ArmExcludes" })" -ForegroundColor Cyan Write-Host '' if (-not $SkipBuild) { @@ -166,6 +167,9 @@ $probeArgs = $probePrefix + @( if ($ArmContains) { $probeArgs += @('--arm-contains', $ArmContains) } +if ($ArmExcludes) { + $probeArgs += @('--arm-excludes', $ArmExcludes) +} if ($ResponseBytes -gt 0) { $probeArgs += @('--response-bytes', $ResponseBytes) } diff --git a/tools/RpsLoadProbe/validate-compare-product-gates.ps1 b/tools/RpsLoadProbe/validate-compare-product-gates.ps1 index 831967229..04cebac8c 100644 --- a/tools/RpsLoadProbe/validate-compare-product-gates.ps1 +++ b/tools/RpsLoadProbe/validate-compare-product-gates.ps1 @@ -72,8 +72,15 @@ $mitmPairs = @( ) $failed = $false +# Windows and macOS product legs drop twp-mitm-* (MITM is Linux-only). A CSV with reverse +# rows and no MITM arms is that case, not a partial pair. +$mitmMeasured = @($sustain.Keys | Where-Object { $_ -like 'twp-mitm-*' }).Count -gt 0 Write-Host "MITM gates (Lite >= $MitmLiteGate / Full >= $MitmFullGate x Reverse @ c=64 median; all OS)" -ForegroundColor Cyan +if (-not $mitmMeasured) { + Write-Host "SKIP MITM gates: no twp-mitm-* arms in this CSV" -ForegroundColor DarkYellow +} foreach ($p in $mitmPairs) { + if (-not $mitmMeasured) { continue } foreach ($kind in @('Lite', 'Full')) { $num = $p.$kind $den = $p.Reverse diff --git a/wiki/Performance.md b/wiki/Performance.md index 1de77c5c0..0766d42dd 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -882,19 +882,19 @@ CI cadence, shards, paste scripts, and gate floors for people refreshing these t | Milestone | `compare-terminate` / `compare-matrix` | ~1โ€“2h | | Editions | `compare-editions` | Linux only; one job per wiki row (feature arm + its baseline) | | Pre-wiki smoke | `compare-product-smoke` (Linux, `repeats=1`) | ~30โ€“60 min; required before full product | -| Release / wiki | `compare-product` via [RPS suite](https://github.com/justcoding121/titanium-web-proxy/blob/develop/.github/workflows/rps-suite.yml) | one job per wiki row on Win/Linux/macOS | -| Unary gRPC | `compare-grpc` | Linux only; paste leaves Win/macOS rows when those folders are absent | -| WebSocket dual-TLS | `compare-ws-h1tls` | Linux only | -| WebSocket RFC 8441 | `compare-ws-h2` | Linux only (nginx N/A) | -| Heavier tables | `compare-bodies` on Win/Linux/macOS; `post` / `lossy` / `arch` / `tls-cost` / `compare-saturation` on Linux only | one suite run each, one job per row | +| Release / wiki | `compare-product` reverse via [RPS suite](https://github.com/justcoding121/titanium-web-proxy/blob/develop/.github/workflows/rps-suite.yml) | one job per wiki row on Win/Linux/macOS; MITM arms (`twp-mitm-*`) on Linux only, same job as that row's reverse peers | +| Unary gRPC | `compare-grpc` | one job per row (H2 TLS and h2c) on Win/Linux/macOS | +| WebSocket dual-TLS | `compare-ws-h1tls` | one row, three OS | +| WebSocket RFC 8441 | `compare-ws-h2` | one row, three OS (nginx N/A) | +| Heavier tables | `compare-bodies`, `post`, `lossy`, `arch`, `tls-cost`, `compare-saturation` | one suite run each, one job per row, on Win/Linux/macOS | See [PERF-GATES.md](https://github.com/justcoding121/titanium-web-proxy/blob/develop/tools/RpsLoadProbe/PERF-GATES.md). ### Arm shards (comparison groups) -`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The tables on this page are @ `0386b2aa`. HTTP/3 comparison groups are extra runs on that same SHA: suite prep listed groups before libmsquic was installed, so those rows were missing from the suite matrix. Saturation, editions, and both WebSocket modes on that SHA were one job per OS. `compare-product` and `compare-bodies` still run on Windows, Linux, and macOS. Every other RPS suite mode runs on Linux only. `compare-spot` on pull requests to beta and stable stays on all three OS. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. +`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The tables on this page are @ `0386b2aa`. HTTP/3 comparison groups are extra runs on that same SHA: suite prep listed groups before libmsquic was installed, so those rows were missing from the suite matrix. Saturation, editions, and both WebSocket modes on that SHA were one job per OS. Reverse product rows, bodies, POST, lossy, arch, TLS cost, gRPC, both WebSocket modes, and saturation run on Windows, Linux, and macOS. TWP MITM arms run on Linux only. `compare-editions` (CLI and Plus) runs on Linux only. `compare-spot` on pull requests to beta and stable stays on all three OS. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. -One wiki row = one GHA jobโ€™s Clientร—Origin cell set: TWP + YARP + nginx + HAProxy + Envoy (when the OS can run them) + TWP Lite + Full stay on the **same VM**. Shards split **rows**, not individual proxies โ€” so **TWPรทYARP** and **LiteรทReverse** remain same-job ratios. Do not compare **absolute** RPS across shards (different VMs). +One wiki row = one GHA jobโ€™s Clientร—Origin cell set: TWP + YARP + nginx + HAProxy + Envoy (when the OS can run them) stay on the **same VM**. On Linux that job also runs TWP Lite and Full, so **LiteรทReverse** stays a same-job ratio. Windows and macOS product jobs omit `twp-mitm-*`. Shards split **rows**, not individual proxies โ€” so **TWPรทYARP** remains a same-job ratio. Do not compare **absolute** RPS across shards (different VMs). ### Gate thresholds From 8cf8b77025f4e5955d547fcf665bf016a444a720 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 14:56:43 +0530 Subject: [PATCH 08/24] Add the nginx prior-knowledge h2c check the product smoke probe calls. The suite prep build failed because RampOrchestrator already calls SupportsPriorKnowledgeH2c. --- tools/RpsLoadProbe/NginxHost.cs | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/tools/RpsLoadProbe/NginxHost.cs b/tools/RpsLoadProbe/NginxHost.cs index 8e6daa183..9997976d1 100644 --- a/tools/RpsLoadProbe/NginxHost.cs +++ b/tools/RpsLoadProbe/NginxHost.cs @@ -850,6 +850,16 @@ internal static bool SupportsHttp3Module(string configureOrVersionText) => configureOrVersionText.Contains("http_v3_module", StringComparison.OrdinalIgnoreCase) || configureOrVersionText.Contains("http_quic_module", StringComparison.OrdinalIgnoreCase); + /// + /// True when (or PATH) is nginx 1.25.1+, which can serve + /// prior-knowledge h2c via http2 on without ssl. Ubuntu 24.04's 1.24 cannot. + /// + internal static bool SupportsPriorKnowledgeH2c(string? nginxPath) + { + var exe = ResolveNginxExecutable(nginxPath); + return exe != null && SupportsHttp2OnDirective(ReadVersion(exe)); + } + /// True when the binary supports the http2 on; directive (1.25.1+). internal static bool SupportsHttp2OnDirective(string versionText) { From 5de6fed3c52049a27ff316ecc538de8868d4915f Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:03:33 +0530 Subject: [PATCH 09/24] Publish the Linux cache hit path and the three missing Plus rows. Cold and hit now skip the origin after the first fill. Windows cells stay on the previous run. --- wiki/Performance.md | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/wiki/Performance.md b/wiki/Performance.md index 0766d42dd..b45702d8b 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -422,7 +422,7 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). -Median of **3** repeats @ `0386b2aa`. Source: Actions [37156921654](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156921654). Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is the floor enforced by `validate-edition-gates.ps1`. +Median of **3** repeats. Linux cache rows were re-measured @ `ec396425` (Actions [37191841848](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37191841848)); CORS, circuit breaker, and idempotent retry are the same SHA (Actions [37190976600](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37190976600)). Other edition rows stay @ `0386b2aa`. Windows cells were not re-measured after the terminate-lite cache fix. A keep-alive GET fills the cache on the first response, so the Linux cold-cache sustain is hits after that fill. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. | Arm | Win | Linux | Winรท | Linรท | Gate | |---|---:|---:|---:|---:|---| @@ -430,7 +430,7 @@ Median of **3** repeats @ `0386b2aa`. Source: Actions [37156921654](https://gith | `twp-cli-reverse-http1-tls` vs library TLS | **20,885**
      (147 MiB / 46.5% CPU) | **35,819**
      (203 MiB / 48.7% CPU) | **0.99ร—** | **1.02ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-reverse-http1-route` vs CLI | **26,081**
      (135 MiB / 46.6% CPU) | **47,759**
      (174 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-base-http1` vs CLI | **26,212**
      (136 MiB / 49.8% CPU) | **47,791**
      (174 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-http1` (cold) vs CLI | **21,979**
      (143 MiB / 56.1% CPU) | **40,544**
      (182 MiB / 52.4% CPU) | **0.84ร—** | **0.84ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-http1` (cold) vs CLI | **21,979**
      (143 MiB / 56.1% CPU) | **88,977**
      (169 MiB / 48.9% CPU) | **0.84ร—** | **1.81ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-intercept-http1` vs CLI | **19,785**
      (143 MiB / 56.1% CPU) | **35,573**
      (183 MiB / 52.1% CPU) | **0.75ร—** | **0.74ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-waf-http1` vs CLI | **25,176**
      (137 MiB / 52.7% CPU) | **46,484**
      (179 MiB / 48.9% CPU) | **0.96ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-cidr-http1` vs CLI | **25,358**
      (138 MiB / 48.7% CPU) | **46,646**
      (178 MiB / 48.9% CPU) | **0.97ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | @@ -439,13 +439,16 @@ Median of **3** repeats @ `0386b2aa`. Source: Actions [37156921654](https://gith | `twp-cli-plus-resilience-http1` vs CLI | **25,850**
      (147 MiB / 47.5% CPU) | **47,710**
      (181 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-discovery-file-http1` vs CLI | **26,007**
      (143 MiB / 50.4% CPU) | **47,630**
      (180 MiB / 48.5% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-metrics-scrape-http1` vs CLI | **26,308**
      (133 MiB / 48.3% CPU) | **48,257**
      (183 MiB / 48.5% CPU) | **1.00ร—** | **1.01ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-hit-http1` vs cache cold | **21,508**
      (139 MiB / 53.1% CPU) | **39,610**
      (181 MiB / 52.1% CPU) | **0.98ร—** | **0.98ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-hit-http1` vs cache cold | **21,508**
      (139 MiB / 53.1% CPU) | **88,261**
      (169 MiB / 49.1% CPU) | **0.98ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cors-http1` vs CLI | *Not measured* | **43,777**
      (170 MiB / 49.1% CPU) | โ€” | **1.00ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-circuit-http1` vs CLI | *Not measured* | **34,515**
      (175 MiB / 50.0% CPU) | โ€” | **0.72ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-retry-http1` vs CLI | *Not measured* | **27,116**
      (177 MiB / 51.5% CPU) | โ€” | **0.82ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-static-http1` vs CLI | **40,478**
      (129 MiB / 51.9% CPU) | **80,449**
      (175 MiB / 50.3% CPU) | **1.54ร—** | **1.68ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-logging-http1` vs CLI | **26,283**
      (132 MiB / 49.0% CPU) | **47,905**
      (175 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-lb-leasttime-http1` vs route | **23,925**
      (146 MiB / 53.5% CPU) | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | **0.92ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-dialect-twp-http1` vs CLI | **26,366**
      (134 MiB / 47.3% CPU) | **47,368**
      (168 MiB / 48.3% CPU) | **1.01ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | -`validate-edition-gates.ps1` **passed** on Windows and Linux for this run (every ratio โ‰ฅ **0.50ร—**). Library baselines @ c=64 (same job): Win H1 **25,970** / TLS **21,167**; Linux H1 **45,968** / TLS **35,115**. The macOS job lost the hosted runner before the ramp finished, so this table stays Windows and Linux. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). +`validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Windows cells were not re-measured after the terminate-lite cache fix; CORS, circuit breaker, and idempotent retry have no Windows cell from this run. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). ## Heavier reverse workloads From 10e3850674dc600a82e9049d64dea264a9b15c9c Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:09:03 +0530 Subject: [PATCH 10/24] Publish the Linux Plus re-measure after the terminate-lite cache fix. Cold cache is no longer slower than the CLI baseline. Windows cells stay at 0386b2aa, and CORS, circuit breaker, and retry are Linux-only in this run. --- tools/RpsLoadProbe/paste-editions-wiki.py | 2 +- wiki/Performance.md | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/tools/RpsLoadProbe/paste-editions-wiki.py b/tools/RpsLoadProbe/paste-editions-wiki.py index 72ee9c175..33d0be752 100644 --- a/tools/RpsLoadProbe/paste-editions-wiki.py +++ b/tools/RpsLoadProbe/paste-editions-wiki.py @@ -152,7 +152,7 @@ def main() -> None: ) block2, n = re.subn( - r"Median of \*\*3\*\* repeats @ `[^`]+`\. Source: Actions \[[0-9]+\]\([^)]+\)\.[^\n]*", + r"Median of \*\*3\*\* repeats[^\n]*", header, block, count=1, diff --git a/wiki/Performance.md b/wiki/Performance.md index b45702d8b..1a067c9fc 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -422,7 +422,7 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). -Median of **3** repeats. Linux cache rows were re-measured @ `ec396425` (Actions [37191841848](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37191841848)); CORS, circuit breaker, and idempotent retry are the same SHA (Actions [37190976600](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37190976600)). Other edition rows stay @ `0386b2aa`. Windows cells were not re-measured after the terminate-lite cache fix. A keep-alive GET fills the cache on the first response, so the Linux cold-cache sustain is hits after that fill. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. +Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` (Actions [37192183576](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37192183576)). Other edition rows stay @ `0386b2aa`. Windows cells were not re-measured after the terminate-lite cache fix. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. | Arm | Win | Linux | Winรท | Linรท | Gate | |---|---:|---:|---:|---:|---| @@ -430,7 +430,7 @@ Median of **3** repeats. Linux cache rows were re-measured @ `ec396425` (Actions | `twp-cli-reverse-http1-tls` vs library TLS | **20,885**
      (147 MiB / 46.5% CPU) | **35,819**
      (203 MiB / 48.7% CPU) | **0.99ร—** | **1.02ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-reverse-http1-route` vs CLI | **26,081**
      (135 MiB / 46.6% CPU) | **47,759**
      (174 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-base-http1` vs CLI | **26,212**
      (136 MiB / 49.8% CPU) | **47,791**
      (174 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-http1` (cold) vs CLI | **21,979**
      (143 MiB / 56.1% CPU) | **88,977**
      (169 MiB / 48.9% CPU) | **0.84ร—** | **1.81ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-http1` (cold) vs CLI | **21,979**
      (143 MiB / 56.1% CPU) | **122,554**
      (169 MiB / 48.0% CPU) | **0.84ร—** | **1.80ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-intercept-http1` vs CLI | **19,785**
      (143 MiB / 56.1% CPU) | **35,573**
      (183 MiB / 52.1% CPU) | **0.75ร—** | **0.74ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-waf-http1` vs CLI | **25,176**
      (137 MiB / 52.7% CPU) | **46,484**
      (179 MiB / 48.9% CPU) | **0.96ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-cidr-http1` vs CLI | **25,358**
      (138 MiB / 48.7% CPU) | **46,646**
      (178 MiB / 48.9% CPU) | **0.97ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | @@ -439,10 +439,10 @@ Median of **3** repeats. Linux cache rows were re-measured @ `ec396425` (Actions | `twp-cli-plus-resilience-http1` vs CLI | **25,850**
      (147 MiB / 47.5% CPU) | **47,710**
      (181 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-discovery-file-http1` vs CLI | **26,007**
      (143 MiB / 50.4% CPU) | **47,630**
      (180 MiB / 48.5% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-plus-metrics-scrape-http1` vs CLI | **26,308**
      (133 MiB / 48.3% CPU) | **48,257**
      (183 MiB / 48.5% CPU) | **1.00ร—** | **1.01ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-hit-http1` vs cache cold | **21,508**
      (139 MiB / 53.1% CPU) | **88,261**
      (169 MiB / 49.1% CPU) | **0.98ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cors-http1` vs CLI | *Not measured* | **43,777**
      (170 MiB / 49.1% CPU) | โ€” | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-circuit-http1` vs CLI | *Not measured* | **34,515**
      (175 MiB / 50.0% CPU) | โ€” | **0.72ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-retry-http1` vs CLI | *Not measured* | **27,116**
      (177 MiB / 51.5% CPU) | โ€” | **0.82ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-hit-http1` vs cache cold | **21,508**
      (139 MiB / 53.1% CPU) | **120,058**
      (169 MiB / 47.3% CPU) | **0.98ร—** | **0.98ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cors-http1` vs CLI | *Not measured* | **31,203**
      (169 MiB / 51.0% CPU) | โ€” | **0.92ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-circuit-http1` vs CLI | *Not measured* | **45,001**
      (243 MiB / 50.3% CPU) | โ€” | **0.86ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-retry-http1` vs CLI | *Not measured* | **30,430**
      (177 MiB / 50.2% CPU) | โ€” | **0.81ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-static-http1` vs CLI | **40,478**
      (129 MiB / 51.9% CPU) | **80,449**
      (175 MiB / 50.3% CPU) | **1.54ร—** | **1.68ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-logging-http1` vs CLI | **26,283**
      (132 MiB / 49.0% CPU) | **47,905**
      (175 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-lb-leasttime-http1` vs route | **23,925**
      (146 MiB / 53.5% CPU) | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | **0.92ร—** | โ‰ฅ **0.50ร—** | From 78af6173b4330771443ff570e3b682c12e0f583d Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:32:18 +0530 Subject: [PATCH 11/24] Drop the Windows and macOS MITM tables now that those arms are Linux-only. The next product paste keeps the Linux MITM section and does not write the other two back. --- tools/RpsLoadProbe/apply-wiki-paste.ps1 | 42 +++------- .../paste-compare-product-wiki.ps1 | 5 ++ wiki/Performance.md | 76 +------------------ 3 files changed, 16 insertions(+), 107 deletions(-) diff --git a/tools/RpsLoadProbe/apply-wiki-paste.ps1 b/tools/RpsLoadProbe/apply-wiki-paste.ps1 index 41ffe0c55..617ede3a9 100644 --- a/tools/RpsLoadProbe/apply-wiki-paste.ps1 +++ b/tools/RpsLoadProbe/apply-wiki-paste.ps1 @@ -89,7 +89,7 @@ $wiki = [regex]::Replace($wiki, $productHdrPattern, { # Allow optional intro lines between section heading and ### Reverse (Windows has a Client/Origin blurb). $wiki = [regex]::Replace($wiki, - "(?ms)(^## Windows .+? Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?\n(?:.*?\r?\n)*?### Reverse\r?\n\r?\n).*?(?=\r?\n### MITM)", + "(?ms)(^## Windows .+? Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?\n(?:.*?\r?\n)*?### Reverse\r?\n\r?\n).*?(?=\r?\n## Linux)", [System.Text.RegularExpressions.MatchEvaluator]{ param($m) $loadGen = "**Load generators:** Reverse inbound H3 arms use **``dotnet-httpclient``** (``http_version=3.0``, ``RequestVersionExact``). nginx/Windows is same-OS only (no QUIC). HAProxy/Envoy are Linux-only terminate peers." @@ -97,13 +97,9 @@ $wiki = [regex]::Replace($wiki, }, 1) -if ($winMitm -ne 'KEEP') { -$wiki = [regex]::Replace($wiki, - '(?s)(### MITM \(TWP only\)\r?\n\r?\n).*?(?=\r?\n## Linux)', - [System.Text.RegularExpressions.MatchEvaluator]{ - param($m) $m.Groups[1].Value + $mitmNote + "`n`n" + $winMitm + "`n" - }, - 1) +# Published MITM is Linux only. A Windows reverse paste stops at ## Linux, which drops any MITM subsection. +if ($winMitm -and $winMitm -ne 'DROP' -and $winMitm -ne 'KEEP') { + Write-Host 'WIN_MITM ignored: MITM tables are Linux only' } $wiki = [regex]::Replace($wiki, @@ -128,7 +124,7 @@ $tail = [regex]::Replace($tail, 1) } -$macBlockLines = @( +$macBlock = @( $macHdrNew '' '### Reverse' @@ -137,41 +133,21 @@ $macBlockLines = @( '' $macRev '' -) -if ($macMitm -ne 'KEEP') { - $macBlockLines += @( - '### MITM (TWP only)' - '' - $mitmNote - '' - $macMitm - '' - ) -} -$macBlock = $macBlockLines -join "`n" +) -join "`n" $macHdrMatch = [regex]::Match($tail, '(?m)^## macOS .+ Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?$') if ($macHdrMatch.Success) { $tail = [regex]::Replace($tail, - "(?ms)(^## macOS .+? Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?\n(?:.*?\r?\n)*?### Reverse\r?\n\r?\n).*?(?=\r?\n### MITM)", + "(?ms)(^## macOS .+? Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?\n(?:.*?\r?\n)*?### Reverse\r?\n\r?\n).*?$afterMacLookahead", [System.Text.RegularExpressions.MatchEvaluator]{ param($m) $m.Groups[1].Value + $macRevHeader + "`n`n" + $macRev + "`n" }, 1) $macHdrMatch2 = [regex]::Match($tail, '(?m)^## macOS .+ Titanium vs nginx(?: vs HAProxy vs Envoy)? vs YARP\r?$') if (-not $macHdrMatch2.Success) { throw "Missing wiki heading: macOS product section after reverse paste" } - $macIdx = $macHdrMatch2.Index - $macHead = $tail.Substring(0, $macIdx) - $macTail = $tail.Substring($macIdx) - if ($macMitm -ne 'KEEP') { - $macTail = [regex]::Replace($macTail, - "(?s)(### MITM \(TWP only\)\r?\n\r?\n).*?$afterMacLookahead", - [System.Text.RegularExpressions.MatchEvaluator]{ - param($m) $m.Groups[1].Value + $mitmNote + "`n`n" + $macMitm + "`n" - }, - 1) + if ($macMitm -and $macMitm -ne 'DROP' -and $macMitm -ne 'KEEP') { + Write-Host 'MAC_MITM ignored: MITM tables are Linux only' } - $tail = $macHead + $macTail } else { # Insert macOS after Linux product tables and before Editions / Heavier. diff --git a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 index 74dd6444a..9b855b688 100644 --- a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 +++ b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 @@ -312,6 +312,11 @@ function Emit-SinkRedirect { } function Emit-MitmOrKeep([string]$OsFolder) { + # Published MITM is Linux only. Windows and macOS product jobs never run twp-mitm-*. + if ($OsFolder -ne 'ubuntu-latest') { + Write-Output 'DROP' + return + } $names = Get-OsArmNames $OsFolder $hasReverse = @($names | Where-Object { $_ -like 'twp-reverse-*' -or $_ -like 'yarp-reverse-*' }).Count -gt 0 $hasMitm = @($names | Where-Object { $_.StartsWith('twp-mitm-') }).Count -gt 0 diff --git a/wiki/Performance.md b/wiki/Performance.md index 1a067c9fc..4c25fe0bf 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -10,7 +10,7 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - Every reverse arm is three OS processes: load generator + origin + proxy. Origin-direct omits the proxy; peers are never in-process with the client. - Same runner class per table (`windows-latest` / `ubuntu-latest` / `macos-15`). Laptop numbers are never mixed into these tables. - Peers use equivalent TLS/ALPN and streaming-friendly settings on the same loopback shape. HAProxy and Envoy are Linux/macOS only โ€” *Not possible* on Windows, so their columns are omitted there. -- MITM (HTTPS decryption with forged certificates) is Titanium-only; peers cannot MITM. Those tables show Titanium MITM overhead versus its own reverse path on the same wires. +- MITM (HTTPS decryption with forged certificates) is Titanium-only; peers cannot MITM. The published MITM table is Linux only. It shows Titanium MITM overhead versus its own reverse path on the same wires. - **Tiny keep-alive GET** (~56-byte JSON) is the industry RPS shape (same class as wrk / TechEmpower). It is also real for small JSON APIs and health checks. - **Same-protocol H2โ†”H2 / H3โ†”H3** on that shape is Titaniumโ€™s **best case**: with interception off, Titanium copies frames instead of decoding and re-encoding headers (peers do a full HTTP decode). Medals there are not the typical reverse-proxy job. - **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#heavier-reverse-workloads) (@ `0386b2aa`). @@ -19,7 +19,7 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - Bold RPS is **sustain** (last concurrency that still met error/latency SLOs). When peak differs, it appears in the same cell as `(peak N ยท โ€ฆ)` with RSS/CPU. When sustain equals peak, peak is omitted. - ๐Ÿฅ‡ = best among OS-possible peers on that row (highest sustain RPS; on a tie, lower memory then lower CPU%). On tiny Reverse that is Titanium / nginx / YARP (plus HAProxy / Envoy on Linux/macOS). The same rule applies to heavier reverse, architecture-sensitive, TLS-cost, gRPC, and WebSocket peer tables. Gold on tiny GET is that frame-copy best case, not โ€œTitanium is 1.7ร— on all reverse.โ€ For larger-body H2โ†’H2, see the [heavier tables](#heavier-reverse-workloads). -- **MITM** tables are Titanium-only (no peer medal). **LiteรทReverse** / **FullรทReverse** = Titanium MITM sustain รท Titanium reverse sustain on the same Clientร—Origin pair โ€” the overhead of decrypting and intercepting versus bare reverse, not versus nginx or YARP. +- **MITM** is published on Linux only (Titanium-only, no peer medal). **LiteรทReverse** / **FullรทReverse** = Titanium MITM sustain รท Titanium reverse sustain on the same Clientร—Origin pair โ€” the overhead of decrypting and intercepting versus bare reverse, not versus nginx or YARP. - *Not possible* = cannot do that path. *Not measured* = path exists but no published number yet. When every row would be *Not possible* for a peer, that column is omitted and a note above the table explains why. ## Contents @@ -242,42 +242,6 @@ Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **31,884**
      (131 MiB / 45.7% CPU) | *Not possible (no H2 upstream)* | **21,920**
      (151 MiB / 47.7% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,882**
      (117 MiB / 47.2% CPU) | *Not possible (no H3 upstream)* | **12,348**
      (150 MiB / 49.9% CPU) | -### MITM (TWP only) - -Same Clientร—Origin wires with interception on (`compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205)). **Lite** = no-op handlers (unchanged-lite finish). **Full** = append-only header mutation (harness: one probe header each way; product: generic append-only relay via `MitmCompressedRelayHelper`). nginx/HAProxy/Envoy/YARP cannot MITM. **LiteรทReverse** / **FullรทReverse** vs bare reverse (**same job / comparison-group shard**). Completion gate: Lite โ‰ฅ **0.25ร—** and Full โ‰ฅ **0.25ร—** reverse sustain @ c=64 (median of 3 GHA runs); reverse TWP รท closest peer โ‰ฅ **0.50ร—**. - -**v1 append-only relay (2026-08-27):** Pre-fix H2โ†’H2 FullรทReverse was **0.13โ€“0.16ร—** ([32960766249](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32960766249)). Post-fix @ `df172718`: H2 plainโ†’H2 plain Full **0.77โ€“0.79ร—**, H3โ†’H1 Full **0.91โ€“0.93ร—**, all MITM arms โ‰ฅ **0.70ร—** on median of [33041445371](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33041445371), [33055267086](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055267086), [33055272140](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055272140). - -**v2 drop-only + non-unique append (2026-08-27):** `MitmStaticRebuildHelper` rebuilds static HPACK/QPACK after 1โ€“4 unique header drops; trailing non-unique appends stay on compressed relay. @ `41f4adee`: all MITM arms โ‰ฅ **0.70ร—** on GHA median ([33087088466](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087088466), [33087091622](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087091622), [33105885748](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33105885748) Linux; [33087085235](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087085235), [33087088466](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087088466), [33087091622](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087091622) Windows). H2 plainโ†’H2 plain Full **0.77โ€“0.79ร—** (Win) / **0.78ร—** (Lin). - -| Client | Origin | Lite sustain | Full sustain | LiteรทReverse | FullรทReverse | -|---|---|---:|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | **25,596**
      (79 MiB / 51.2% CPU) | **24,770**
      (77 MiB / 50.7% CPU) | **1ร—** | **0.96ร—** | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | **64,100**
      (91 MiB / 48.2% CPU) | **62,483**
      (91 MiB / 48.5% CPU) | **1.01ร—** | **0.99ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท plain | **36,209**
      (106 MiB / 46.9% CPU) | **35,681**
      (105 MiB / 45.4% CPU) | **0.97ร—** | **0.96ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | **38,208**
      (118 MiB / 48.4% CPU) | **37,384**
      (112 MiB / 47.8% CPU) | **0.99ร—** | **0.96ร—** | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **29,048**
      (125 MiB / 52.1% CPU) | **28,872**
      (124 MiB / 48.6% CPU) | **0.96ร—** | **0.96ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **20,594**
      (88 MiB / 48.4% CPU) | **20,274**
      (91 MiB / 48.8% CPU) | **0.98ร—** | **0.97ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **27,913**
      (93 MiB / 48.2% CPU) | **27,461**
      (90 MiB / 47.1% CPU) | **0.98ร—** | **0.97ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | **27,517**
      (112 MiB / 43.8% CPU) | **27,067**
      (109 MiB / 45.5% CPU) | **0.98ร—** | **0.96ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **25,288**
      (129 MiB / 46.3% CPU) | **24,611**
      (120 MiB / 45.8% CPU) | **1.02ร—** | **1ร—** | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | **15,935**
      (113 MiB / 50.6% CPU) | **15,776**
      (116 MiB / 51.1% CPU) | **0.99ร—** | **0.98ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท plain | **35,722**
      (89 MiB / 54.4% CPU) | **35,125**
      (88 MiB / 53.6% CPU) | **0.97ร—** | **0.95ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | **27,212**
      (93 MiB / 48.9% CPU) | **29,793**
      (102 MiB / 54.1% CPU) | **0.86ร—** | **0.94ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท plain | **86,486**
      (68 MiB / 41.6% CPU) | **82,565**
      (65 MiB / 43.3% CPU) | **0.77ร—** | **0.74ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | **73,024**
      (72 MiB / 39% CPU) | **60,496**
      (72 MiB / 32.7% CPU) | **0.82ร—** | **0.68ร—** | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | **44,714**
      (138 MiB / 51.8% CPU) | **43,393**
      (142 MiB / 53.7% CPU) | **0.99ร—** | **0.96ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | **34,283**
      (98 MiB / 54.4% CPU) | **33,345**
      (101 MiB / 53.7% CPU) | **0.98ร—** | **0.95ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **42,583**
      (105 MiB / 50.4% CPU) | **44,500**
      (105 MiB / 52.2% CPU) | **0.93ร—** | **0.98ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **86,893**
      (87 MiB / 41% CPU) | **82,646**
      (84 MiB / 40.1% CPU) | **0.82ร—** | **0.78ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **95,422**
      (80 MiB / 38.6% CPU) | **91,256**
      (86 MiB / 39.3% CPU) | **0.86ร—** | **0.82ร—** | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **42,970**
      (137 MiB / 53.7% CPU) | **40,850**
      (146 MiB / 50.5% CPU) | **0.98ร—** | **0.94ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **14,677**
      (110 MiB / 46.1% CPU) | **13,733**
      (111 MiB / 45% CPU) | **0.96ร—** | **0.9ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **12,654**
      (114 MiB / 46.6% CPU) | **11,528**
      (115 MiB / 46.4% CPU) | **0.93ร—** | **0.85ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **34,184**
      (130 MiB / 48.5% CPU) | **31,041**
      (124 MiB / 44.8% CPU) | **0.97ร—** | **0.88ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **31,178**
      (136 MiB / 47.7% CPU) | **30,002**
      (136 MiB / 47.4% CPU) | **0.98ร—** | **0.94ร—** | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **15,983**
      (119 MiB / 49.3% CPU) | **15,523**
      (114 MiB / 48.4% CPU) | **0.95ร—** | **0.92ร—** | - ## Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse @@ -382,42 +346,6 @@ Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare re | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **28,390**
      (146 MiB / 24.8% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **34,002**
      (102 MiB / 20.4% CPU) | **11,891**
      (125 MiB / 28.3% CPU) | **26,452**
      (232 MiB / 28% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **4,442**
      (138 MiB / 9% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,144**
      (124 MiB / 38.2% CPU) | ๐Ÿฅ‡ **23,628**
      (226 MiB / 44.2% CPU) | -### MITM (TWP only) - -Same Clientร—Origin wires with interception on (`compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205)). **Lite** = no-op handlers (unchanged-lite finish). **Full** = append-only header mutation (harness: one probe header each way; product: generic append-only relay via `MitmCompressedRelayHelper`). nginx/HAProxy/Envoy/YARP cannot MITM. **LiteรทReverse** / **FullรทReverse** vs bare reverse (**same job / comparison-group shard**). Completion gate: Lite โ‰ฅ **0.25ร—** and Full โ‰ฅ **0.25ร—** reverse sustain @ c=64 (median of 3 GHA runs); reverse TWP รท closest peer โ‰ฅ **0.50ร—**. - -**v1 append-only relay (2026-08-27):** Pre-fix H2โ†’H2 FullรทReverse was **0.13โ€“0.16ร—** ([32960766249](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32960766249)). Post-fix @ `df172718`: H2 plainโ†’H2 plain Full **0.77โ€“0.79ร—**, H3โ†’H1 Full **0.91โ€“0.93ร—**, all MITM arms โ‰ฅ **0.70ร—** on median of [33041445371](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33041445371), [33055267086](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055267086), [33055272140](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055272140). - -**v2 drop-only + non-unique append (2026-08-27):** `MitmStaticRebuildHelper` rebuilds static HPACK/QPACK after 1โ€“4 unique header drops; trailing non-unique appends stay on compressed relay. @ `41f4adee`: all MITM arms โ‰ฅ **0.70ร—** on GHA median ([33087088466](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087088466), [33087091622](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087091622), [33105885748](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33105885748) Linux; [33087085235](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087085235), [33087088466](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087088466), [33087091622](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33087091622) Windows). H2 plainโ†’H2 plain Full **0.77โ€“0.79ร—** (Win) / **0.78ร—** (Lin). - -| Client | Origin | Lite sustain | Full sustain | LiteรทReverse | FullรทReverse | -|---|---|---:|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | **7,576**
      (114 MiB / 14.9% CPU) | **9,645**
      (115 MiB / 16.8% CPU) | **0.67ร—** | **0.85ร—** | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | **24,309**
      (128 MiB / 35.4% CPU) | **27,202**
      (131 MiB / 37.7% CPU) | **1.22ร—** | **1.36ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท plain | **14,974**
      (124 MiB / 19.1% CPU) | **17,313**
      (126 MiB / 21.7% CPU) | **0.7ร—** | **0.8ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | **34,172**
      (159 MiB / 39.3% CPU) | **31,029**
      (164 MiB / 38.3% CPU) | **1.98ร—** | **1.8ร—** | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **12,590**
      (132 MiB / 25.2% CPU) | **11,926**
      (130 MiB / 20.1% CPU) | **1.58ร—** | **1.49ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **20,534**
      (131 MiB / 26.5% CPU) | **15,946**
      (129 MiB / 22.1% CPU) | **2.56ร—** | **1.99ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **11,892**
      (153 MiB / 21.9% CPU) | **17,346**
      (153 MiB / 26.1% CPU) | **0.99ร—** | **1.44ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | **35,283**
      (155 MiB / 40.2% CPU) | **31,431**
      (140 MiB / 42.3% CPU) | **1.06ร—** | **0.95ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **14,403**
      (194 MiB / 20.9% CPU) | **12,129**
      (183 MiB / 20.9% CPU) | **1.26ร—** | **1.06ร—** | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | **10,352**
      (163 MiB / 35% CPU) | **14,285**
      (168 MiB / 45.1% CPU) | **1.62ร—** | **2.23ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท plain | **15,612**
      (125 MiB / 19.1% CPU) | **21,319**
      (131 MiB / 23% CPU) | **0.79ร—** | **1.07ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | **34,941**
      (135 MiB / 28.7% CPU) | **24,438**
      (133 MiB / 21.6% CPU) | **0.89ร—** | **0.63ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท plain | **31,292**
      (117 MiB / 8.2% CPU) | **12,801**
      (118 MiB / 4.9% CPU) | **0.81ร—** | **0.33ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | **20,941**
      (122 MiB / 9.6% CPU) | **22,810**
      (122 MiB / 9.8% CPU) | **1.01ร—** | **1.1ร—** | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | **17,307**
      (142 MiB / 27.5% CPU) | **20,389**
      (141 MiB / 28.4% CPU) | **1.58ร—** | **1.86ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | **23,294**
      (129 MiB / 20.6% CPU) | **43,858**
      (134 MiB / 36.2% CPU) | **1.25ร—** | **2.35ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **22,634**
      (136 MiB / 24.4% CPU) | **25,783**
      (138 MiB / 27.3% CPU) | **2.5ร—** | **2.85ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **42,178**
      (131 MiB / 13.2% CPU) | **17,298**
      (129 MiB / 6% CPU) | **0.62ร—** | **0.25ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **62,521**
      (135 MiB / 35.5% CPU) | **64,449**
      (128 MiB / 36.4% CPU) | **0.71ร—** | **0.73ร—** | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **18,866**
      (155 MiB / 24.2% CPU) | **14,641**
      (148 MiB / 24.6% CPU) | **3.44ร—** | **2.67ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **8,665**
      (134 MiB / 26.2% CPU) | **9,121**
      (133 MiB / 23.3% CPU) | **1.03ร—** | **1.09ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **4,672**
      (145 MiB / 13.6% CPU) | **11,598**
      (162 MiB / 44.7% CPU) | **0.36ร—** | **0.9ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **18,806**
      (138 MiB / 22.9% CPU) | **20,631**
      (139 MiB / 23.9% CPU) | **1.19ร—** | **1.3ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **25,202**
      (146 MiB / 29.8% CPU) | **33,495**
      (166 MiB / 48.8% CPU) | **0.89ร—** | **1.18ร—** | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **15,107**
      (147 MiB / 44.2% CPU) | **18,546**
      (143 MiB / 47.7% CPU) | **3.4ร—** | **4.18ร—** | - ## Editions (CLI / Plus / Intercept) **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). From 44e9a41297e867d61e7a45c2fb7cf99eeaa67a48 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:35:38 +0530 Subject: [PATCH 12/24] Drop the Windows columns from the Editions table. MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit compare-editions runs on Linux only, so Win and Winรท were leftover cells from the older three-OS run. --- tools/RpsLoadProbe/paste-editions-wiki.py | 101 ++++++++-------------- wiki/Performance.md | 54 ++++++------ 2 files changed, 62 insertions(+), 93 deletions(-) diff --git a/tools/RpsLoadProbe/paste-editions-wiki.py b/tools/RpsLoadProbe/paste-editions-wiki.py index 33d0be752..169052145 100644 --- a/tools/RpsLoadProbe/paste-editions-wiki.py +++ b/tools/RpsLoadProbe/paste-editions-wiki.py @@ -1,9 +1,8 @@ #!/usr/bin/env python3 """Fill the Editions table from one compare-editions run. -Linux is required. Windows (and any later macOS folder) is applied only when that -OS folder is present; otherwise existing Windows cells stay, and new rows say -they were not measured on Windows. +Editions are Linux-only. The table is Arm, Linux, Linรท, Gate. A partial paste +keeps Linux cells already on the page for rows this run does not re-measure. """ from __future__ import annotations @@ -56,6 +55,19 @@ def ratio(num, den) -> str: return f"**{num['Sustain'] / den['Sustain']:.2f}ร—**" +def linux_cells(existing: str | None) -> tuple[str, str]: + """Linux sustain and Linรท from a current or older Win/Linux editions row.""" + if not existing: + return "*Not measured*", "โ€”" + old = [p.strip() for p in existing.strip().strip("|").split("|")] + # Older pages: label, Win, Linux, Winรท, Linรท, Gate. + if len(old) >= 6: + return old[2], old[4] + if len(old) >= 3: + return old[1], old[2] + return "*Not measured*", "โ€”" + + def pair_from_csv(ph, run: int, os_folder: str, numerator: str, denominator: str): """Metrics for both arms from one CSV. Mixing shard files would divide across VMs.""" run_dir = ph.ROOT / str(run) @@ -88,68 +100,35 @@ def main() -> None: if line.startswith("| `"): existing_rows[line.split("|")[1].strip()] = line - win_here = bool(ph._csv_files_for_os(ph.ROOT / str(args.run), "windows-latest")) lines = [ - "| Arm | Win | Linux | Winรท | Linรท | Gate |", - "|---|---:|---:|---:|---:|---|", + "| Arm | Linux | Linรท | Gate |", + "|---|---:|---:|---|", ] updated = 0 for label, num, den in ROWS: - win_num, win_den = pair_from_csv(ph, args.run, "windows-latest", num, den) lin_num, lin_den = pair_from_csv(ph, args.run, "ubuntu-latest", num, den) - have_win = bool(win_num and win_den) have_lin = bool(lin_num and lin_den) existing = existing_rows.get(label) - if not have_win and not have_lin: - if existing: - lines.append(existing) - else: - lines.append( - f"| {label} | *Not measured* | *Not measured* | โ€” | โ€” | โ‰ฅ **0.50ร—** |" - ) - continue - old = [p.strip() for p in existing.strip().strip("|").split("|")] if existing else [] - if have_win: - win_cell, win_ratio = ph.fmt_cell(win_num), ratio(win_num, win_den) - elif len(old) >= 4: - win_cell, win_ratio = old[1], old[3] - else: - win_cell, win_ratio = "*Not measured*", "โ€”" if have_lin: lin_cell, lin_ratio = ph.fmt_cell(lin_num), ratio(lin_num, lin_den) - elif len(old) >= 5: - lin_cell, lin_ratio = old[2], old[4] + updated += 1 else: - lin_cell, lin_ratio = "*Not measured*", "โ€”" - lines.append( - f"| {label} | {win_cell} | {lin_cell} | {win_ratio} | {lin_ratio} | โ‰ฅ **0.50ร—** |" - ) - updated += 1 + lin_cell, lin_ratio = linux_cells(existing) + lines.append(f"| {label} | {lin_cell} | {lin_ratio} | โ‰ฅ **0.50ร—** |") if updated == 0: raise SystemExit("no edition pair found in a single CSV") table = "\n".join(lines) prior_sha = args.prior_sha - if win_here: - prior = f" Other edition rows stay @ `{prior_sha}`." if prior_sha else "" - header = ( - f"Median of **3** repeats @ `{args.head_sha}`. Source: Actions [{args.run}]" - f"(https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run}).{prior} " - f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " - f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " - f"The Gate column is that script's floor." - ) - else: - stayed = prior_sha or "the previous run" - header = ( - f"Median of **3** repeats. Linux rows in this paste were re-measured @ `{args.head_sha}` " - f"(Actions [{args.run}](https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run})). " - f"Other edition rows stay @ `{stayed}`. " - f"Windows cells were not re-measured after the terminate-lite cache fix. " - f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " - f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " - f"The Gate column is that script's floor." - ) + stayed = prior_sha or "the previous run" + header = ( + f"Median of **3** repeats on `ubuntu-latest`. Linux rows in this paste were re-measured @ `{args.head_sha}` " + f"(Actions [{args.run}](https://github.com/justcoding121/titanium-web-proxy/actions/runs/{args.run})). " + f"Other edition rows stay @ `{stayed}`. " + f"Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. " + f"**RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. " + f"The Gate column is that script's floor." + ) block2, n = re.subn( r"Median of \*\*3\*\* repeats[^\n]*", @@ -160,22 +139,12 @@ def main() -> None: if n != 1: raise SystemExit("editions header not replaced") block2 = ph.replace_table_at(block2, block2.find("| Arm |"), table) - if win_here: - footer = ( - "`validate-edition-gates.ps1` floors are **0.50ร—**. " - "Each รท column uses the two arms from the same job. " - "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " - "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." - ) - else: - footer = ( - "`validate-edition-gates.ps1` floors are **0.50ร—**. " - "Each รท column uses the two arms from the same job. " - "Windows cells were not re-measured after the terminate-lite cache fix; " - "CORS, circuit breaker, and idempotent retry have no Windows cell from this run. " - "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " - "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." - ) + footer = ( + "`validate-edition-gates.ps1` floors are **0.50ร—**. " + "Each รท column uses the two arms from the same job. " + "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " + "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." + ) block2, n = re.subn( r"`validate-edition-gates\.ps1`[^\n]*", footer, diff --git a/wiki/Performance.md b/wiki/Performance.md index 4c25fe0bf..34ca51f67 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -350,33 +350,33 @@ Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare re **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). -Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` (Actions [37192183576](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37192183576)). Other edition rows stay @ `0386b2aa`. Windows cells were not re-measured after the terminate-lite cache fix. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. - -| Arm | Win | Linux | Winรท | Linรท | Gate | -|---|---:|---:|---:|---:|---| -| `twp-cli-reverse-http1` vs library | **26,229**
      (126 MiB / 47.2% CPU) | **48,005**
      (172 MiB / 48.5% CPU) | **1.01ร—** | **1.04ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-reverse-http1-tls` vs library TLS | **20,885**
      (147 MiB / 46.5% CPU) | **35,819**
      (203 MiB / 48.7% CPU) | **0.99ร—** | **1.02ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-reverse-http1-route` vs CLI | **26,081**
      (135 MiB / 46.6% CPU) | **47,759**
      (174 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-base-http1` vs CLI | **26,212**
      (136 MiB / 49.8% CPU) | **47,791**
      (174 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-http1` (cold) vs CLI | **21,979**
      (143 MiB / 56.1% CPU) | **122,554**
      (169 MiB / 48.0% CPU) | **0.84ร—** | **1.80ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-intercept-http1` vs CLI | **19,785**
      (143 MiB / 56.1% CPU) | **35,573**
      (183 MiB / 52.1% CPU) | **0.75ร—** | **0.74ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-waf-http1` vs CLI | **25,176**
      (137 MiB / 52.7% CPU) | **46,484**
      (179 MiB / 48.9% CPU) | **0.96ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cidr-http1` vs CLI | **25,358**
      (138 MiB / 48.7% CPU) | **46,646**
      (178 MiB / 48.9% CPU) | **0.97ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-jwt-http1` vs CLI | **24,452**
      (156 MiB / 49.2% CPU) | **43,613**
      (199 MiB / 48.7% CPU) | **0.93ร—** | **0.91ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-ratelimit-http1` vs CLI | **25,149**
      (135 MiB / 48.0% CPU) | **46,620**
      (177 MiB / 49.1% CPU) | **0.96ร—** | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-resilience-http1` vs CLI | **25,850**
      (147 MiB / 47.5% CPU) | **47,710**
      (181 MiB / 48.4% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-discovery-file-http1` vs CLI | **26,007**
      (143 MiB / 50.4% CPU) | **47,630**
      (180 MiB / 48.5% CPU) | **0.99ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-metrics-scrape-http1` vs CLI | **26,308**
      (133 MiB / 48.3% CPU) | **48,257**
      (183 MiB / 48.5% CPU) | **1.00ร—** | **1.01ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-hit-http1` vs cache cold | **21,508**
      (139 MiB / 53.1% CPU) | **120,058**
      (169 MiB / 47.3% CPU) | **0.98ร—** | **0.98ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cors-http1` vs CLI | *Not measured* | **31,203**
      (169 MiB / 51.0% CPU) | โ€” | **0.92ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-circuit-http1` vs CLI | *Not measured* | **45,001**
      (243 MiB / 50.3% CPU) | โ€” | **0.86ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-retry-http1` vs CLI | *Not measured* | **30,430**
      (177 MiB / 50.2% CPU) | โ€” | **0.81ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-static-http1` vs CLI | **40,478**
      (129 MiB / 51.9% CPU) | **80,449**
      (175 MiB / 50.3% CPU) | **1.54ร—** | **1.68ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-logging-http1` vs CLI | **26,283**
      (132 MiB / 49.0% CPU) | **47,905**
      (175 MiB / 48.5% CPU) | **1.00ร—** | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-lb-leasttime-http1` vs route | **23,925**
      (146 MiB / 53.5% CPU) | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | **0.92ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-dialect-twp-http1` vs CLI | **26,366**
      (134 MiB / 47.3% CPU) | **47,368**
      (168 MiB / 48.3% CPU) | **1.01ร—** | **0.99ร—** | โ‰ฅ **0.50ร—** | - -`validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Windows cells were not re-measured after the terminate-lite cache fix; CORS, circuit breaker, and idempotent retry have no Windows cell from this run. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). +Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` (Actions [37192183576](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37192183576)). Other edition rows stay @ `0386b2aa`. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. + +| Arm | Linux | Linรท | Gate | +|---|---:|---:|---| +| `twp-cli-reverse-http1` vs library | **48,005**
      (172 MiB / 48.5% CPU) | **1.04ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-reverse-http1-tls` vs library TLS | **35,819**
      (203 MiB / 48.7% CPU) | **1.02ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-reverse-http1-route` vs CLI | **47,759**
      (174 MiB / 48.4% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-base-http1` vs CLI | **47,791**
      (174 MiB / 48.5% CPU) | **1.00ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-http1` (cold) vs CLI | **122,554**
      (169 MiB / 48.0% CPU) | **1.80ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-intercept-http1` vs CLI | **35,573**
      (183 MiB / 52.1% CPU) | **0.74ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-waf-http1` vs CLI | **46,484**
      (179 MiB / 48.9% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cidr-http1` vs CLI | **46,646**
      (178 MiB / 48.9% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-jwt-http1` vs CLI | **43,613**
      (199 MiB / 48.7% CPU) | **0.91ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-ratelimit-http1` vs CLI | **46,620**
      (177 MiB / 49.1% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-resilience-http1` vs CLI | **47,710**
      (181 MiB / 48.4% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-discovery-file-http1` vs CLI | **47,630**
      (180 MiB / 48.5% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-metrics-scrape-http1` vs CLI | **48,257**
      (183 MiB / 48.5% CPU) | **1.01ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-hit-http1` vs cache cold | **120,058**
      (169 MiB / 47.3% CPU) | **0.98ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cors-http1` vs CLI | **31,203**
      (169 MiB / 51.0% CPU) | **0.92ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-circuit-http1` vs CLI | **45,001**
      (243 MiB / 50.3% CPU) | **0.86ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-retry-http1` vs CLI | **30,430**
      (177 MiB / 50.2% CPU) | **0.81ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-static-http1` vs CLI | **80,449**
      (175 MiB / 50.3% CPU) | **1.68ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-logging-http1` vs CLI | **47,905**
      (175 MiB / 48.5% CPU) | **1.00ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-lb-leasttime-http1` vs route | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-dialect-twp-http1` vs CLI | **47,368**
      (168 MiB / 48.3% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | + +`validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). ## Heavier reverse workloads From a40f92ba05c8c4ca881e1685cb171c79faf87707 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:43:20 +0530 Subject: [PATCH 13/24] Point the Performance contents links at real heading anchors. GitHub only auto-ids headings as user-content-*, so the index hashes never matched, and the Windows entry still used the old title. --- wiki/Performance.md | 40 +++++++++++++++++++++++++++++++++++++++- 1 file changed, 39 insertions(+), 1 deletion(-) diff --git a/wiki/Performance.md b/wiki/Performance.md index 34ca51f67..ae85c10e5 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -4,6 +4,8 @@ Throughput and footprint of **Titanium** as a reverse / edge proxy and as a decr For pooling knobs and certificate first-visit tuning, see [Performance and pooling](Home#performance-and-pooling). Laptop cool A/B tables (not publishable) live on [Performance Local Lab](Performance-Local-Lab). +
      + ## Why this comparison is fair - Same load generator, same origin process, and the same warmup / measure windows (2s / 8s) with the same concurrency ramp (8, 16, 32, 64). @@ -15,6 +17,8 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - **Same-protocol H2โ†”H2 / H3โ†”H3** on that shape is Titaniumโ€™s **best case**: with interception off, Titanium copies frames instead of decoding and re-encoding headers (peers do a full HTTP decode). Medals there are not the typical reverse-proxy job. - **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#heavier-reverse-workloads) (@ `0386b2aa`). + + ## How to read the tables - Bold RPS is **sustain** (last concurrency that still met error/latency SLOs). When peak differs, it appears in the same cell as `(peak N ยท โ€ฆ)` with RSS/CPU. When sustain equals peak, peak is omitted. @@ -31,7 +35,7 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - [Linux (GitHub-hosted `ubuntu-latest`)](#linux-github-hosted-ubuntu-latest) - [macOS (GitHub-hosted `macos-15`, Apple Silicon)](#macos-github-hosted-macos-15-apple-silicon) - [Saturation control](#saturation-control) -- [Windows โ€” Titanium vs nginx vs YARP](#windows--titanium-vs-nginx-vs-yarp) +- [Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#windows--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) - [Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#linux--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) - [macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#macos--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) - [Editions (CLI / Plus / Intercept)](#editions-cli--plus--intercept) @@ -44,12 +48,16 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - [Raising limits on large hosts](#raising-limits-on-large-hosts) - [Maintainer notes](#maintainer-notes) + + ## Measurement environment All three OS use public-repo GitHub-hosted runners: **Windows / Linux** at **4 vCPU / 16 GiB / 14 GB SSD**, **macOS** at **`macos-15` Apple Silicon (M1) 3-core / 7 GB** (pinned, not `macos-latest`). macOS is Apple Silicon because that is what Mac users run today; the runner sizes differ, which is fine because we compare products within an OS. Same harness knobs: warmup 2s / measure 8s; concurrency 8, 16, 32, 64; median of 3 repeats. Prefer TitaniumรทYARP / Titaniumรทnginx ratios over absolute RPS. Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](Performance-Local-Lab). Do not mix those absolutes into the tables below. + + ### Windows (GitHub-hosted `windows-latest`) ||| @@ -64,6 +72,8 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P | YARP | Yarp.ReverseProxy **2.3.0** | | Harness | RpsLoadProbe Release; median of 3 repeats | + + ### Linux (GitHub-hosted `ubuntu-latest`) ||| @@ -78,6 +88,8 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P | YARP | Yarp.ReverseProxy **2.3.0** | | Harness | RpsLoadProbe Release; median of 3 repeats where noted | + + ### macOS (GitHub-hosted `macos-15`, Apple Silicon) ||| @@ -95,6 +107,8 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P Use the pinned `macos-15` label (not `macos-latest`) so the image does not change between runs. + + ### Saturation control Calibration for the shared 4 vCPU loopback shape: how close client + origin are to saturated before ranking reverse peers. Tiny keep-alive GET. Median of **3** repeats @ `0386b2aa` โ€” [37156912437](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156912437). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Block A **% of origin-HttpClient** uses median **peak** RPS. Blocks B/C use peerรทYARP / รทnginx on median peak (not % of H1 origin). **RPS cells** embed median RSS / CPU for the **proxy child** plus its **full descendant tree** (serve-proxy โ†’ nginx master โ†’ workers); origin-direct samples the **origin** child. Product matrices below use matched `dotnet-httpclient` only (not bombardier). @@ -204,6 +218,8 @@ Medals are nginx / YARP / Titanium only, from the same run as Blocks A and B ([3 | yarp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **21,658**
      (229 MiB / 44.6% CPU) | **1.00ร—** | **0.80ร—** | | twp-reverse-http3-cleartext | dotnet-httpclient | **18,385**
      (140 MiB / 44.6% CPU) | **0.85ร—** | **0.68ร—** | + + ## Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP Client / origin: HTTP version and whether TLS is used (`plain` = cleartext, `TLS` = encrypted, `QUIC` = HTTP/3). @@ -242,6 +258,8 @@ Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **31,884**
      (131 MiB / 45.7% CPU) | *Not possible (no H2 upstream)* | **21,920**
      (151 MiB / 47.7% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,882**
      (117 MiB / 47.2% CPU) | *Not possible (no H3 upstream)* | **12,348**
      (150 MiB / 49.9% CPU) | + + ## Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse @@ -312,6 +330,8 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **24,698**
      (153 MiB / 51.1% CPU) | **24,065**
      (152 MiB / 50.3% CPU) | **0.98ร—** | **0.95ร—** | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **37,404**
      (201 MiB / 52.5% CPU) | **38,997**
      (206 MiB / 53.1% CPU) | **0.89ร—** | **0.92ร—** | + + ## macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse @@ -346,6 +366,8 @@ Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare re | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **28,390**
      (146 MiB / 24.8% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **34,002**
      (102 MiB / 20.4% CPU) | **11,891**
      (125 MiB / 28.3% CPU) | **26,452**
      (232 MiB / 28% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **4,442**
      (138 MiB / 9% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,144**
      (124 MiB / 38.2% CPU) | ๐Ÿฅ‡ **23,628**
      (226 MiB / 44.2% CPU) | + + ## Editions (CLI / Plus / Intercept) **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). @@ -378,6 +400,8 @@ Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` `validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). + + ## Heavier reverse workloads Same runners and harness as the tiny-GET tables, but with larger bodies, POST, lossy links, TLS cost, and architecture-sensitive paths (slow consumer / early response / duplex). **PUT with the same body is the same proxy work as POST; DELETE with no body matches GET** โ€” only POST is published. Bodies/POST/lossy stay **half-duplex**. Laptop numbers are on [Performance Local Lab](Performance-Local-Lab#architecture-sensitive). How maintainers refresh these tables (modes, shards, paste scripts) is under [Maintainer notes](#maintainer-notes). **Larger-body check:** 64 / 256 KiB H2 TLSโ†’H2 TLS is where body copy dominates headers โ€” ratios vs YARP are in the tables below (@ `0386b2aa`), unlike the tiny-GET H2โ†”H2 medals above. @@ -699,6 +723,8 @@ Median of **3** repeats on `macos-15` @ `0386b2aa`. Source: Actions [37139092496 Prefer **TWPรทYARP** in the table. Absolute RPS on GHA swings hard. New-connection is Darwin SslStream-bound for TWP and YARP (handshake p99 SLO **500 ms** on macOS only โ€” Win/Linux stay at **200 ms**). + + ## Unary gRPC (H2 TLS) Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grpc_pass`), HAProxy, and Envoy (OS-possible peers only). Not folded into the architecture-sensitive tables. Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). @@ -709,6 +735,8 @@ Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grp | Linux | ๐Ÿฅ‡ **36,435**
      (116 MiB / 29.4% CPU) | **21,650**
      (162 MiB / 42.4% CPU) | **0**
      (114 MiB / 24.8% CPU) | **6,780**
      (84 MiB / 24.4% CPU) | **11,826**
      (128 MiB / 21.5% CPU) | | macOS | ๐Ÿฅ‡ **23,481**
      (147 MiB / 9.2% CPU) | **13,123**
      (198 MiB / 13.4% CPU) | **0**
      (85 MiB / 2.8% CPU) | **0**
      (104 MiB / 13.3% CPU) | **8,939**
      (120 MiB / 13.4% CPU) | + + ## Unary gRPC (H2 TLS โ†’ h2c) Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 origin). Peers: Titanium, YARP, HAProxy, Envoy. Mode: `compare-grpc` (`*-grpc-h2c`). Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). @@ -721,6 +749,8 @@ Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 orig | Linux | ๐Ÿฅ‡ **43,057**
      (123 MiB / 29.8% CPU) | **24,248**
      (164 MiB / 43.2% CPU) | **7,734**
      (82 MiB / 24.4% CPU) | **12,392**
      (127 MiB / 22.4% CPU) | | macOS | **37,144**
      (158 MiB / 12.6% CPU) | ๐Ÿฅ‡ **50,508**
      (178 MiB / 37.7% CPU) | **24,505**
      (104 MiB / 24.4% CPU) | **30,920**
      (119 MiB / 26.1% CPU) | + + ## WebSocket (H1 TLS โ†’ H1 TLS) WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: `compare-ws-h1tls` (`*-duplex-ws-h1tls`). Median of **3** repeats @ `0386b2aa`. Source: [37156931630](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156931630). @@ -731,6 +761,8 @@ WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: ` | Linux | **24,640**
      (133 MiB / 44.2% CPU) | **22,976**
      (134 MiB / 43.9% CPU) | ๐Ÿฅ‡ **28,478**
      (103 MiB / 37.0% CPU) | **26,978**
      (85 MiB / 39.3% CPU) | **27,918**
      (128 MiB / 38.2% CPU) | | macOS | **28,012**
      (192 MiB / 28.5% CPU) | **32,133**
      (215 MiB / 34.9% CPU) | **35,774**
      (85 MiB / 22.8% CPU) | ๐Ÿฅ‡ **36,420**
      (100 MiB / 33.0% CPU) | **35,325**
      (119 MiB / 29.9% CPU) | + + ## WebSocket (H2 TLS 8441 โ†’ H1) WebSocket echo over **RFC 8441** extended CONNECT (H2 TLS client โ†’ H1 plain origin). Mode: `compare-ws-h2` (`*-duplex-ws-h2`). @@ -745,6 +777,8 @@ The probe client sets `NoDelay` and writes each HTTP/2 frame as one TLS record. | Linux | **47,626**
      (197 MiB / 40.1% CPU) | **0**
      (220 MiB / 42.2% CPU) | ๐Ÿฅ‡ **47,638**
      (85 MiB / 35.0% CPU) | **0**
      (123 MiB / 0.1% CPU) | | macOS | **8,899**
      (238 MiB / 14.0% CPU) | **0**
      (193 MiB / 8.9% CPU) | ๐Ÿฅ‡ **20,337**
      (100 MiB / 21.3% CPU) | **0**
      (115 MiB / 0.2% CPU) | + + ## Other measurements | What | Result | @@ -764,6 +798,8 @@ Local laptop BDN @ `9d7c2966` (Release): | HTTP/1 GET through proxy | Passthrough | **128 ยตs** | **9.9 KB** | | HTTP/2 multiplexed GETs | 10 concurrent streams | **253 ยตs** / batch | **~4.4 KB** / request | + + ## Raising limits on large hosts There is **no artificial upper clamp** on server defaults. Per-endpoint overrides: @@ -801,6 +837,8 @@ ep.BeforeSslAuthenticate += (_, a) => }; ``` + + ## Maintainer notes CI cadence, shards, paste scripts, and gate floors for people refreshing these tables. Consumers can skip this section. From a887d446dc196b63996827e71af78eb13c6d8919 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 15:58:55 +0530 Subject: [PATCH 14/24] Point same-page links at the heading ids GitHub and the website actually render. --- tools/RpsLoadProbe/apply-wiki-paste.ps1 | 2 +- tools/RpsLoadProbe/paste-editions-wiki.py | 2 +- website/docs/performance.md | 6 +- website/index.md | 4 +- wiki/HTTP-3.md | 12 +-- wiki/Home.md | 60 +++++++------- wiki/Migration-from-4.x.md | 52 ++++++------ wiki/Performance-Local-Lab.md | 12 +-- wiki/Performance-Profiling.md | 44 +++++------ wiki/Performance.md | 96 +++++++---------------- wiki/Protocol-Support.md | 6 +- wiki/Security-Considerations.md | 10 +-- wiki/Streaming-Bodies.md | 6 +- wiki/Synthetic-Responses.md | 12 +-- 14 files changed, 143 insertions(+), 181 deletions(-) diff --git a/tools/RpsLoadProbe/apply-wiki-paste.ps1 b/tools/RpsLoadProbe/apply-wiki-paste.ps1 index 617ede3a9..35883bf3b 100644 --- a/tools/RpsLoadProbe/apply-wiki-paste.ps1 +++ b/tools/RpsLoadProbe/apply-wiki-paste.ps1 @@ -52,7 +52,7 @@ $runUrl = "https://github.com/justcoding121/titanium-web-proxy/actions/runs/$Pri $productLine = "- Product refresh: ``compare-product`` @ ``$HeadSha`` $em [$PrimaryRunId]($runUrl). Heavier/saturation/tls:" $wiki = [regex]::Replace($wiki, '- Product refresh:.*', [System.Text.RegularExpressions.MatchEvaluator]{ $productLine }, 1) -$tinyGetNote = "Product 5${mul}5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) $em see [Why this comparison is fair](#why-this-comparison-is-fair)." +$tinyGetNote = "Product 5${mul}5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) $em see [Why this comparison is fair](#user-content-why-this-comparison-is-fair)." $winRevHeader = "Median of **3 repeats** on ``windows-latest`` (4 vCPU / 16 GiB). Bare reverse 5${mul}5 @ ``$HeadSha`` $em ``compare-product`` [$PrimaryRunId]($runUrl). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWP${div}peer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as ``
      (MiB / CPU%)``. nginx terminate peers use ``keepalive 256`` + streaming buffers. **HAProxy / Envoy are Linux-only peers** (no official Windows port). Laptop High-perf / cool-paired numbers stay on the [local lab](Performance-Local-Lab). $tinyGetNote" diff --git a/tools/RpsLoadProbe/paste-editions-wiki.py b/tools/RpsLoadProbe/paste-editions-wiki.py index 169052145..da24fcad5 100644 --- a/tools/RpsLoadProbe/paste-editions-wiki.py +++ b/tools/RpsLoadProbe/paste-editions-wiki.py @@ -143,7 +143,7 @@ def main() -> None: "`validate-edition-gates.ps1` floors are **0.50ร—**. " "Each รท column uses the two arms from the same job. " "Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. " - "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress)." + "Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#user-content-editions-cli--plus-stress)." ) block2, n = re.subn( r"`validate-edition-gates\.ps1`[^\n]*", diff --git a/website/docs/performance.md b/website/docs/performance.md index 738c23748..a23df0325 100644 --- a/website/docs/performance.md +++ b/website/docs/performance.md @@ -6,7 +6,7 @@ Titanium targets low-overhead reverse proxying and HTTPS interception: connectio ## Practical reverse RPS (tiny requests) -Common reverse wires with **tiny keep-alive GET (~56 B)**, plus WebSocket and unary gRPC โ€” one chart per OS. How to read medals and workload shape: [Performance wiki](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#why-this-comparison-is-fair). +Common reverse wires with **tiny keep-alive GET (~56 B)**, plus WebSocket and unary gRPC โ€” one chart per OS. How to read medals and workload shape: [Performance wiki](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#user-content-why-this-comparison-is-fair). ### Windows @@ -38,9 +38,9 @@ Typical reverse wires with **64 KB GET/POST** (plus 256 KB H1 terminate) โ€” bod ## Heavier reverse workloads -Larger bodies, POST, lossy links, TLS termination cost, and architecture-sensitive shapes (slow consumers, duplex, WebSocket H1 Upgrade). Full tables are on the [Performance wiki](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#heavier-reverse-workloads). +Larger bodies, POST, lossy links, TLS termination cost, and architecture-sensitive shapes (slow consumers, duplex, WebSocket H1 Upgrade). Full tables are on the [Performance wiki](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#user-content-heavier-reverse-workloads). -Additional real-world tables (wiki only, not plotted here): [Unary gRPC H2โ†’h2c](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#unary-grpc-h2-tls--h2c), [WebSocket H1 TLSโ†’H1 TLS](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#websocket-h1-tls--h1-tls), [WebSocket RFC 8441](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#websocket-h2-tls-8441--h1). +Additional real-world tables (wiki only, not plotted here): [Unary gRPC H2โ†’h2c](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#user-content-unary-grpc-h2-tls--h2c), [WebSocket H1 TLSโ†’H1 TLS](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#user-content-websocket-h1-tls--h1-tls), [WebSocket RFC 8441](https://github.com/justcoding121/titanium-web-proxy/wiki/Performance#user-content-websocket-h2-tls-8441--h1). ## Full measurements diff --git a/website/index.md b/website/index.md index 2a0481171..104e562d5 100644 --- a/website/index.md +++ b/website/index.md @@ -37,12 +37,12 @@ features:

      Inspect traffic

      Inspector ยท Windows / macOS / Linux

      -

      Desktop debugger for HTTP and HTTPS. Free for personal and education use (PolyForm Noncommercial); commercial use needs a separate license. Download โ†’ Inspector guide.

      +

      Desktop debugger for HTTP and HTTPS. Free for personal and education use (PolyForm Noncommercial); commercial use needs a separate license. Download โ†’ Inspector guide.

      Run a reverse proxy

      CLI ยท MIT

      -

      Standalone proxy for any backend stack. Download CLI โ†’ CLI guide.

      +

      Standalone proxy for any backend stack. Download CLI โ†’ CLI guide.

      Ops add-on

      diff --git a/wiki/HTTP-3.md b/wiki/HTTP-3.md index d113918a1..ee95d365a 100644 --- a/wiki/HTTP-3.md +++ b/wiki/HTTP-3.md @@ -27,7 +27,7 @@ Release zips **bundle MsQuic natives** for: | `linux-musl-x64` / `linux-musl-arm64` | Alpine / musl containers | | `osx-x64` / `osx-arm64` | macOS Intel / Apple Silicon | -Linux/macOS natives sit next to the binary with `$ORIGIN` / `@loader_path` RPATH so `QuicListener.IsSupported` works without a system package. See [CLI/Inspector packaging](#cliinspector-packaging). +Linux/macOS natives sit next to the binary with `$ORIGIN` / `@loader_path` RPATH so `QuicListener.IsSupported` works without a system package. See [CLI/Inspector packaging](#user-content-cliinspector-packaging). ```bash titanium http3-deps status @@ -245,7 +245,7 @@ First-connection adoption also still comes from `Alt-Svc` on the first response. HTTP/3 participates in four of the seven translation pairs (plus native H3โ†”H3). The full clientโ†’origin matrix, including TCP HTTP/1.1 โ†” HTTP/2 translation, is on -[Protocol Support โ€” Protocol bridges](Protocol-Support#protocol-bridges). +[Protocol Support โ€” Protocol bridges](Protocol-Support#user-content-protocol-bridges). HTTP/3-specific limits: @@ -345,9 +345,9 @@ that endpoint receive `Alt-Svc: h3=":PORT"; ma=86400` when the origin did not al ## Limitations - **No explicit (system-proxy) inbound HTTP/3**: see - [Why no explicit HTTP/3 endpoint yet](#why-no-explicit-http3-endpoint-yet) below. + [Why no explicit HTTP/3 endpoint yet](#user-content-why-no-explicit-http3-endpoint-yet) below. Reverse dual-listen and transparent UDP-only cover the supported inbound shapes. -- **QPACK dynamic table is opt-in**: static-table-only mode is the default; see [QPACK](#qpack) above. +- **QPACK dynamic table is opt-in**: static-table-only mode is the default; see [QPACK](#user-content-qpack) above. - **Upstream proxy with QUIC falls back to TCP**: `System.Net.Quic` does not support HTTP CONNECT tunnelling or SOCKS5 UDP ASSOCIATE. When a per-request or global upstream proxy is configured, the QUIC leg gracefully falls back to `ForwardOverTcpAsync` where the proxy rules are honoured on the @@ -355,7 +355,7 @@ that endpoint receive `Alt-Svc: h3=":PORT"; ma=86400` when the origin did not al - **No 0-RTT**: early data is not supported by `System.Net.Quic` in .NET 10. - **No connection migration**: `System.Net.Quic` does not expose migration APIs. - **No server push**: removed from RFC 9114. -- **macOS**: see [macOS](#macos) below. +- **macOS**: see [macOS](#user-content-macos) below. ### Why no explicit HTTP/3 endpoint yet @@ -466,7 +466,7 @@ cached `h3` via Alt-Svc, they will fall back to TCP on the next request cycle. T ## See also -- [Protocol Support](Protocol-Support) โ€” feature matrix for all protocols, including [protocol bridges](Protocol-Support#protocol-bridges). +- [Protocol Support](Protocol-Support) โ€” feature matrix for all protocols, including [protocol bridges](Protocol-Support#user-content-protocol-bridges). - [Home](Home) โ€” general usage and the rest of the public API surface. - RFC 9114 โ€” HTTP/3 - RFC 9204 โ€” QPACK diff --git a/wiki/Home.md b/wiki/Home.md index fc7e80eb1..1ae5ed463 100644 --- a/wiki/Home.md +++ b/wiki/Home.md @@ -21,31 +21,31 @@ Short catalog: [Features](Features) ยท full tables: [website Features](https://t ### Using Titanium - [Features](Features) โ€” product highlights (points at the website) -- [Getting started](#getting-started) -- [Screenshots](#screenshots) +- [Getting started](#user-content-getting-started) +- [Screenshots](#user-content-screenshots) - [Performance](Performance) โ€” measured throughput vs peers - [Security considerations](Security-Considerations) -- [Protocol feature support](Protocol-Support) ([bridges](Protocol-Support#protocol-bridges)) +- [Protocol feature support](Protocol-Support) ([bridges](Protocol-Support#user-content-protocol-bridges)) - [Migrating from 4.x](Migration-from-4.x) ### Library API (.NET) -- [Endpoints](#endpoints) -- [Decrypting HTTPS](#decrypting-https) -- [Intercepting requests and responses](#intercepting-requests-and-responses) -- [Modifying bodies](#modifying-bodies) -- [Custom and redirected responses](#custom-and-redirected-responses) -- [Streaming bodies](#streaming-bodies) -- [HTTP/2](#http2) -- [HTTP/3](#http3) -- [Tunnel (CONNECT) interception](#tunnel-connect-interception) -- [Upstream proxies](#upstream-proxies) -- [Authentication](#authentication) -- [Performance and pooling](#performance-and-pooling) -- [Logging and diagnostics](#logging-and-diagnostics) -- [Request timing](#request-timing) -- [Supported frameworks](#supported-frameworks) -- [Breaking changes: unified logging and timing](#breaking-changes-unified-logging-and-timing) +- [Endpoints](#user-content-endpoints) +- [Decrypting HTTPS](#user-content-decrypting-https) +- [Intercepting requests and responses](#user-content-intercepting-requests-and-responses) +- [Modifying bodies](#user-content-modifying-bodies) +- [Custom and redirected responses](#user-content-custom-and-redirected-responses) +- [Streaming bodies](#user-content-streaming-bodies) +- [HTTP/2](#user-content-http2) +- [HTTP/3](#user-content-http3) +- [Tunnel (CONNECT) interception](#user-content-tunnel-connect-interception) +- [Upstream proxies](#user-content-upstream-proxies) +- [Authentication](#user-content-authentication) +- [Performance and pooling](#user-content-performance-and-pooling) +- [Logging and diagnostics](#user-content-logging-and-diagnostics) +- [Request timing](#user-content-request-timing) +- [Supported frameworks](#user-content-supported-frameworks) +- [Breaking changes: unified logging and timing](#user-content-breaking-changes-unified-logging-and-timing) ### For contributors @@ -133,7 +133,7 @@ Add one or more endpoints before calling `Start()`: - **`ExplicitProxyEndPoint`** โ€” the client is configured to use the proxy (standard `HTTP_PROXY` / system proxy setup). Supports `CONNECT` tunneling. - **`TransparentProxyEndPoint`** โ€” traffic is redirected to the proxy without the client knowing (e.g. via routing/NAT). Set `GenericCertificateName` for the server name to present. -- **`SocksProxyEndPoint`** โ€” SOCKS4/SOCKS5 endpoint. See [SOCKS endpoint](#socks-endpoint) for protocol handling details. +- **`SocksProxyEndPoint`** โ€” SOCKS4/SOCKS5 endpoint. See [SOCKS endpoint](#user-content-socks-endpoint) for protocol handling details. ```csharp proxyServer.AddEndPoint(new ExplicitProxyEndPoint(IPAddress.Loopback, 8000)); @@ -192,7 +192,7 @@ Useful `CertificateManager` members: - `CertificateEngine` โ€” `BouncyCastle` (default; distinct key per host), `BouncyCastleFast` (faster; **one shared key for all leaves**), or `DefaultWindows` (Windows only; also shared key). - `LeafCertificateKeyAlgorithm` โ€” key algorithm for generated leaf certificates, `Rsa2048` (default) - or `EcdsaP256`. See [first-visit latency](#first-visit-latency-and-the-leaf-key-algorithm). + or `EcdsaP256`. See [first-visit latency](#user-content-first-visit-latency-and-the-leaf-key-algorithm). - `LeafRsaKeyPairBufferSize` โ€” how many RSA-2048 leaf private keys to keep pre-generated (default `8`; `0` disables; max `256`). Process-wide; unused when leaves are ECDSA P-256. @@ -229,7 +229,7 @@ proxyServer.ResourceLimits = ProxyResourceLimits.Default.WithCertificateCacheBou maxCertificateDiskCacheEntries: 50_000); ``` -The `twp.certificates.cached` observable gauge (see [Logging and diagnostics](#logging-and-diagnostics)) +The `twp.certificates.cached` observable gauge (see [Logging and diagnostics](#user-content-logging-and-diagnostics)) reports live in-memory cache occupancy, so you can confirm the bound is holding instead of inferring it indirectly from process working set. @@ -297,7 +297,7 @@ e.Respond(ProxyResults.Redirect("https://safe.example/", HttpStatusCode.MovedPer Legacy shortcuts still work: `e.Ok(html)`, `e.GenericResponse(...)`, `e.Redirect(url)`, and `e.Respond(response)`. -When you supply a response after the server was already contacted, the original server body is drained so the connection can be reused; see [Draining bodies](Streaming-Bodies#draining-bodies). +When you supply a response after the server was already contacted, the original server body is drained so the connection can be reused; see [Draining bodies](Streaming-Bodies#user-content-draining-bodies). See **[Synthetic Responses](Synthetic-Responses)** for the full guide (buffered vs streamed, all factory methods, and migration from legacy APIs). @@ -334,13 +334,13 @@ HTTP/2 the same as over HTTP/1.x โ€” see [Streaming Bodies](Streaming-Bodies). W `EnableRfc8441`. Not supported: HTTP/2 server push and `Upgrade: h2c` (prior-knowledge only). Explicit-proxy inbound h2c is not implemented. See [Protocol Feature Support](Protocol-Support) for the full breakdown, including -[protocol bridges](Protocol-Support#protocol-bridges). +[protocol bridges](Protocol-Support#user-content-protocol-bridges). ## HTTP/3 HTTP/3 support is available as an opt-in feature. See the **[HTTP/3](HTTP-3)** page for setup, **CLI/Inspector packaging** (which RID zip to download, Alpine/K8s musl zips, `http3-deps`), Alt-Svc, -and gaps. See also [Protocol Support โ€” Protocol bridges](Protocol-Support#protocol-bridges) for every +and gaps. See also [Protocol Support โ€” Protocol bridges](Protocol-Support#user-content-protocol-bridges) for every clientโ†’origin direction (including TCP HTTP/1.1 โ†” HTTP/2 translation). Quick start: ```csharp @@ -501,7 +501,7 @@ Honoured by the BouncyCastle engines; the Windows engine always issues RSA. Every exception the proxy catches โ€” even one handled internally and never surfaced to your code โ€” is reported through `ProxyServer.Logging`, a `Microsoft.Extensions.Logging`-based abstraction. This replaced the old `ExceptionFunc` callback; see -[Breaking changes: unified logging and timing](#breaking-changes-unified-logging-and-timing) below if you +[Breaking changes: unified logging and timing](#user-content-breaking-changes-unified-logging-and-timing) below if you are migrating. ```csharp @@ -597,15 +597,15 @@ Current packages target **.NET 10** only. Older product lines also supported .NE ## Breaking changes: unified logging and timing - `ProxyServer.ExceptionFunc` and the `ExceptionHandler` delegate were removed. Use - [`ProxyServer.Logging`](#logging-and-diagnostics) instead โ€” every exception the old callback would have + [`ProxyServer.Logging`](#user-content-logging-and-diagnostics) instead โ€” every exception the old callback would have received is now reported through the logging gateway, classified by severity rather than delivered uniformly to a single callback. - `SessionEventArgsBase.TimeLine` (the free-form `Dictionary` of named milestones) was - removed. Use [`Timing`/`UpstreamConnectionTiming`/`ClientTlsTiming`](#request-timing) instead, which are + removed. Use [`Timing`/`UpstreamConnectionTiming`/`ClientTlsTiming`](#user-content-request-timing) instead, which are strongly typed and only allocated when `EnableRequestTimingCapture` is set. - `ClientConnectionId` / `ServerConnectionId` / `HttpRequestTiming.UpstreamConnectionId` changed from `Guid` to process-wide monotonic `long` counters (unbound server id is `0`, not `Guid.Empty`). See - [Connection IDs are monotonic `long` counters, not `Guid`](Migration-from-4.x#connection-ids-are-monotonic-long-counters-not-guid) + [Connection IDs are monotonic `long` counters, not `Guid`](Migration-from-4.x#user-content-connection-ids-are-monotonic-long-counters-not-guid) in the [migration from 4.x](Migration-from-4.x) guide. ## Migrating from 4.x @@ -621,4 +621,4 @@ cumulative list, each with its rationale and remedy. Wondering whether a specific HTTP/1.x, HTTP/2, or HTTP/3 feature (trailers, interim 1xx responses, HPACK, QPACK, Alt-Svc, server push, protocol translation, ...) is supported? See the **[Protocol Feature Support](Protocol-Support)** page for a full Yes/No/Partial breakdown, including the -[protocol bridge matrix](Protocol-Support#protocol-bridges). +[protocol bridge matrix](Protocol-Support#user-content-protocol-bridges). diff --git a/wiki/Migration-from-4.x.md b/wiki/Migration-from-4.x.md index b07449250..eca5fc303 100644 --- a/wiki/Migration-from-4.x.md +++ b/wiki/Migration-from-4.x.md @@ -6,37 +6,37 @@ is **7.x**. This page is the cumulative guide for anyone still on 4.x: every bre observable-behavior change since then that still matters on today's defaults, with the rationale and the remedy if the new default does not fit your deployment. If you are upgrading from before 4.0, also read -[Breaking changes: unified logging and timing](Home#breaking-changes-unified-logging-and-timing) on +[Breaking changes: unified logging and timing](Home#user-content-breaking-changes-unified-logging-and-timing) on the Home page first. > **Quick triage:** if you just want the pre-5.0 posture back for TLS and the observe/enforce-capable > limits in one step, set `proxyServer.Profile = ProxyProfile.LegacyCompatible;` before `Start()`. It > does not restore every item below (some, like the certificate store relocation and the framing > fixes, are not modes you can dial back), but it covers the two broadest ones โ€” see -> [Policy profiles](#policy-profiles-and-observeenforce-modes-additive) below. +> [Policy profiles](#user-content-policy-profiles-and-observeenforce-modes-additive) below. ## Contents -- [TLS: legacy protocols now require explicit opt-in](#tls-legacy-protocols-now-require-explicit-opt-in) -- [Certificate store relocated to a per-user protected folder](#certificate-store-relocated-to-a-per-user-protected-folder) -- [Ambiguous HTTP/1 framing is now rejected](#ambiguous-http1-framing-is-now-rejected) -- [Cumulative body budgets are now enforced end-to-end](#cumulative-body-budgets-are-now-enforced-end-to-end) -- [WebSocket protocol violations now close the connection](#websocket-protocol-violations-now-close-the-connection) -- [HTTP/2 CONTINUATION and reset abuse budgets](#http2-continuation-and-reset-abuse-budgets) -- [HTTP/3 and QPACK behavior changes (experimental)](#http3-and-qpack-behavior-changes-experimental) -- [`ProxyAuthorizationException.Headers` credentials are redacted](#proxyauthorizationexceptionheaders-credentials-are-redacted) -- [Stacked `Content-Encoding` is now actually decoded](#stacked-content-encoding-is-now-actually-decoded) -- [`HasBody` correctness fix for 204/304/1xx/CONNECT](#hasbody-correctness-fix-for-2043041xxconnect) -- [Oversized/overflowing chunk sizes are now rejected](#oversizedoverflowing-chunk-sizes-are-now-rejected) -- [Chunked HTTP/1.0 requests are now downgraded, not forwarded as-is](#chunked-http10-requests-are-now-downgraded-not-forwarded-as-is) -- [New: client header read deadline (opt-in)](#new-client-header-read-deadline-opt-in) -- [New: global/per-endpoint connection admission limits (opt-in)](#new-globalper-endpoint-connection-admission-limits-opt-in) -- [New: outbound private-network destination blocking (opt-in)](#new-outbound-private-network-destination-blocking-opt-in) -- [New: loopback-only destination blocking (opt-in)](#new-loopback-only-destination-blocking-opt-in) -- [Policy profiles and observe/enforce modes (additive)](#policy-profiles-and-observeenforce-modes-additive) -- [New: Happy Eyeballs (RFC 8305) address racing](#new-happy-eyeballs-rfc-8305-address-racing) -- [Connection IDs are monotonic `long` counters, not `Guid`](#connection-ids-are-monotonic-long-counters-not-guid) -- [Internal-only changes (no action needed)](#internal-only-changes-no-action-needed) +- [TLS: legacy protocols now require explicit opt-in](#user-content-tls-legacy-protocols-now-require-explicit-opt-in) +- [Certificate store relocated to a per-user protected folder](#user-content-certificate-store-relocated-to-a-per-user-protected-folder) +- [Ambiguous HTTP/1 framing is now rejected](#user-content-ambiguous-http1-framing-is-now-rejected) +- [Cumulative body budgets are now enforced end-to-end](#user-content-cumulative-body-budgets-are-now-enforced-end-to-end) +- [WebSocket protocol violations now close the connection](#user-content-websocket-protocol-violations-now-close-the-connection) +- [HTTP/2 CONTINUATION and reset abuse budgets](#user-content-http2-continuation-and-reset-abuse-budgets) +- [HTTP/3 and QPACK behavior changes (experimental)](#user-content-http3-and-qpack-behavior-changes-experimental) +- [`ProxyAuthorizationException.Headers` credentials are redacted](#user-content-proxyauthorizationexceptionheaders-credentials-are-redacted) +- [Stacked `Content-Encoding` is now actually decoded](#user-content-stacked-content-encoding-is-now-actually-decoded) +- [`HasBody` correctness fix for 204/304/1xx/CONNECT](#user-content-hasbody-correctness-fix-for-2043041xxconnect) +- [Oversized/overflowing chunk sizes are now rejected](#user-content-oversizedoverflowing-chunk-sizes-are-now-rejected) +- [Chunked HTTP/1.0 requests are now downgraded, not forwarded as-is](#user-content-chunked-http10-requests-are-now-downgraded-not-forwarded-as-is) +- [New: client header read deadline (opt-in)](#user-content-new-client-header-read-deadline-opt-in) +- [New: global/per-endpoint connection admission limits (opt-in)](#user-content-new-globalper-endpoint-connection-admission-limits-opt-in) +- [New: outbound private-network destination blocking (opt-in)](#user-content-new-outbound-private-network-destination-blocking-opt-in) +- [New: loopback-only destination blocking (opt-in)](#user-content-new-loopback-only-destination-blocking-opt-in) +- [Policy profiles and observe/enforce modes (additive)](#user-content-policy-profiles-and-observeenforce-modes-additive) +- [New: Happy Eyeballs (RFC 8305) address racing](#user-content-new-happy-eyeballs-rfc-8305-address-racing) +- [Connection IDs are monotonic `long` counters, not `Guid`](#user-content-connection-ids-are-monotonic-long-counters-not-guid) +- [Internal-only changes (no action needed)](#user-content-internal-only-changes-no-action-needed) --- @@ -243,14 +243,14 @@ only affect you if you've already opted in: - **QPACK never blocks a stream:** the proxy advertises `SETTINGS_QPACK_BLOCKED_STREAMS = 0` (already the case, but the wiki previously described the opposite โ€” see the corrected - [HTTP/3](HTTP-3#dynamic-table-mode-opt-in) page). A field section whose Required Insert Count is not + [HTTP/3](HTTP-3#user-content-dynamic-table-mode-opt-in) page). A field section whose Required Insert Count is not yet satisfied now immediately raises `QPACK_DECOMPRESSION_FAILED` and aborts the connection, rather than a peer being able to make a request stream wait indefinitely. - **Critical-stream closure is fatal:** an unexpected close of a critical unidirectional stream (e.g. the control stream) now raises `H3_CLOSED_CRITICAL_STREAM` per RFC 9114, instead of being tolerated. - **First control-stream frame must be SETTINGS:** enforced as `H3_MISSING_SETTINGS` otherwise. - **Cumulative body budgets** apply to H3 request/response bodies the same way as H1/H2 (see - [above](#cumulative-body-budgets-are-now-enforced-end-to-end)); a breach maps to + [above](#user-content-cumulative-body-budgets-are-now-enforced-end-to-end)); a breach maps to `Http3ErrorCode.ExcessiveLoad`. - **`BeforeRequest` runs on headers only (like HTTP/1.1 / HTTP/2):** native HTTP/3 previously buffered the entire request body before `BeforeRequest`. Handlers that read `Request.Body` in `BeforeRequest` @@ -359,7 +359,7 @@ to reject the attack pattern. even to an origin that does not support chunked framing (chunked transfer coding requires HTTP/1.1+). **Now:** such a request is fully buffered (subject to the same `MaxBufferedBodyBytes` budget described -[above](#cumulative-body-budgets-are-now-enforced-end-to-end)) and re-framed with `Content-Length` +[above](#user-content-cumulative-body-budgets-are-now-enforced-end-to-end)) and re-framed with `Content-Length` before being forwarded to an HTTP/1.0-only origin. **Why:** forwarding chunked framing to a peer that doesn't support it is itself a framing hazard, not @@ -428,7 +428,7 @@ items above without code changes to individual limits: `DecompressionRatio`, `HeaderLimits`, `AdmissionControl`, `Http2AbuseBudget`) to `PolicyMode.Observe` (record a metric on breach, but don't reject/close) or `PolicyMode.Disabled` (don't even check) โ€” except framing validation, which has no dial and is covered by `AllowAmbiguousFraming` instead (see - [above](#ambiguous-http1-framing-is-now-rejected)). + [above](#user-content-ambiguous-http1-framing-is-now-rejected)). - Typed metrics are published on an `System.Diagnostics.Metrics.Meter` named `ProxyMetrics.MeterName`, so any OpenTelemetry-compatible exporter can observe policy breaches, connection admission/rejection, timeouts, pool outcomes, parser errors, auth rounds, and in-memory certificate cache occupancy diff --git a/wiki/Performance-Local-Lab.md b/wiki/Performance-Local-Lab.md index 1b2e84078..3cb44b657 100644 --- a/wiki/Performance-Local-Lab.md +++ b/wiki/Performance-Local-Lab.md @@ -6,9 +6,9 @@ Playbook (harness, dumps, stage timing, Memory techniques) stays on [Performance ## Contents -- [Local Windows lab (developer laptop)](#local-windows-lab-developer-laptop) -- [Local saturation control (laptop)](#local-saturation-control-laptop) -- [Editions (CLI / Plus stress)](#editions-cli--plus-stress) +- [Local Windows lab (developer laptop)](#user-content-local-windows-lab-developer-laptop) +- [Local saturation control (laptop)](#user-content-local-saturation-control-laptop) +- [Editions (CLI / Plus stress)](#user-content-editions-cli--plus-stress) ## Local Windows lab (developer laptop) @@ -153,7 +153,7 @@ H1 stays usable; H2 collapses under connection stalls (HOL). **H3 is the protoco ### Architecture-sensitive -`compare-arch` (1-repeat; warmup 2s / measure 8s; c=8,16,32,64). Source: `windows-20260822-arch/`. Slow consumer = 256 KiB GET, client reads 16 KiB then sleeps 8 ms. Early response = 64 KiB POST, origin writes after the first 8 KiB. Duplex H2 = overlapping 64 KiB POST on H2 TLSโ†”H2 TLS. WebSocket = echo round-trips/sec on H1 TLSโ†’H1 plain `/ws`. See [TWP vs YARP IO model](Performance-Profiling#twp-vs-yarp-io-model). +`compare-arch` (1-repeat; warmup 2s / measure 8s; c=8,16,32,64). Source: `windows-20260822-arch/`. Slow consumer = 256 KiB GET, client reads 16 KiB then sleeps 8 ms. Early response = 64 KiB POST, origin writes after the first 8 KiB. Duplex H2 = overlapping 64 KiB POST on H2 TLSโ†”H2 TLS. WebSocket = echo round-trips/sec on H1 TLSโ†’H1 plain `/ws`. See [TWP vs YARP IO model](Performance-Profiling#user-content-twp-vs-yarp-io-model). | Scenario | Client | Origin | TWP sustain | TWP peak | nginx sustain | nginx peak | YARP sustain | YARP peak | |---|---|---|---:|---:|---:|---:|---:|---:| @@ -182,7 +182,7 @@ Slow consumer is sleep-bound (~16 ร— 8 ms per 256 KiB); H1/H2 sit in the same ba ### Local saturation control (laptop) -Same shape as [Performance ยง Saturation control](Performance#saturation-control); one OS = this laptop. Fill after cool `compare-saturation` (median of repeats; Memory/CPU at peak-RPS step). +Same shape as [Performance ยง Saturation control](Performance#user-content-saturation-control); one OS = this laptop. Fill after cool `compare-saturation` (median of repeats; Memory/CPU at peak-RPS step). ```powershell pwsh tools/RpsLoadProbe/run-rps.ps1 -Mode compare-saturation @@ -229,7 +229,7 @@ Laptop cool-ish A/B before bag/lite fix (2026-08-23, c=64, 8 s) โ€” superseded b ## Editions (CLI / Plus stress) -Local Win smoke 2026-08-29 (`rps-ramp-20260829-104306.csv`): c=64, warmup 2s / measure 5s, **1** repeat โ€” **not publishable**. Prefer รทCLI ratios. **Superseded for publishable numbers** by GHA [33259699099](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33259699099) after terminate-lite middleware + JWT validate cache โ€” see [Performance โ€” Editions](Performance#editions-cli--plus--intercept) (JWT ~0.93ร—, CIDR/WAF/rate-limit ~0.98ร—, cache ~1.05ร—). Table below is the pre-fix smoke (JWT ~0.51ร—). +Local Win smoke 2026-08-29 (`rps-ramp-20260829-104306.csv`): c=64, warmup 2s / measure 5s, **1** repeat โ€” **not publishable**. Prefer รทCLI ratios. **Superseded for publishable numbers** by GHA [33259699099](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33259699099) after terminate-lite middleware + JWT validate cache โ€” see [Performance โ€” Editions](Performance#user-content-editions-cli--plus--intercept) (JWT ~0.93ร—, CIDR/WAF/rate-limit ~0.98ร—, cache ~1.05ร—). Table below is the pre-fix smoke (JWT ~0.51ร—). | Arm | Sustain RPS | Memory (RSS) | รทCLI | Gate (then) | |---|---:|---:|---:|---:| diff --git a/wiki/Performance-Profiling.md b/wiki/Performance-Profiling.md index eac7ffdb4..d3f60472c 100644 --- a/wiki/Performance-Profiling.md +++ b/wiki/Performance-Profiling.md @@ -4,21 +4,21 @@ How the throughput hotspots behind the numbers on the [Performance](Performance) ## Contents -- [The measurement harness](#the-measurement-harness) -- [Controlling measurement noise](#controlling-measurement-noise) -- [Laptop result tables](#laptop-result-tables) -- [Technique 1: concurrency sweep as a shape test](#technique-1-concurrency-sweep-as-a-shape-test) -- [Memory (RSS) โ€” H2โ†’H1 vs H1 / H3](#memory-rss--h2h1-vs-h1--h3) -- [Technique 2: async dumps โ€” find where requests wait](#technique-2-async-dumps--find-where-requests-wait) -- [Technique 3: per-stage latency decomposition](#technique-3-per-stage-latency-decomposition) -- [Technique 4: CPU sampling](#technique-4-cpu-sampling) -- [Technique 5: reference-source comparison](#technique-5-reference-source-comparison) -- [nginx portable takeaways](#nginx-portable-takeaways) -- [TWP vs YARP IO model](#twp-vs-yarp-io-model) -- [Case studies: symptom โ†’ tool โ†’ root cause โ†’ fix](#case-studies-symptom--tool--root-cause--fix) -- [Linux C# limit ledger](#linux-c-limit-ledger) -- [Guardrails while optimizing](#guardrails-while-optimizing) -- [Checklist](#checklist) +- [The measurement harness](#user-content-the-measurement-harness) +- [Controlling measurement noise](#user-content-controlling-measurement-noise) +- [Laptop result tables](#user-content-laptop-result-tables) +- [Technique 1: concurrency sweep as a shape test](#user-content-technique-1-concurrency-sweep-as-a-shape-test) +- [Memory (RSS) โ€” H2โ†’H1 vs H1 / H3](#user-content-memory-rss--h2h1-vs-h1--h3) +- [Technique 2: async dumps โ€” find where requests wait](#user-content-technique-2-async-dumps--find-where-requests-wait) +- [Technique 3: per-stage latency decomposition](#user-content-technique-3-per-stage-latency-decomposition) +- [Technique 4: CPU sampling](#user-content-technique-4-cpu-sampling) +- [Technique 5: reference-source comparison](#user-content-technique-5-reference-source-comparison) +- [nginx portable takeaways](#user-content-nginx-portable-takeaways) +- [TWP vs YARP IO model](#user-content-twp-vs-yarp-io-model) +- [Case studies: symptom โ†’ tool โ†’ root cause โ†’ fix](#user-content-case-studies-symptom--tool--root-cause--fix) +- [Linux C# limit ledger](#user-content-linux-c-limit-ledger) +- [Guardrails while optimizing](#user-content-guardrails-while-optimizing) +- [Checklist](#user-content-checklist) ## The measurement harness @@ -92,7 +92,7 @@ dotnet-gcdump collect -p **Keep / revert for new lites:** cool-measure Memory + รทYARP RPS; revert the lite if Memory is no better (within noise) **or** RPS regresses. Bag tracker is RPS-neutral retention โ€” keep regardless. -**Residual after bag + lite + `ClientSyntheticStreams`** (GHA `compare-saturation` @ `571b6fba` โ€” [32724323848](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32724323848); same numbers in [Saturation control](Performance#saturation-control) Blocks B/C): +**Residual after bag + lite + `ClientSyntheticStreams`** (GHA `compare-saturation` @ `571b6fba` โ€” [32724323848](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32724323848); same numbers in [Saturation control](Performance#user-content-saturation-control) Blocks B/C): | Arm | OS | TWP RSS | YARP RSS | รทYARP | |---|---|---:|---:|---:| @@ -180,11 +180,11 @@ Dig through nginx `src/http` (proxy + upstream keepalive), `src/event`, and `src | nginx idea | Where | TWP analogue | Now? | |---|---|---|---| | Upstream keepalive cache (`keepalive N` โ†’ `max_cached`) | `ngx_http_upstream_keepalive_module.c` | `MaxCachedConnections` / `MaxCachedConnectionsPerHost` (already have) | **Done** โ€” no further cut | -| `proxy_buffering` on/off (buffer vs non-buffered upstreamโ†’client) | `ngx_http_upstream.c` (`u->buffering`, non-buffered handlers) | Sequential half-duplex session vs duplex pumps (`StreamCopier`-style / WebSocket dual copy / bridge body channels) | **Already shaped** โ€” see [TWP vs YARP IO model](#twp-vs-yarp-io-model); no new toggle | +| `proxy_buffering` on/off (buffer vs non-buffered upstreamโ†’client) | `ngx_http_upstream.c` (`u->buffering`, non-buffered handlers) | Sequential half-duplex session vs duplex pumps (`StreamCopier`-style / WebSocket dual copy / bridge body channels) | **Already shaped** โ€” see [TWP vs YARP IO model](#user-content-twp-vs-yarp-io-model); no new toggle | | Write coalesce + `sendfile` / `writev` chain | `ngx_output_chain.c`, `ngx_writev_chain.c` (โ€œcoalesce the neighbouring bufsโ€) | `Http2FrameWriter` coalesce budget (already have); H1 is already buffered `HttpStream` writes | **Done** for H2; H1 not a syscall-storm residual | | `worker_processes` + `accept_mutex` | `nginx.c` / `ngx_event_accept.c` | N/A โ€” native multi-process fan-out; TWP is one managed process + thread pool | **N/A** โ€” do not fake workers for RSS/RPS games | -**Concrete managed cut worth trying now:** **N/A** for new session-lites. Portable lessons are already landed or process-model only. Decode-time H2 session skip was **reverted**; the Windows Memory audit then found and **kept** the `syntheticStreams` registry leak fix (see [Memory (RSS)](#memory-rss--h2h1-vs-h1--h3)). Next dig is residual native RSS / MsQuic after GHA re-measure. +**Concrete managed cut worth trying now:** **N/A** for new session-lites. Portable lessons are already landed or process-model only. Decode-time H2 session skip was **reverted**; the Windows Memory audit then found and **kept** the `syntheticStreams` registry leak fix (see [Memory (RSS)](#user-content-memory-rss--h2h1-vs-h1--h3)). Next dig is residual native RSS / MsQuic after GHA re-measure. ## Technique 2: async dumps โ€” find where requests wait @@ -201,7 +201,7 @@ Read the histogram of parked continuations. In the bridge investigation, hundred ## Technique 3: per-stage latency decomposition -When internal work looks fast but clients still see high latency, decompose the request path. TWP already captures per-request milestones when `EnableRequestTimingCapture` is set (see [Request timing](Home#request-timing)); RpsLoadProbe has an opt-in collector that aggregates them under load: +When internal work looks fast but clients still see high latency, decompose the request path. TWP already captures per-request milestones when `EnableRequestTimingCapture` is set (see [Request timing](Home#user-content-request-timing)); RpsLoadProbe has an opt-in collector that aggregates them under load: ```powershell # any non-empty value enables; a path (length > 1) writes reports to that file @@ -234,7 +234,7 @@ This is a *confirmation* tool more than a discovery tool here: it confirmed the When a comparable managed reverse peer is faster, read its source to answer **named hypotheses** โ€” not to port its architecture. Two examples from this pass: - *"Does the reference .NET server stack tune `MAX_CONCURRENT_STREAMS` dynamically?"* No โ€” it opens additional origin connections when the stream limit is hit. TWP replicated the behavior within its own design (`Http2OriginRelayPool`). -- *"Is `System.IO.Pipelines` the advantage?"* No โ€” TWP's buffered `HttpStream` already amortizes socket reads to one syscall per buffer drain; the memcpy `ReadOnlySequence` would remove costs ~0.02% of a request, and the TLS decrypt copy exists in both models (`SslStream` cannot produce a `ReadOnlySequence`; the reference .NET server stack copies decrypted bytes into its Pipe too). Measured support: H1 arms at parity, and TWP's c=1 latency *lower* than the managed reverse peer's. The layering difference is real; it is not why the tiny-GET tables look the way they do โ€” see [TWP vs YARP IO model](#twp-vs-yarp-io-model). +- *"Is `System.IO.Pipelines` the advantage?"* No โ€” TWP's buffered `HttpStream` already amortizes socket reads to one syscall per buffer drain; the memcpy `ReadOnlySequence` would remove costs ~0.02% of a request, and the TLS decrypt copy exists in both models (`SslStream` cannot produce a `ReadOnlySequence`; the reference .NET server stack copies decrypted bytes into its Pipe too). Measured support: H1 arms at parity, and TWP's c=1 latency *lower* than the managed reverse peer's. The layering difference is real; it is not why the tiny-GET tables look the way they do โ€” see [TWP vs YARP IO model](#user-content-twp-vs-yarp-io-model). - *"When does the managed reverse peer open another origin H2 connection?"* [`ForwarderHttpClientFactory`](https://github.com/microsoft/reverse-proxy) sets `EnableMultipleHttp2Connections = true` by default โ€” SocketsHttpHandler grows sessions under stream pressure. TWP's `PoolGrowActiveStreamThreshold` is the analogous dial (lowered 16โ†’4 after profiling). ## TWP vs YARP IO model @@ -259,7 +259,7 @@ YARP inherits better *insurance* for slow consumers, protocol-edge bridging, and Remaining YARP-led cells in this pass (H2 POST at c=32, some 256 KiB bodies, lossy H1) were named as multiplex/shared-writer, copy/syscall/coalesce, or buffer-vs-delay โ€” not "we lack pipelines." nginx still leads both on Linux H1; if there is a hard ceiling it is managed C# vs native, not TWP vs pipes. -The [architecture-sensitive](Performance-Local-Lab#architecture-sensitive) laptop table (and CI medians on [Performance](Performance#architecture-sensitive)) is `compare-arch`. **Duplex H2 is TWP-led on published CI @ `062f4e72`:** Win sustain **2,236** vs YARP **25**, Linux **2,741** vs **199** (see [Performance ยง Architecture-sensitive](Performance#architecture-sensitive)). Older note @ `1f2d0eee` (Win โ‰ˆ **0.63ร—** / Linux โ‰ˆ **0.31ร—**) is **stale** โ€” deferred DATA / compressed-relay fixes flipped the cell. Do **not** port Kestrel/`StreamCopier` for this row; keep concurrent compressed frame relays. Early-response H2โ†’H1 and WebSocket dual-copy remain TWP strengths. +The [architecture-sensitive](Performance-Local-Lab#user-content-architecture-sensitive) laptop table (and CI medians on [Performance](Performance#user-content-architecture-sensitive)) is `compare-arch`. **Duplex H2 is TWP-led on published CI @ `062f4e72`:** Win sustain **2,236** vs YARP **25**, Linux **2,741** vs **199** (see [Performance ยง Architecture-sensitive](Performance#user-content-architecture-sensitive)). Older note @ `1f2d0eee` (Win โ‰ˆ **0.63ร—** / Linux โ‰ˆ **0.31ร—**) is **stale** โ€” deferred DATA / compressed-relay fixes flipped the cell. Do **not** port Kestrel/`StreamCopier` for this row; keep concurrent compressed frame relays. Early-response H2โ†’H1 and WebSocket dual-copy remain TWP strengths. ## Case studies: symptom โ†’ tool โ†’ root cause โ†’ fix @@ -310,7 +310,7 @@ The [architecture-sensitive](Performance-Local-Lab#architecture-sensitive) lapto | H2โ†’H1 64 KiB ~0.87ร— YARP (tiny-GET already parity) | Cool pair + code compare vs Kestrel/YARP | Streamed path stripped Content-Length then empty END_STREAM DATA; pump wrote 8 KiB fills โ†’ 8 DATA frames + trailer; `HttpStream` double-buffered socketโ†’8 KiBโ†’dest; QueueDataFrame + 32 KiB flatten | Keep CL + END_STREAM on last DATA; `HttpStream` large-read bypass; in-place DATA framing (flatten **kept**); skip LimitedStream/Via on known-CL fast path; raise flatten budget to **288 KiB**. Cool 64 KiB โ‰ˆ **1.13ร—**; 256 KiB โ‰ˆ **0.89ร—**. Dropping flatten alone still ~0.65ร— | | H2 POST cool ~0.88ร— / 256 KiB H2โ†’H1 ~0.90ร— | Shape c=1 vs c=32 + YARP `StreamCopier` (64 KiB) compare | c=1 TWP **leads** POST (~1.2ร—); c=32 loses when YARP healthy โ€” multiplex tax (frame-loop copy + shared client writer). Extra body memcpy / coalesce experiments | **Kept:** ArrayPool request-body channel + `TryReserve` on `CopyFromAsync`. **Do not:** reserve >1 frame before enqueue; slice control frames into coalesced DATA; drop flatten | | H3 early-response Win CI ~0.76ร— (Linux already ~1.02ร—) | Cool A/B (`fix-early-tls/`) + origin/YARP duplex compare | `ForwardOverTcpAsync` wrote the full request body before `ReceiveResponse` while the probe origin overlaps after 8 KiB (YARP `StreamCopier` same). H3+MsQuic amplifies the serialization on Windows | Overlap streamed upload with `ReceiveResponse`; fold remaining upload into `StreamBodyWriter` via `Task.WhenAll`. Cool mean โ‰ˆ **1.21ร—** YARP. Do **not** re-land Http3Frame coalesce 256โ†’16 KiB (hurt POST) | -| Duplex H2 was YARP-led @ `1f2d0eee` (~0.63ร—/0.31ร—); **superseded** @ `062f4e72` (TWP leads) | CI medians on [Performance](Performance#architecture-sensitive); older [32688089789](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32688089789) | Concurrent compressed-relay both ways already; deferred DATA / empty-body hardening recovered sustain | **No Kestrel/`StreamCopier` port.** Keep published TWP-led ratios; treat the `1f2d0eee` YARP-led note as historical only. | +| Duplex H2 was YARP-led @ `1f2d0eee` (~0.63ร—/0.31ร—); **superseded** @ `062f4e72` (TWP leads) | CI medians on [Performance](Performance#user-content-architecture-sensitive); older [32688089789](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32688089789) | Concurrent compressed-relay both ways already; deferred DATA / empty-body hardening recovered sustain | **No Kestrel/`StreamCopier` port.** Keep published TWP-led ratios; treat the `1f2d0eee` YARP-led note as historical only. | | H3โ†’H1 64 KiB GET Win CI ~0.56ร— / Linux ~0.82ร— | Cool A/B (`h3-64k-rebaseline/`) + CI re-measure | Cool mean โ‰ˆ **1.13ร—** (3118/2688 & 3488/3181); stale CI was pre-`StreamBodyWriter` | No library change. Publishable [32611185635](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32611185635) @ `cd276c83`: Win โ‰ˆ **1.15ร—** (3,752 / 3,269), Linux โ‰ˆ **1.25ร—** (5,295 / 4,247). Next body gap: Win H1 TLS 256 KiB โ‰ˆ **0.85ร—** | | H1 TLSโ†’H1 256 KiB Win CI ~0.85ร— | Cool A/B + shape (`h1-256k-cool/`) + YARP StreamCopier compare | Cool c=1 โ‰ˆ **0.83ร—** (per-request); `CopyBytesToStream` FillBufferโ€™d **8 KiB** forever โ€” H2 large-read bypass never ran on H1 known-CL copy | Rent **64 KiB** + `ReadAsync` when parser window empty (`HttpStream.CopyBytesToStream`, `106e73b9`). Cool c=1 โ‰ˆ **1.16ร—**, c=32 โ‰ˆ **1.09ร—**. Publishable [32614286032](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32614286032): Win โ‰ˆ **1.12ร—** (2,617 / 2,347). | | H1 TLS new-conn Win CI ~0.84x (Linux TWP leads) | Cool A/B + Kestrel SocketConnectionListener / ConnectionDispatcher + bare ceiling | Nested SslStream + ClientHello peek + ECDSA + Task.Run + BeginAccept APM + per-accept linger/timeouts + RetryPolicy closures; **lite path forwarded `Connection: close` to origin** โ†’ no origin pool under NC | Peek/unwrap/RSA/no-keepalive; abortive SO_LINGER(0) on close; AcceptAsync; CTS pool; session-lite; WaitForData-before-SslStream; 8 KiB rent. AcceptIOQueue **no win**. Bare NC `Connection: close` response-skip fixed. **Strip hop-by-hop Connection before origin write** on H1 terminate lite. Publishable [32625349927](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32625349927) @ `13059143`: Win NC โ‰ˆ **1.01ร—**, Linux NC โ‰ˆ **1.01ร—** YARP (nginx 1st on Linux NC โ€” TWP 2nd). | diff --git a/wiki/Performance.md b/wiki/Performance.md index ae85c10e5..848aa25cb 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -2,9 +2,7 @@ Throughput and footprint of **Titanium** as a reverse / edge proxy and as a decr **RPS** is requests per second (gRPC tables use **RPC/s**). Numbers are Release builds on matched GitHub-hosted runners: Windows and Linux at **4 vCPU / 16 GiB**, macOS at **`macos-15` Apple Silicon 3-core / 7 GB**. We compare products within an OS, not OS against OS, so read within one table โ€” absolute RPS is not comparable across operating systems. *Not possible* means that product cannot run that path on that OS; *Not measured* means the path exists but no published number yet. -For pooling knobs and certificate first-visit tuning, see [Performance and pooling](Home#performance-and-pooling). Laptop cool A/B tables (not publishable) live on [Performance Local Lab](Performance-Local-Lab). - - +For pooling knobs and certificate first-visit tuning, see [Performance and pooling](Home#user-content-performance-and-pooling). Laptop cool A/B tables (not publishable) live on [Performance Local Lab](Performance-Local-Lab). ## Why this comparison is fair @@ -15,40 +13,36 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - MITM (HTTPS decryption with forged certificates) is Titanium-only; peers cannot MITM. The published MITM table is Linux only. It shows Titanium MITM overhead versus its own reverse path on the same wires. - **Tiny keep-alive GET** (~56-byte JSON) is the industry RPS shape (same class as wrk / TechEmpower). It is also real for small JSON APIs and health checks. - **Same-protocol H2โ†”H2 / H3โ†”H3** on that shape is Titaniumโ€™s **best case**: with interception off, Titanium copies frames instead of decoding and re-encoding headers (peers do a full HTTP decode). Medals there are not the typical reverse-proxy job. -- **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#heavier-reverse-workloads) (@ `0386b2aa`). - - +- **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#user-content-heavier-reverse-workloads) (@ `0386b2aa`). ## How to read the tables - Bold RPS is **sustain** (last concurrency that still met error/latency SLOs). When peak differs, it appears in the same cell as `(peak N ยท โ€ฆ)` with RSS/CPU. When sustain equals peak, peak is omitted. -- ๐Ÿฅ‡ = best among OS-possible peers on that row (highest sustain RPS; on a tie, lower memory then lower CPU%). On tiny Reverse that is Titanium / nginx / YARP (plus HAProxy / Envoy on Linux/macOS). The same rule applies to heavier reverse, architecture-sensitive, TLS-cost, gRPC, and WebSocket peer tables. Gold on tiny GET is that frame-copy best case, not โ€œTitanium is 1.7ร— on all reverse.โ€ For larger-body H2โ†’H2, see the [heavier tables](#heavier-reverse-workloads). +- ๐Ÿฅ‡ = best among OS-possible peers on that row (highest sustain RPS; on a tie, lower memory then lower CPU%). On tiny Reverse that is Titanium / nginx / YARP (plus HAProxy / Envoy on Linux/macOS). The same rule applies to heavier reverse, architecture-sensitive, TLS-cost, gRPC, and WebSocket peer tables. Gold on tiny GET is that frame-copy best case, not โ€œTitanium is 1.7ร— on all reverse.โ€ For larger-body H2โ†’H2, see the [heavier tables](#user-content-heavier-reverse-workloads). - **MITM** is published on Linux only (Titanium-only, no peer medal). **LiteรทReverse** / **FullรทReverse** = Titanium MITM sustain รท Titanium reverse sustain on the same Clientร—Origin pair โ€” the overhead of decrypting and intercepting versus bare reverse, not versus nginx or YARP. - *Not possible* = cannot do that path. *Not measured* = path exists but no published number yet. When every row would be *Not possible* for a peer, that column is omitted and a note above the table explains why. ## Contents -- [Why this comparison is fair](#why-this-comparison-is-fair) -- [How to read the tables](#how-to-read-the-tables) -- [Measurement environment](#measurement-environment) - - [Windows (GitHub-hosted `windows-latest`)](#windows-github-hosted-windows-latest) - - [Linux (GitHub-hosted `ubuntu-latest`)](#linux-github-hosted-ubuntu-latest) - - [macOS (GitHub-hosted `macos-15`, Apple Silicon)](#macos-github-hosted-macos-15-apple-silicon) - - [Saturation control](#saturation-control) -- [Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#windows--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) -- [Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#linux--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) -- [macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#macos--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) -- [Editions (CLI / Plus / Intercept)](#editions-cli--plus--intercept) -- [Heavier reverse workloads](#heavier-reverse-workloads) -- [Unary gRPC (H2 TLS)](#unary-grpc-h2-tls) -- [Unary gRPC (H2 TLS โ†’ h2c)](#unary-grpc-h2-tls--h2c) -- [WebSocket (H1 TLS โ†’ H1 TLS)](#websocket-h1-tls--h1-tls) -- [WebSocket (H2 TLS 8441 โ†’ H1)](#websocket-h2-tls-8441--h1) -- [Other measurements](#other-measurements) -- [Raising limits on large hosts](#raising-limits-on-large-hosts) -- [Maintainer notes](#maintainer-notes) - - +- [Why this comparison is fair](#user-content-why-this-comparison-is-fair) +- [How to read the tables](#user-content-how-to-read-the-tables) +- [Measurement environment](#user-content-measurement-environment) + - [Windows (GitHub-hosted `windows-latest`)](#user-content-windows-github-hosted-windows-latest) + - [Linux (GitHub-hosted `ubuntu-latest`)](#user-content-linux-github-hosted-ubuntu-latest) + - [macOS (GitHub-hosted `macos-15`, Apple Silicon)](#user-content-macos-github-hosted-macos-15-apple-silicon) + - [Saturation control](#user-content-saturation-control) +- [Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#user-content-windows--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) +- [Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#user-content-linux--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) +- [macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP](#user-content-macos--titanium-vs-nginx-vs-haproxy-vs-envoy-vs-yarp) +- [Editions (CLI / Plus / Intercept)](#user-content-editions-cli--plus--intercept) +- [Heavier reverse workloads](#user-content-heavier-reverse-workloads) +- [Unary gRPC (H2 TLS)](#user-content-unary-grpc-h2-tls) +- [Unary gRPC (H2 TLS โ†’ h2c)](#user-content-unary-grpc-h2-tls--h2c) +- [WebSocket (H1 TLS โ†’ H1 TLS)](#user-content-websocket-h1-tls--h1-tls) +- [WebSocket (H2 TLS 8441 โ†’ H1)](#user-content-websocket-h2-tls-8441--h1) +- [Other measurements](#user-content-other-measurements) +- [Raising limits on large hosts](#user-content-raising-limits-on-large-hosts) +- [Maintainer notes](#user-content-maintainer-notes) ## Measurement environment @@ -56,8 +50,6 @@ All three OS use public-repo GitHub-hosted runners: **Windows / Linux** at **4 v Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](Performance-Local-Lab). Do not mix those absolutes into the tables below. - - ### Windows (GitHub-hosted `windows-latest`) ||| @@ -72,8 +64,6 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P | YARP | Yarp.ReverseProxy **2.3.0** | | Harness | RpsLoadProbe Release; median of 3 repeats | - - ### Linux (GitHub-hosted `ubuntu-latest`) ||| @@ -88,8 +78,6 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P | YARP | Yarp.ReverseProxy **2.3.0** | | Harness | RpsLoadProbe Release; median of 3 repeats where noted | - - ### macOS (GitHub-hosted `macos-15`, Apple Silicon) ||| @@ -107,8 +95,6 @@ Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](P Use the pinned `macos-15` label (not `macos-latest`) so the image does not change between runs. - - ### Saturation control Calibration for the shared 4 vCPU loopback shape: how close client + origin are to saturated before ranking reverse peers. Tiny keep-alive GET. Median of **3** repeats @ `0386b2aa` โ€” [37156912437](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156912437). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Block A **% of origin-HttpClient** uses median **peak** RPS. Blocks B/C use peerรทYARP / รทnginx on median peak (not % of H1 origin). **RPS cells** embed median RSS / CPU for the **proxy child** plus its **full descendant tree** (serve-proxy โ†’ nginx master โ†’ workers); origin-direct samples the **origin** child. Product matrices below use matched `dotnet-httpclient` only (not bombardier). @@ -218,15 +204,13 @@ Medals are nginx / YARP / Titanium only, from the same run as Blocks A and B ([3 | yarp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **21,658**
      (229 MiB / 44.6% CPU) | **1.00ร—** | **0.80ร—** | | twp-reverse-http3-cleartext | dotnet-httpclient | **18,385**
      (140 MiB / 44.6% CPU) | **0.85ร—** | **0.68ร—** | - - ## Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP Client / origin: HTTP version and whether TLS is used (`plain` = cleartext, `TLS` = encrypted, `QUIC` = HTTP/3). ### Reverse -Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. nginx terminate peers use `keepalive 256` + streaming buffers. **HAProxy / Envoy are Linux-only peers** (no official Windows port). Laptop High-perf / cool-paired numbers stay on the [local lab](Performance-Local-Lab). Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#why-this-comparison-is-fair). +Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. nginx terminate peers use `keepalive 256` + streaming buffers. **HAProxy / Envoy are Linux-only peers** (no official Windows port). Laptop High-perf / cool-paired numbers stay on the [local lab](Performance-Local-Lab). Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). **Load generators:** Reverse inbound H3 arms use **`dotnet-httpclient`** (`http_version=3.0`, `RequestVersionExact`). nginx/Windows is same-OS only (no QUIC). HAProxy/Envoy are Linux-only terminate peers. @@ -258,13 +242,11 @@ Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **31,884**
      (131 MiB / 45.7% CPU) | *Not possible (no H2 upstream)* | **21,920**
      (151 MiB / 47.7% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,882**
      (117 MiB / 47.2% CPU) | *Not possible (no H3 upstream)* | **12,348**
      (150 MiB / 49.9% CPU) | - - ## Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse -Median of **3 repeats** on `ubuntu-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. **Linux nginx is the authoritative nginx baseline.** HAProxy (3.2 `USE_QUIC`) and Envoy (GitHub release, HTTP/3 compiled in) run on the same loopback shape as nginx/YARP. nginx terminate peers use `keepalive 256` + streaming buffers. The RPS workflow installs nginx.org mainline (`http_v3_module`), a QUIC-enabled HAProxy, Envoy, and `libmsquic`. Prefer ratios over absolute RPS. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#why-this-comparison-is-fair). +Median of **3 repeats** on `ubuntu-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. **Linux nginx is the authoritative nginx baseline.** HAProxy (3.2 `USE_QUIC`) and Envoy (GitHub release, HTTP/3 compiled in) run on the same loopback shape as nginx/YARP. nginx terminate peers use `keepalive 256` + streaming buffers. The RPS workflow installs nginx.org mainline (`http_v3_module`), a QUIC-enabled HAProxy, Envoy, and `libmsquic`. Prefer ratios over absolute RPS. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| @@ -330,13 +312,11 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **24,698**
      (153 MiB / 51.1% CPU) | **24,065**
      (152 MiB / 50.3% CPU) | **0.98ร—** | **0.95ร—** | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **37,404**
      (201 MiB / 52.5% CPU) | **38,997**
      (206 MiB / 53.1% CPU) | **0.89ร—** | **0.92ร—** | - - ## macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse -Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. The RPS workflow installs Homebrew nginx (`http_v3_module`), Homebrew HAProxy with `USE_QUIC` (3.2 source fallback), Envoy (Homebrew bottle or pinned darwin-arm64 1.36.7), Homebrew `libmsquic` (+ `DYLD_*`), and YARP. Use the pinned `macos-15` label, not `macos-latest`. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#why-this-comparison-is-fair). +Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. The RPS workflow installs Homebrew nginx (`http_v3_module`), Homebrew HAProxy with `USE_QUIC` (3.2 source fallback), Envoy (Homebrew bottle or pinned darwin-arm64 1.36.7), Homebrew `libmsquic` (+ `DYLD_*`), and YARP. Use the pinned `macos-15` label, not `macos-latest`. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| @@ -366,11 +346,9 @@ Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare re | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **28,390**
      (146 MiB / 24.8% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **34,002**
      (102 MiB / 20.4% CPU) | **11,891**
      (125 MiB / 28.3% CPU) | **26,452**
      (232 MiB / 28% CPU) | | HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **4,442**
      (138 MiB / 9% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,144**
      (124 MiB / 38.2% CPU) | ๐Ÿฅ‡ **23,628**
      (226 MiB / 44.2% CPU) | - - ## Editions (CLI / Plus / Intercept) -**Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#maintainer-notes). +**Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#user-content-maintainer-notes). Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` (Actions [37192183576](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37192183576)). Other edition rows stay @ `0386b2aa`. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. @@ -398,13 +376,11 @@ Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` | `twp-cli-lb-leasttime-http1` vs route | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | โ‰ฅ **0.50ร—** | | `twp-cli-dialect-twp-http1` vs CLI | **47,368**
      (168 MiB / 48.3% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | -`validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#editions-cli--plus-stress). - - +`validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#user-content-editions-cli--plus-stress). ## Heavier reverse workloads -Same runners and harness as the tiny-GET tables, but with larger bodies, POST, lossy links, TLS cost, and architecture-sensitive paths (slow consumer / early response / duplex). **PUT with the same body is the same proxy work as POST; DELETE with no body matches GET** โ€” only POST is published. Bodies/POST/lossy stay **half-duplex**. Laptop numbers are on [Performance Local Lab](Performance-Local-Lab#architecture-sensitive). How maintainers refresh these tables (modes, shards, paste scripts) is under [Maintainer notes](#maintainer-notes). **Larger-body check:** 64 / 256 KiB H2 TLSโ†’H2 TLS is where body copy dominates headers โ€” ratios vs YARP are in the tables below (@ `0386b2aa`), unlike the tiny-GET H2โ†”H2 medals above. +Same runners and harness as the tiny-GET tables, but with larger bodies, POST, lossy links, TLS cost, and architecture-sensitive paths (slow consumer / early response / duplex). **PUT with the same body is the same proxy work as POST; DELETE with no body matches GET** โ€” only POST is published. Bodies/POST/lossy stay **half-duplex**. Laptop numbers are on [Performance Local Lab](Performance-Local-Lab#user-content-architecture-sensitive). How maintainers refresh these tables (modes, shards, paste scripts) is under [Maintainer notes](#user-content-maintainer-notes). **Larger-body check:** 64 / 256 KiB H2 TLSโ†’H2 TLS is where body copy dominates headers โ€” ratios vs YARP are in the tables below (@ `0386b2aa`), unlike the tiny-GET H2โ†”H2 medals above. Lossy link = **userspace** delay/drop shim (not kernel `netem`): TCP gets per-buffer delay + occasional whole-connection stalls (honest head-of-line for multiplexed HTTP/2); UDP is **loss% only** (no per-datagram delay) + drops (QUIC / MsQuic-safe). Lossy tables publish HTTP/1, HTTP/2, and HTTP/3. @@ -621,7 +597,7 @@ Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `0386b ### Architecture-sensitive -These runs isolate slow app readers, origin-early response, HTTP/2 duplex, and WebSocket echo. See [TWP vs YARP IO model](Performance-Profiling#twp-vs-yarp-io-model). Laptop 1-rep numbers are on [Performance Local Lab](Performance-Local-Lab#architecture-sensitive). +These runs isolate slow app readers, origin-early response, HTTP/2 duplex, and WebSocket echo. See [TWP vs YARP IO model](Performance-Profiling#user-content-twp-vs-yarp-io-model). Laptop 1-rep numbers are on [Performance Local Lab](Performance-Local-Lab#user-content-architecture-sensitive). Median of **3** repeats on matched 4 vCPU / 16 GiB runners @ `0386b2aa` ([37138997054](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138997054)). Slow consumer = 256 KiB GET, 16 KiB read + 8 ms sleep. Early response = 64 KiB POST, origin writes after 8 KiB. Duplex HTTP/2 = overlapping 64 KiB POST on H2 TLSโ†”H2 TLS. WebSocket row = H1 Upgrade echo round-trips/sec (not RFC 8441; see WebSocket RFC 8441 table below). @@ -723,8 +699,6 @@ Median of **3** repeats on `macos-15` @ `0386b2aa`. Source: Actions [37139092496 Prefer **TWPรทYARP** in the table. Absolute RPS on GHA swings hard. New-connection is Darwin SslStream-bound for TWP and YARP (handshake p99 SLO **500 ms** on macOS only โ€” Win/Linux stay at **200 ms**). - - ## Unary gRPC (H2 TLS) Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grpc_pass`), HAProxy, and Envoy (OS-possible peers only). Not folded into the architecture-sensitive tables. Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). @@ -735,8 +709,6 @@ Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grp | Linux | ๐Ÿฅ‡ **36,435**
      (116 MiB / 29.4% CPU) | **21,650**
      (162 MiB / 42.4% CPU) | **0**
      (114 MiB / 24.8% CPU) | **6,780**
      (84 MiB / 24.4% CPU) | **11,826**
      (128 MiB / 21.5% CPU) | | macOS | ๐Ÿฅ‡ **23,481**
      (147 MiB / 9.2% CPU) | **13,123**
      (198 MiB / 13.4% CPU) | **0**
      (85 MiB / 2.8% CPU) | **0**
      (104 MiB / 13.3% CPU) | **8,939**
      (120 MiB / 13.4% CPU) | - - ## Unary gRPC (H2 TLS โ†’ h2c) Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 origin). Peers: Titanium, YARP, HAProxy, Envoy. Mode: `compare-grpc` (`*-grpc-h2c`). Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). @@ -749,8 +721,6 @@ Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 orig | Linux | ๐Ÿฅ‡ **43,057**
      (123 MiB / 29.8% CPU) | **24,248**
      (164 MiB / 43.2% CPU) | **7,734**
      (82 MiB / 24.4% CPU) | **12,392**
      (127 MiB / 22.4% CPU) | | macOS | **37,144**
      (158 MiB / 12.6% CPU) | ๐Ÿฅ‡ **50,508**
      (178 MiB / 37.7% CPU) | **24,505**
      (104 MiB / 24.4% CPU) | **30,920**
      (119 MiB / 26.1% CPU) | - - ## WebSocket (H1 TLS โ†’ H1 TLS) WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: `compare-ws-h1tls` (`*-duplex-ws-h1tls`). Median of **3** repeats @ `0386b2aa`. Source: [37156931630](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156931630). @@ -761,8 +731,6 @@ WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: ` | Linux | **24,640**
      (133 MiB / 44.2% CPU) | **22,976**
      (134 MiB / 43.9% CPU) | ๐Ÿฅ‡ **28,478**
      (103 MiB / 37.0% CPU) | **26,978**
      (85 MiB / 39.3% CPU) | **27,918**
      (128 MiB / 38.2% CPU) | | macOS | **28,012**
      (192 MiB / 28.5% CPU) | **32,133**
      (215 MiB / 34.9% CPU) | **35,774**
      (85 MiB / 22.8% CPU) | ๐Ÿฅ‡ **36,420**
      (100 MiB / 33.0% CPU) | **35,325**
      (119 MiB / 29.9% CPU) | - - ## WebSocket (H2 TLS 8441 โ†’ H1) WebSocket echo over **RFC 8441** extended CONNECT (H2 TLS client โ†’ H1 plain origin). Mode: `compare-ws-h2` (`*-duplex-ws-h2`). @@ -777,8 +745,6 @@ The probe client sets `NoDelay` and writes each HTTP/2 frame as one TLS record. | Linux | **47,626**
      (197 MiB / 40.1% CPU) | **0**
      (220 MiB / 42.2% CPU) | ๐Ÿฅ‡ **47,638**
      (85 MiB / 35.0% CPU) | **0**
      (123 MiB / 0.1% CPU) | | macOS | **8,899**
      (238 MiB / 14.0% CPU) | **0**
      (193 MiB / 8.9% CPU) | ๐Ÿฅ‡ **20,337**
      (100 MiB / 21.3% CPU) | **0**
      (115 MiB / 0.2% CPU) | - - ## Other measurements | What | Result | @@ -798,8 +764,6 @@ Local laptop BDN @ `9d7c2966` (Release): | HTTP/1 GET through proxy | Passthrough | **128 ยตs** | **9.9 KB** | | HTTP/2 multiplexed GETs | 10 concurrent streams | **253 ยตs** / batch | **~4.4 KB** / request | - - ## Raising limits on large hosts There is **no artificial upper clamp** on server defaults. Per-endpoint overrides: @@ -837,8 +801,6 @@ ep.BeforeSslAuthenticate += (_, a) => }; ``` - - ## Maintainer notes CI cadence, shards, paste scripts, and gate floors for people refreshing these tables. Consumers can skip this section. diff --git a/wiki/Protocol-Support.md b/wiki/Protocol-Support.md index 8716f2758..2baeab975 100644 --- a/wiki/Protocol-Support.md +++ b/wiki/Protocol-Support.md @@ -52,7 +52,7 @@ Not supported: - Explicit QUIC proxying (inbound HTTP/3 is `TransparentQuicProxyEndPoint` only). WebSocket over HTTP/2 (`EnableRfc8441`) reuses the HTTP/1.1 โ†” HTTP/2 bridges (plus a native h2โ†”h2 DATA -tunnel). See [RFC 8441](#http2-safety-and-frame-validation) below. QUIC endpoint setup is on +tunnel). See [RFC 8441](#user-content-http2-safety-and-frame-validation) below. QUIC endpoint setup is on [HTTP/3](HTTP-3). ## Connections and framing @@ -120,7 +120,7 @@ Two principles apply โ€” do not collapse them into โ€œnever show the client an o 1. **Hide retryable connection failures when safe.** HTTP/1.x `RetryableServerConnectionException` and the H1โ†’H2 bridgeโ€™s one-shot replay after origin `GOAWAY` (stream never processed) retry on a fresh upstream so the client often never sees the blip. Benign disconnects / cancellations log at Debug. 2. **Keep stream admission and peer RST semantics honest.** Native h2โ†”h2 MITM relays origin `RST_STREAM` (including `REFUSED_STREAM` under load-shed). When the client opens more streams than the ACKed `SETTINGS_MAX_CONCURRENT_STREAMS` budget, the proxy sends `RST_STREAM(REFUSED_STREAM)` โ€” browsers may briefly show a protocol error and reload. That is expected capacity signaling, not a leaked origin failure after a failed retry. Capacity refuses log at Debug; Rapid Reset / framing violations stay Error. -See also the advertised=enforced consolidation in [Migration from 4.x](Migration-from-4.x#http2-continuation-and-reset-abuse-budgets). +See also the advertised=enforced consolidation in [Migration from 4.x](Migration-from-4.x#user-content-http2-continuation-and-reset-abuse-budgets). ## WebSocket safety @@ -153,7 +153,7 @@ HTTP/3 support is gated behind `ProxyServer.EnableHttp3 = true` (marked `[Experi It requires the MsQuic native library and `System.Net.Quic.QuicListener.IsSupported == true` at runtime. CLI/Inspector Release zips bundle natives per RID (Windows uses OS MsQuic on Win11/Server 2022+). NuGet library hosts install system `libmsquic` on Linux/macOS (or bundle with `@loader_path` on macOS) โ€” see [HTTP-3](HTTP-3). -The H3-related rows below are the HTTP/3 legs of the [protocol bridges](#protocol-bridges) matrix. +The H3-related rows below are the HTTP/3 legs of the [protocol bridges](#user-content-protocol-bridges) matrix. | Feature | Support | Notes | |---------|---------|-------| diff --git a/wiki/Security-Considerations.md b/wiki/Security-Considerations.md index 11490f45a..26c06873f 100644 --- a/wiki/Security-Considerations.md +++ b/wiki/Security-Considerations.md @@ -9,7 +9,7 @@ path โ€” so you don't assume coverage you don't actually have. ## WebSocket frame validation only applies where the proxy decodes frames The reserved-opcode rejection, pre-buffer frame-size validation, and RFC 6455-conformant close -handling described in [Protocol Support](Protocol-Support#websocket-safety) only run when the proxy +handling described in [Protocol Support](Protocol-Support#user-content-websocket-safety) only run when the proxy is actually parsing WebSocket frames โ€” i.e. the connection was decrypted (`decryptSsl: true`, or plain HTTP) and the WebSocket upgrade was intercepted by `WebSocketInterceptRelay`. Two paths bypass all of this by construction, not by omission: @@ -19,7 +19,7 @@ this by construction, not by omission: or otherwise. - **Non-HTTP relay** on a `SocksProxyEndPoint`: traffic that doesn't look like HTTP at the start of the connection is relayed transparently to the SOCKS-negotiated destination with no HTTP or WebSocket - parsing at all (see [SOCKS endpoint](Home#socks-endpoint)). + parsing at all (see [SOCKS endpoint](Home#user-content-socks-endpoint)). If you need the WebSocket protections, make sure the traffic in question is actually being decrypted and intercepted, not relayed opaquely. @@ -28,7 +28,7 @@ and intercepted, not relayed opaquely. `MaxBufferedBodyBytes` (and its HTTP/2/HTTP/3 equivalents) now cumulatively bounds every *whole-body-buffering* code path โ€” see -[Cumulative body budgets](Migration-from-4.x#cumulative-body-budgets-are-now-enforced-end-to-end). +[Cumulative body budgets](Migration-from-4.x#user-content-cumulative-body-budgets-are-now-enforced-end-to-end). It does **not** bound: - **The streaming hooks** (`OnRequestBodyWrite`/`OnResponseBodyWrite`, see @@ -43,7 +43,7 @@ It does **not** bound: family (see `PolicyFamily.cs`) but is not yet wired to numeric enforcement at every header-reading call site; only the HTTP/2 decoded-header-list cap (`MaxDecodedHeaderListBytes`) and the client header *read deadline* (a time bound, not a byte bound โ€” see - [New: client header read deadline](Migration-from-4.x#new-client-header-read-deadline-opt-in)) are + [New: client header read deadline](Migration-from-4.x#user-content-new-client-header-read-deadline-opt-in)) are actually enforced today. Treat memory-exhaustion protection as scoped to the specific mechanism you're using, and prefer the @@ -63,7 +63,7 @@ of how thoroughly it's been hardened here. Moving the certificate store to a per-user folder and no longer passing the real PFX password on the `certutil.exe` command line (see -[Certificate store relocated](Migration-from-4.x#certificate-store-relocated-to-a-per-user-protected-folder)) +[Certificate store relocated](Migration-from-4.x#user-content-certificate-store-relocated-to-a-per-user-protected-folder)) raises the bar from *"any local user or process on the machine can read the CA private key"* to *"any process running as the same OS user account can."* That second bar is not, and cannot be, eliminated by this proxy: a MITM TLS proxy must hold a CA private key somewhere accessible to itself at runtime in diff --git a/wiki/Streaming-Bodies.md b/wiki/Streaming-Bodies.md index 8bbc34981..77043b539 100644 --- a/wiki/Streaming-Bodies.md +++ b/wiki/Streaming-Bodies.md @@ -4,9 +4,9 @@ By default Titanium relays request and response bodies as they flow, and only bu This page covers three related capabilities that avoid buffering: -- [Modify a body as it streams](#modify-a-body-as-it-streams) โ€” `OnRequestBodyWrite` / `OnResponseBodyWrite` -- [Generate a body as a stream](#generate-a-body-as-a-stream) โ€” `RespondStreaming` -- [Draining bodies](#draining-bodies) โ€” `DrainServerBodyAsync` / `DrainClientBodyAsync` +- [Modify a body as it streams](#user-content-modify-a-body-as-it-streams) โ€” `OnRequestBodyWrite` / `OnResponseBodyWrite` +- [Generate a body as a stream](#user-content-generate-a-body-as-a-stream) โ€” `RespondStreaming` +- [Draining bodies](#user-content-draining-bodies) โ€” `DrainServerBodyAsync` / `DrainClientBodyAsync` --- diff --git a/wiki/Synthetic-Responses.md b/wiki/Synthetic-Responses.md index 66ddccf09..84c21ec80 100644 --- a/wiki/Synthetic-Responses.md +++ b/wiki/Synthetic-Responses.md @@ -4,11 +4,11 @@ Answer the client directly from a handler without contacting the origin, or repl This page covers: -- [When to synthesize](#when-to-synthesize) -- [Buffered responses](#buffered-responses) -- [Streamed responses](#streamed-responses) -- [Migration from legacy APIs](#migration-from-legacy-apis) -- [Common pitfalls](#common-pitfalls) +- [When to synthesize](#user-content-when-to-synthesize) +- [Buffered responses](#user-content-buffered-responses) +- [Streamed responses](#user-content-streamed-responses) +- [Migration from legacy APIs](#user-content-migration-from-legacy-apis) +- [Common pitfalls](#user-content-common-pitfalls) For modifying an origin response in place (chunk-by-chunk edits), see [Streaming Bodies](Streaming-Bodies). @@ -109,7 +109,7 @@ e.Respond(ProxyResults.Stream( writeBody: async (stream, ct) => { /* write exactly contentLength bytes */ })); ``` -See [Streaming Bodies โ€” Generate a body as a stream](Streaming-Bodies#generate-a-body-as-a-stream) for framing details (Content-Length vs chunked / HTTP/2 DATA frames). +See [Streaming Bodies โ€” Generate a body as a stream](Streaming-Bodies#user-content-generate-a-body-as-a-stream) for framing details (Content-Length vs chunked / HTTP/2 DATA frames). ### Range request limitation From fc38a134b97c384a5beb83b4158abfc6ed446256 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 16:07:03 +0530 Subject: [PATCH 15/24] Clear the open Sonar code smells without changing per-frame HTTP/2 send behavior. --- .../Services/IInspectorPathPicker.cs | 2 +- .../Services/SessionArchive.cs | 72 +++++----- .../Services/SessionBodyDiskCache.cs | 9 +- .../Services/SessionStore.cs | 59 +++++---- .../Services/SessionStreamBuffer.cs | 74 ++++++----- .../ViewModels/AutoResponderViewModel.cs | 6 +- .../MainWindowViewModel.Sessions.cs | 35 ++--- .../ViewModels/MapRemoteViewModel.cs | 6 +- .../Views/ExcludedHostsWindow.axaml.cs | 2 - .../Handlers/H1TerminateFastForward.cs | 6 +- .../Handlers/Http11ToHttp2BridgeHandler.cs | 1 - .../Handlers/Http2ToHttp11BridgeHandler.cs | 7 +- .../Http/HttpHeaderHygiene.cs | 9 +- .../Http2/Http2DeferredOutboundData.cs | 2 +- .../Http2/Http2Helper.Copy.Headers.cs | 2 +- .../Http2/Http2Helper.Copy.Relay.cs | 5 +- .../Http2/Http2Helper.Copy.cs | 27 ++-- .../Http2/Http2Helper.Send.cs | 14 +- src/Titanium.Web.Proxy/Http2/Http2Helper.cs | 2 + .../Http2/Http2OriginConnection.cs | 93 ++++++++----- .../Http3/H3H1QpackResponseReader.cs | 45 +++++-- src/Titanium.Web.Proxy/Http3/Http3Frame.cs | 18 +-- .../Http3/Http3OriginBridge.Http2.cs | 123 ++++++++++-------- .../Http3/Http3OriginBridge.Tcp.cs | 7 +- .../Http3/Http3RequestStream.cs | 13 +- .../DeferredInspectorUiCoverageTests.cs | 3 +- .../LiveSessionUpdateUxTests.cs | 4 +- .../Http2ContinuationAndAbuseBudgetTests.cs | 6 +- .../HandlerAndProtocolHelperCoverageTests.cs | 4 +- .../Http2BufferedSendOrderingTests.cs | 3 +- .../SonarGateCoverageBumpTests.cs | 6 + .../SonarNewCodeCoverageTests.cs | 10 +- 32 files changed, 376 insertions(+), 299 deletions(-) diff --git a/src/Titanium.Inspector/Services/IInspectorPathPicker.cs b/src/Titanium.Inspector/Services/IInspectorPathPicker.cs index c71b99534..2389752b6 100644 --- a/src/Titanium.Inspector/Services/IInspectorPathPicker.cs +++ b/src/Titanium.Inspector/Services/IInspectorPathPicker.cs @@ -111,7 +111,7 @@ public Task> PickOpenPathsAsync(string title, string filte internal readonly record struct StoragePickAttempt(bool DialogShown, string? Path) { public IReadOnlyList Paths { get; init; } = - string.IsNullOrEmpty(Path) ? Array.Empty() : [Path!]; + string.IsNullOrEmpty(Path) ? Array.Empty() : [Path]; } internal static class InspectorPathPickerHelpers diff --git a/src/Titanium.Inspector/Services/SessionArchive.cs b/src/Titanium.Inspector/Services/SessionArchive.cs index f90bff937..cf005ea70 100644 --- a/src/Titanium.Inspector/Services/SessionArchive.cs +++ b/src/Titanium.Inspector/Services/SessionArchive.cs @@ -235,7 +235,7 @@ public static JsonObject ToHarEntry(SessionSnapshot s) { try { - if (!TryReadHarRequest(entry, out var method, out var url, out var host, out var reqHeaders, out var reqBody, out var contentType, out var reqBytes)) + if (!TryReadHarRequest(entry, out var request)) { return null; } @@ -246,18 +246,18 @@ public static JsonObject ToHarEntry(SessionSnapshot s) var snap = new SessionSnapshot { Id = id, - Method = method, - Url = url, - Host = host, + Method = request.Method, + Url = request.Url, + Host = request.Host, StartedUtc = started, StatusCode = status, - RequestHeadersText = reqHeaders, + RequestHeadersText = request.Headers, ResponseHeadersText = respHeaders, - RequestBodyText = reqBody, + RequestBodyText = request.Body, ResponseBodyText = respBody, - RequestBodyBytes = reqBytes, + RequestBodyBytes = request.BodyBytes, ResponseBodyBytes = respBytes, - ContentType = contentType ?? respMime, + ContentType = request.ContentType ?? respMime, DurationMs = durationMs, TtfbMs = ttfbMs, BodySize = respBytes?.LongLength ?? respBody?.Length, @@ -386,6 +386,14 @@ private static void ApplyInspectorExtension(JsonElement entry, SessionSnapshot s return; } + ApplyInspectorIdentity(ext, snap); + ApplyInspectorCapture(ext, snap); + ApplyInspectorFlags(ext, snap); + ApplyInspectorBodies(ext, snap); + } + + private static void ApplyInspectorIdentity(JsonElement ext, SessionSnapshot snap) + { if (ext.TryGetProperty("id", out var idEl) && idEl.TryGetInt64(out var savedId) && savedId > 0) { snap.Id = savedId; @@ -415,7 +423,10 @@ private static void ApplyInspectorExtension(JsonElement entry, SessionSnapshot s { snap.ProcessName = pn.GetString(); } + } + private static void ApplyInspectorCapture(JsonElement ext, SessionSnapshot snap) + { if (ext.TryGetProperty("sentBytes", out var sent) && sent.TryGetInt64(out var sentBytes)) { snap.SentBytes = sentBytes; @@ -447,7 +458,10 @@ private static void ApplyInspectorExtension(JsonElement entry, SessionSnapshot s { snap.ResponseBodyOriginalSize = respOrig; } + } + private static void ApplyInspectorFlags(JsonElement ext, SessionSnapshot snap) + { snap.IsWebSocket = ReadBool(ext, "isWebSocket") ?? snap.IsWebSocket; snap.IsGrpc = ReadBool(ext, "isGrpc") ?? snap.IsGrpc; snap.IsTranscoded = ReadBool(ext, "isTranscoded") ?? snap.IsTranscoded; @@ -468,7 +482,10 @@ private static void ApplyInspectorExtension(JsonElement entry, SessionSnapshot s snap.UpstreamPath = ReadString(ext, "upstreamPath") ?? snap.UpstreamPath; snap.UpstreamContentType = ReadString(ext, "upstreamContentType") ?? snap.UpstreamContentType; snap.ProtobufDecodedText = ReadString(ext, "protobufDecodedText") ?? snap.ProtobufDecodedText; + } + private static void ApplyInspectorBodies(JsonElement ext, SessionSnapshot snap) + { // Prefer _inspector body payloads when present (lossless for Inspect). if (TryDecodeBase64(ext, "requestBodyBase64", out var reqBytes)) { @@ -539,7 +556,7 @@ private static bool TryDecodeBase64(JsonElement ext, string name, out byte[] byt } } - private static IReadOnlyList? DeserializeList(JsonElement ext, string name) + private static List? DeserializeList(JsonElement ext, string name) { if (!ext.TryGetProperty(name, out var el) || el.ValueKind != JsonValueKind.Array) { @@ -556,37 +573,33 @@ private static bool TryDecodeBase64(JsonElement ext, string name, out byte[] byt } } - private static bool TryReadHarRequest( - JsonElement entry, - out string method, - out string url, - out string? host, - out string reqHeaders, - out string? reqBody, - out string? contentType, - out byte[]? reqBytes) - { - method = "GET"; - url = ""; - host = null; - reqHeaders = ""; - reqBody = null; - contentType = null; - reqBytes = null; + private readonly record struct HarRequestFields( + string Method, + string Url, + string? Host, + string Headers, + string? Body, + string? ContentType, + byte[]? BodyBytes); + private static bool TryReadHarRequest(JsonElement entry, out HarRequestFields request) + { + request = new HarRequestFields("GET", "", null, "", null, null, null); if (!entry.TryGetProperty("request", out var req)) { return false; } - method = req.TryGetProperty("method", out var m) ? m.GetString() ?? "GET" : "GET"; - url = req.TryGetProperty("url", out var u) ? u.GetString() ?? "" : ""; + var method = req.TryGetProperty("method", out var m) ? m.GetString() ?? "GET" : "GET"; + var url = req.TryGetProperty("url", out var u) ? u.GetString() ?? "" : ""; + string? host = null; if (Uri.TryCreate(url, UriKind.Absolute, out var uri)) { host = uri.Host; } - reqHeaders = FormatHarHeaders(req); + string? reqBody = null; + string? contentType = null; if (req.TryGetProperty("postData", out var post) && post.ValueKind == JsonValueKind.Object) { if (post.TryGetProperty("text", out var pt)) @@ -600,6 +613,7 @@ private static bool TryReadHarRequest( } } + request = new HarRequestFields(method, url, host, FormatHarHeaders(req), reqBody, contentType, null); return true; } diff --git a/src/Titanium.Inspector/Services/SessionBodyDiskCache.cs b/src/Titanium.Inspector/Services/SessionBodyDiskCache.cs index 0b0ddeaab..fc7179bc4 100644 --- a/src/Titanium.Inspector/Services/SessionBodyDiskCache.cs +++ b/src/Titanium.Inspector/Services/SessionBodyDiskCache.cs @@ -695,7 +695,7 @@ private void RemoveIndexEntryLocked(string path) } } - private void QueueCleanup(IReadOnlyList paths) + private void QueueCleanup(List paths) { if (paths.Count == 0) { @@ -704,12 +704,9 @@ private void QueueCleanup(IReadOnlyList paths) lock (_cleanupGate) { - foreach (var path in paths) + foreach (var path in paths.Where(static path => !string.IsNullOrEmpty(path))) { - if (!string.IsNullOrEmpty(path)) - { - _cleanupPaths.Enqueue(path); - } + _cleanupPaths.Enqueue(path); } _cleanupTask = _cleanupTask.ContinueWith( diff --git a/src/Titanium.Inspector/Services/SessionStore.cs b/src/Titanium.Inspector/Services/SessionStore.cs index a398905bf..380c88605 100644 --- a/src/Titanium.Inspector/Services/SessionStore.cs +++ b/src/Titanium.Inspector/Services/SessionStore.cs @@ -147,14 +147,12 @@ public long? PinnedSessionId { var prevId = _pinnedSessionId; _pinnedSessionId = value; - if (prevId is long oldId && oldId != value && _byId.TryGetValue(oldId, out previous)) + // Drop RAM bodies for the previous selection when the file already exists. + if (prevId is long oldId && oldId != value && _byId.TryGetValue(oldId, out previous) + && previous.BodiesOnDisk) { - // Drop RAM bodies for the previous selection when the file already exists. - if (previous.BodiesOnDisk) - { - ClearBodyFields(previous); - RecalcInMemoryBodyBytesLocked(); - } + ClearBodyFields(previous); + RecalcInMemoryBodyBytesLocked(); } if (value is long newId && _byId.TryGetValue(newId, out next)) @@ -338,7 +336,8 @@ public async Task FlushDiskCleanupAsync(TimeSpan? timeout = null) public async Task EnsureBodiesLoadedAsync(SessionSnapshot snapshot, CancellationToken ct = default) { ObjectDisposedException.ThrowIf(_disposed, this); - if (_disk is null) + var disk = _disk; + if (disk is null) { return; } @@ -355,15 +354,34 @@ public async Task EnsureBodiesLoadedAsync(SessionSnapshot snapshot, Cancellation } // Fast path: file already gone and nothing pending โ€” do not wait ~1s. - if (!_disk.FileExists(snapshot.Id) && Volatile.Read(ref _pendingSpills) == 0) + if (!disk.FileExists(snapshot.Id) && Volatile.Read(ref _pendingSpills) == 0) { snapshot.BodiesMissingFromDisk = true; return; } - // Under heavy capture, the spill writer may still be draining thousands of HARs. - // Keep waiting while work is queued; only mark missing once the channel is idle - // and the file is still absent (bounded by ct / ~2 minutes). + if (await WaitForSpilledBodyAsync(snapshot, disk, ct).ConfigureAwait(false)) + { + return; + } + + if (!HasInMemoryBodies(snapshot) && + Volatile.Read(ref _pendingSpills) == 0 && + !disk.FileExists(snapshot.Id)) + { + snapshot.BodiesMissingFromDisk = true; + } + } + + /// + /// Under heavy capture, the spill writer may still be draining thousands of HARs. + /// Keep waiting while work is queued; only mark missing once the channel is idle + /// and the file is still absent (bounded by ct / ~2 minutes). + /// Returns true when the caller should stop (body loaded or marked missing). + /// + private async Task WaitForSpilledBodyAsync( + SessionSnapshot snapshot, SessionBodyDiskCache disk, CancellationToken ct) + { var deadline = DateTime.UtcNow + TimeSpan.FromMinutes(2); while (DateTime.UtcNow < deadline) { @@ -373,33 +391,28 @@ public async Task EnsureBodiesLoadedAsync(SessionSnapshot snapshot, Cancellation if (HasInMemoryBodies(snapshot)) { snapshot.BodiesMissingFromDisk = false; - return; + return true; } - if (_disk.TryLoad(snapshot)) + if (disk.TryLoad(snapshot)) { // Keep BodiesOnDisk=true so deselect can unload without rewriting the file. snapshot.BodiesMissingFromDisk = false; RecalcInMemoryBodyBytesLocked(); - return; + return true; } } - if (Volatile.Read(ref _pendingSpills) == 0 && !_disk.FileExists(snapshot.Id)) + if (Volatile.Read(ref _pendingSpills) == 0 && !disk.FileExists(snapshot.Id)) { snapshot.BodiesMissingFromDisk = true; - return; + return true; } await Task.Delay(25, ct).ConfigureAwait(false); } - if (!HasInMemoryBodies(snapshot) && - Volatile.Read(ref _pendingSpills) == 0 && - !_disk.FileExists(snapshot.Id)) - { - snapshot.BodiesMissingFromDisk = true; - } + return false; } public async Task EnsureBodiesLoadedAsync(IEnumerable snapshots, CancellationToken ct = default) diff --git a/src/Titanium.Inspector/Services/SessionStreamBuffer.cs b/src/Titanium.Inspector/Services/SessionStreamBuffer.cs index 865943dc8..9b240a297 100644 --- a/src/Titanium.Inspector/Services/SessionStreamBuffer.cs +++ b/src/Titanium.Inspector/Services/SessionStreamBuffer.cs @@ -55,48 +55,58 @@ private async Task ReadLoopAsync() await foreach (var snapshot in _channel.Reader.ReadAllAsync()) { batch.Add(snapshot); - var deadline = Environment.TickCount64 + _batchWindowMs; - while (batch.Count < _batchMax && _channel.Reader.TryRead(out var more)) + await CoalesceBatchAsync(batch).ConfigureAwait(false); + SessionsBatchAdded?.Invoke(batch.ToList()); + RaiseSessionAdded(batch); + batch.Clear(); + } + } + + private async Task CoalesceBatchAsync(List batch) + { + var deadline = Environment.TickCount64 + _batchWindowMs; + while (batch.Count < _batchMax && _channel.Reader.TryRead(out var more)) + { + batch.Add(more); + } + + // Wait briefly for more arrivals when the channel is momentarily empty. + while (batch.Count < _batchMax && Environment.TickCount64 < deadline) + { + var remaining = (int)(deadline - Environment.TickCount64); + if (remaining <= 0) { - batch.Add(more); + break; } - // Wait briefly for more arrivals when the channel is momentarily empty. - while (batch.Count < _batchMax && Environment.TickCount64 < deadline) + using var delayCts = new CancellationTokenSource(remaining); + try { - var remaining = (int)(deadline - Environment.TickCount64); - if (remaining <= 0) - { - break; - } - - using var delayCts = new CancellationTokenSource(remaining); - try - { - if (await _channel.Reader.WaitToReadAsync(delayCts.Token).ConfigureAwait(false)) - { - while (batch.Count < _batchMax && _channel.Reader.TryRead(out var more)) - { - batch.Add(more); - } - } - } - catch (OperationCanceledException) + if (await _channel.Reader.WaitToReadAsync(delayCts.Token).ConfigureAwait(false)) { - break; + DrainAvailable(batch); } } - - SessionsBatchAdded?.Invoke(batch.ToList()); - if (SessionAdded is { } singleHandler) + catch (OperationCanceledException) { - foreach (var s in batch) - { - singleHandler(s); - } + break; } + } + } - batch.Clear(); + private void DrainAvailable(List batch) + { + while (batch.Count < _batchMax && _channel.Reader.TryRead(out var more)) + { + batch.Add(more); + } + } + + private void RaiseSessionAdded(List batch) + { + foreach (var snapshot in batch) + { + SessionAdded?.Invoke(snapshot); } } } diff --git a/src/Titanium.Inspector/ViewModels/AutoResponderViewModel.cs b/src/Titanium.Inspector/ViewModels/AutoResponderViewModel.cs index 2b3ce523d..5d7690bee 100644 --- a/src/Titanium.Inspector/ViewModels/AutoResponderViewModel.cs +++ b/src/Titanium.Inspector/ViewModels/AutoResponderViewModel.cs @@ -158,6 +158,9 @@ public bool TryMatch(string url, string? requestBody, out AutoResponderRule? mat return false; } + public bool TryMatch(string url, out AutoResponderRule? matched) + => TryMatch(url, requestBody: null, out matched); + private AutoResponderRule[] SnapshotRules() { lock (_rulesGate) @@ -168,9 +171,6 @@ private AutoResponderRule[] SnapshotRules() } } - public bool TryMatch(string url, out AutoResponderRule? matched) - => TryMatch(url, requestBody: null, out matched); - public bool TryRespond(SessionSnapshot session, out AutoResponderRule? matched) => TryMatch(session.Url, session.RequestBodyText, out matched); diff --git a/src/Titanium.Inspector/ViewModels/MainWindowViewModel.Sessions.cs b/src/Titanium.Inspector/ViewModels/MainWindowViewModel.Sessions.cs index 84117b783..1495290dd 100644 --- a/src/Titanium.Inspector/ViewModels/MainWindowViewModel.Sessions.cs +++ b/src/Titanium.Inspector/ViewModels/MainWindowViewModel.Sessions.cs @@ -603,15 +603,13 @@ private void OnSessionsBatchAdded(IReadOnlyList batch) return; } - foreach (var snapshot in batch) + // SessionUpdated may have raced ahead of this batched capture add and already + // inserted the row; never append the same snapshot twice. + foreach (var snapshot in batch.Where(snapshot => + SessionSearch.Matches(snapshot, SearchQuery, bodyMatcher: null) && + Sessions.IndexOf(snapshot) < 0)) { - // SessionUpdated may have raced ahead of this batched capture add and already - // inserted the row; never append the same snapshot twice. - if (SessionSearch.Matches(snapshot, SearchQuery, bodyMatcher: null) && - Sessions.IndexOf(snapshot) < 0) - { - Sessions.Add(snapshot); - } + Sessions.Add(snapshot); } RefreshSessionCountText(); @@ -820,15 +818,7 @@ private void RemoveVisibleByIds(HashSet ids) return; } - var removeCount = 0; - foreach (var session in Sessions) - { - if (ids.Contains(session.Id)) - { - removeCount++; - } - } - + var removeCount = Sessions.Count(session => ids.Contains(session.Id)); if (removeCount == 0) { return; @@ -842,16 +832,7 @@ private void RemoveVisibleByIds(HashSet ids) if (removeCount >= BulkGridEditThreshold && removeCount * 2 >= Sessions.Count) { - var keep = new List(Sessions.Count - removeCount); - foreach (var session in Sessions) - { - if (!ids.Contains(session.Id)) - { - keep.Add(session); - } - } - - ReplaceVisibleSessions(keep); + ReplaceVisibleSessions(Sessions.Where(session => !ids.Contains(session.Id)).ToList()); return; } diff --git a/src/Titanium.Inspector/ViewModels/MapRemoteViewModel.cs b/src/Titanium.Inspector/ViewModels/MapRemoteViewModel.cs index 2a621d96d..9ca09ea34 100644 --- a/src/Titanium.Inspector/ViewModels/MapRemoteViewModel.cs +++ b/src/Titanium.Inspector/ViewModels/MapRemoteViewModel.cs @@ -157,6 +157,9 @@ public bool TryRewrite(string url, string? requestBody, out string? rewritten, o return false; } + public bool TryRewrite(string url, out string? rewritten, out MapRemoteRule? matched) + => TryRewrite(url, requestBody: null, out rewritten, out matched); + private MapRemoteRule[] SnapshotRules() { lock (_rulesGate) @@ -167,9 +170,6 @@ private MapRemoteRule[] SnapshotRules() } } - public bool TryRewrite(string url, out string? rewritten, out MapRemoteRule? matched) - => TryRewrite(url, requestBody: null, out rewritten, out matched); - /// /// Rewrites using wildcard capture from /// into . A single trailing * in both match and target diff --git a/src/Titanium.Inspector/Views/ExcludedHostsWindow.axaml.cs b/src/Titanium.Inspector/Views/ExcludedHostsWindow.axaml.cs index 23b1ccbd3..f5eb82acb 100644 --- a/src/Titanium.Inspector/Views/ExcludedHostsWindow.axaml.cs +++ b/src/Titanium.Inspector/Views/ExcludedHostsWindow.axaml.cs @@ -10,7 +10,6 @@ namespace Titanium.Inspector.Views; public partial class ExcludedHostsWindow : Window { private readonly SettingsService _settings; - private readonly bool _readOnly; private readonly Action? _onSaved; private readonly InterceptionService? _interception; private bool _saved; @@ -27,7 +26,6 @@ public ExcludedHostsWindow( InterceptionService? interception = null) { _settings = settings; - _readOnly = readOnly; _onSaved = onSaved; _interception = interception; InitializeComponent(); diff --git a/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs b/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs index d2de15548..0ba7da5e7 100644 --- a/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs +++ b/src/Titanium.Web.Proxy/Handlers/H1TerminateFastForward.cs @@ -26,7 +26,7 @@ namespace Titanium.Web.Proxy; /// Signals that H1 terminate-lite cannot finish this exchange (typically a 1xx interim response) /// and the caller should fall through to the full session path without treating it as a failure. /// -internal sealed class H1TerminateLiteFallbackException : Exception +internal sealed class H1TerminateLiteFallbackException : Exception // NOSONAR S3871 -- Internal control-flow signal for the terminate-lite fallback, not a public error contract. { public H1TerminateLiteFallbackException(string message) : base(message) { @@ -211,7 +211,7 @@ internal bool CanUseH1TerminateLite(ProxyEndPoint endPoint, Request request, boo if (response.StatusCode is >= 100 and <= 199) { // Full session path has the interim 1xx loop; keep the origin connection for it. - closeConnection = false; + // closeConnection is already false, so the fallback catch releases the socket for reuse. throw new H1TerminateLiteFallbackException( "H1 terminate lite does not handle interim 1xx responses."); } @@ -424,7 +424,7 @@ await connection.Stream.CopyBodyAsync(response, false, clientStream, Transformat var response = http.Response; if (response.StatusCode is >= 100 and <= 199) { - closeConnection = false; + // closeConnection is already false, so the fallback catch releases the socket for reuse. throw new H1TerminateLiteFallbackException( "H1 terminate MITM lite does not handle interim 1xx responses."); } diff --git a/src/Titanium.Web.Proxy/Handlers/Http11ToHttp2BridgeHandler.cs b/src/Titanium.Web.Proxy/Handlers/Http11ToHttp2BridgeHandler.cs index db8d22a63..cdd3b9612 100644 --- a/src/Titanium.Web.Proxy/Handlers/Http11ToHttp2BridgeHandler.cs +++ b/src/Titanium.Web.Proxy/Handlers/Http11ToHttp2BridgeHandler.cs @@ -748,7 +748,6 @@ await clientStream.WriteBodyAsync(fastBody, response.IsChunked, exchange.Response.StreamBodyWriter = null; // Drain and release origin resources; the replacement body is unrelated. await originStreamBody(Stream.Null, cancellationToken); - originStreamBody = null; } if (response.Locked) diff --git a/src/Titanium.Web.Proxy/Handlers/Http2ToHttp11BridgeHandler.cs b/src/Titanium.Web.Proxy/Handlers/Http2ToHttp11BridgeHandler.cs index 32e88f448..7d4e30922 100644 --- a/src/Titanium.Web.Proxy/Handlers/Http2ToHttp11BridgeHandler.cs +++ b/src/Titanium.Web.Proxy/Handlers/Http2ToHttp11BridgeHandler.cs @@ -1135,9 +1135,10 @@ private static async ValueTask RelayStreamToClientAsync( try { var readVt = source.ReadAsync(buf.AsMemory(), CancellationToken.None); - read = readVt.IsCompletedSuccessfully - ? readVt.Result - : await readVt.ConfigureAwait(false); + if (readVt.IsCompletedSuccessfully) + read = readVt.Result; + else + read = await readVt.ConfigureAwait(false); } catch (Exception readEx) { diff --git a/src/Titanium.Web.Proxy/Http/HttpHeaderHygiene.cs b/src/Titanium.Web.Proxy/Http/HttpHeaderHygiene.cs index dabeea3ec..1510a3587 100644 --- a/src/Titanium.Web.Proxy/Http/HttpHeaderHygiene.cs +++ b/src/Titanium.Web.Proxy/Http/HttpHeaderHygiene.cs @@ -22,13 +22,10 @@ public static bool ContainsForbiddenDelimiter(string? value) { if (string.IsNullOrEmpty(value)) return false; - foreach (var c in value) - { - if (c is '\0' or '\r' or '\n') - return true; - } - return false; + // IndexOfAny is vectorized and allocation-free. A LINQ Any() walk would box a delegate + // on a path that runs for every header written to an HTTP/1.1 wire. + return value.AsSpan().IndexOfAny('\0', '\r', '\n') >= 0; } public static void ThrowIfForbidden(ByteString name, ByteString value) diff --git a/src/Titanium.Web.Proxy/Http2/Http2DeferredOutboundData.cs b/src/Titanium.Web.Proxy/Http2/Http2DeferredOutboundData.cs index b239749e1..16ccbdbf0 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2DeferredOutboundData.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2DeferredOutboundData.cs @@ -137,7 +137,7 @@ public void CancelStream(int streamId) /// runs after the lock is released with the same stream id and /// may remove the stream (which cancels this queue). /// - public bool TryDrain(Http2FlowController flow, Http2FrameWriter writer, + public bool TryDrain(Http2FlowController flow, Http2FrameWriter writer, // NOSONAR S3776 -- Drain holds the queue lock and must keep DATA frame order; splitting it risks a short-window reorder. Action? onEndStreamSent = null, Action? onEndStreamQueued = null) { var wrote = false; diff --git a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Headers.cs b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Headers.cs index ea23fb4a5..deb6146fd 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Headers.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Headers.cs @@ -55,7 +55,7 @@ internal partial class Http2Helper int maxDecodedHeaderListBytes, ILogger logger, Action removeAndFinalizeStream, - Func, ValueTask> lockedOutputWrite, + Func, ValueTask> lockedOutputWrite, // NOSONAR S1172 -- Kept so this dispatch stays argument-aligned with CopyHttp2FrameAsync. bool forceStaticHpackTable, Http2Settings localSettings, // NOSONAR S1172 -- retained for CopyHttp2FrameAsync call-site IL match. HeaderCollection headerDecodeScratch, diff --git a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Relay.cs b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Relay.cs index b9d20a312..2f101649e 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Relay.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.Relay.cs @@ -141,7 +141,7 @@ private static Task RelayCompressedWithOriginPoolAsync( // NOSONAR S107 -- Origi hbStreamId, blockToRelay, endStreamFlag, appendSuffix); } - private static async Task AssignOriginAndEnqueueAsync( + private static async Task AssignOriginAndEnqueueAsync( // NOSONAR S107 -- Cold origin assign keeps the relay signature explicit (no per-open context object). Http2ConnectionState connectionState, bool isClient, Http2Settings remoteSettings, @@ -151,11 +151,12 @@ private static async Task AssignOriginAndEnqueueAsync( { var assignTask = connectionState.OriginRelayPool! .AssignStreamAsync(hbStreamId, cancellationToken); + // AsTask consumes the ValueTask. Await that Task; a second await of assignTask is undefined. var tracked = assignTask.AsTask(); connectionState.PendingOriginAssignments[hbStreamId] = tracked; try { - var assignment = await assignTask.ConfigureAwait(false); + var assignment = await tracked.ConfigureAwait(false); EnqueueRelayedHeaderBlock(connectionState, isClient, remoteSettings, assignment.OriginStreamId, blockToRelay, endStreamFlag, appendSuffix, assignment.Leg.Writer, assignment.Leg.WriteLock, assignment.Leg.Stream); diff --git a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.cs b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.cs index efa743269..b0627f52e 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2Helper.Copy.cs @@ -684,16 +684,13 @@ async Task TrySendGracefulGoAwayAsync() { if (length > 0) ArrayPool.Shared.Return(payloadRented); - if (dataEndStream) + // already RequestClosed; may now finalize if response half is done + if (dataEndStream && compressedDataState.IsClosed) { - // already RequestClosed; may now finalize if response half is done - if (compressedDataState.IsClosed) - { - connectionState.OriginRelayPool?.ReleaseStream(dataStreamId); - connectionState.RemoveStream(dataStreamId); - ScheduleFinalize(compressedDataState, onAfterResponse, logger, - connectionState); - } + connectionState.OriginRelayPool?.ReleaseStream(dataStreamId); + connectionState.RemoveStream(dataStreamId); + ScheduleFinalize(compressedDataState, onAfterResponse, logger, + connectionState); } continue; @@ -798,7 +795,7 @@ void EnqueueWireFrame(ReadOnlySpan payload, bool endStream) if (ownedPayload) payloadRented = Array.Empty(); // already returned ReportException(logger, new ProxyHttpException( - "HTTP/2 deferred DATA queue exceeded its per-stream cap.", null, null)); + DeferredDataQueueCapExceededMessage, null, null)); await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), new byte[9], peerStreamId != 0 ? peerStreamId : dataStreamId, Http2ErrorCode.EnhanceYourCalm, input)); @@ -842,7 +839,7 @@ await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), { ArrayPool.Shared.Return(payloadRented); ReportException(logger, new ProxyHttpException( - "HTTP/2 deferred DATA queue exceeded its per-stream cap.", null, null)); + DeferredDataQueueCapExceededMessage, null, null)); await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), new byte[9], peerStreamId != 0 ? peerStreamId : dataStreamId, Http2ErrorCode.EnhanceYourCalm, input)); @@ -863,7 +860,7 @@ await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), { ArrayPool.Shared.Return(payloadRented); ReportException(logger, new ProxyHttpException( - "HTTP/2 deferred DATA queue exceeded its per-stream cap.", null, null)); + DeferredDataQueueCapExceededMessage, null, null)); await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), new byte[9], peerStreamId != 0 ? peerStreamId : dataStreamId, Http2ErrorCode.EnhanceYourCalm, input)); @@ -1685,7 +1682,7 @@ await lockedOwnLegWrite(() => SendRstStreamAsync( else if (queued == QueueSendDataResult.CapExceeded) { ReportException(logger, new ProxyHttpException( - "HTTP/2 deferred DATA queue exceeded its per-stream cap.", null, args)); + DeferredDataQueueCapExceededMessage, null, args)); await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), new byte[9], streamId, Http2ErrorCode.EnhanceYourCalm, input)); RemoveAndFinalizeStream(streamId); @@ -2310,7 +2307,7 @@ await lockedOwnLegWrite(async () => || absorbState.ResponseClosed; if (responseStillInFlight) { - sendPacket = false; + // continue below skips the sendPacket check for this frame. connectionState.ServerOutboundDeferred.CancelStream(streamId); absorbState.RequestClosed = true; if (absorbState.IsClosed) @@ -2718,7 +2715,7 @@ void EnqueueNonRelayWire(ReadOnlySpan payload, bool endStreamFlag) async ValueTask RejectDeferredCapAsync() { ReportException(logger, new ProxyHttpException( - "HTTP/2 deferred DATA queue exceeded its per-stream cap.", null, args)); + DeferredDataQueueCapExceededMessage, null, args)); await lockedOwnLegWrite(() => SendRstStreamAsync(new Http2FrameHeader(), new byte[9], streamId, Http2ErrorCode.EnhanceYourCalm, input)); // Cap overflow must drop the stream. Leaving it tracked stalls the peer diff --git a/src/Titanium.Web.Proxy/Http2/Http2Helper.Send.cs b/src/Titanium.Web.Proxy/Http2/Http2Helper.Send.cs index 29f36e403..ba61fcfb0 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2Helper.Send.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2Helper.Send.cs @@ -115,7 +115,7 @@ private static void QueueDataFrame(Http2ConnectionState connectionState, Stream /// Off-loop variant used by : may await flow-control credit because it /// does not run on the shared frame reader. /// - private static async ValueTask QueueSendDataAsync(Http2ConnectionState connectionState, bool towardServer, + private static async ValueTask QueueSendDataAsync(Http2ConnectionState connectionState, bool towardServer, // NOSONAR S107 -- DATA send keeps frame fields explicit; a context object would allocate on this path. SemaphoreSlim writeLock, int streamId, ReadOnlyMemory data, bool endStream, int maxFrameSize, Http2FlowController flow, Stream output, CancellationToken cancellationToken) { @@ -154,7 +154,7 @@ private static async ValueTask QueueSendDataAsync(Http2ConnectionState connectio /// must reset the stream (silently dropping them would hang the peer). /// /// - private static QueueSendDataResult QueueSendData(Http2ConnectionState connectionState, bool towardServer, + private static QueueSendDataResult QueueSendData(Http2ConnectionState connectionState, bool towardServer, // NOSONAR S107, S3776 -- Per-frame DATA queue shares flow-control state; splitting or boxing the args would change the send path. SemaphoreSlim writeLock, int streamId, ReadOnlyMemory data, bool endStream, int maxFrameSize, Http2FlowController flow, Http2DeferredOutboundData deferred, Stream output) { @@ -271,7 +271,7 @@ internal static void QueueRstStreamFrame(Http2ConnectionState connectionState, S /// would let this block overtake earlier-encoded HEADERS still queued on the dedicated writer, /// and the peer's HPACK decoder would desynchronize (COMPRESSION_ERROR). /// - internal static void QueueSendTrailer(Http2ConnectionState connectionState, bool towardServer, + internal static void QueueSendTrailer(Http2ConnectionState connectionState, bool towardServer, // NOSONAR S107 -- Trailer encode keeps the same explicit frame fields as QueueSendHeader. SemaphoreSlim writeLock, Http2Settings settings, Http2FrameHeader frameHeader, byte[] frameHeaderBuffer, int streamId, HeaderCollection trailingHeaders, bool endStream, Stream output) { @@ -433,7 +433,7 @@ private static ValueTask WriteHeaderBlockAsync(Http2FrameHeader frameHeader, byt hasPriority, data, maxFrameSize, output); } - private static async ValueTask WriteHeaderBlockMultiAsync(Http2FrameHeader frameHeader, + private static async ValueTask WriteHeaderBlockMultiAsync(Http2FrameHeader frameHeader, // NOSONAR S107 -- CONTINUATION writer keeps the same explicit frame fields as WriteHeaderBlockAsync. byte[] frameHeaderBuffer, int streamId, Http2FrameType type, bool endStream, bool hasPriority, ReadOnlyMemory data, int maxFrameSize, Stream output) { @@ -878,7 +878,7 @@ internal static void EnqueueControlFrame(Http2FrameWriter writer, Http2FrameType writer.EnqueueRented(rented, total); } - private static ValueTask AsValueTask(Task task) => new(task); + private static ValueTask AsValueTask(Task task) => new(task); // NOSONAR S1144 -- Reflection test seam for the completed-task ValueTask wrapper. /// /// Writes two buffers back-to-back without an async state machine when both complete synchronously. @@ -954,7 +954,7 @@ internal static async Task EmitInterimResponseAsync(SessionEventArgs args, int s /// HTTP/2 frames the body with DATA/END_STREAM (Transfer-Encoding is never used over h2), so the /// chunked header is always stripped regardless of which shape applies. /// - internal static async Task EmitSyntheticResponseAsync(SessionEventArgs args, int streamId, + internal static async Task EmitSyntheticResponseAsync(SessionEventArgs args, int streamId, // NOSONAR S107 -- Synthetic response keeps the callerโ€™s frame buffers explicit. Http2ConnectionState connectionState, Stream clientStream, CancellationToken cancellationToken, Func? onAfterResponse = null, ILogger? logger = null, ReadOnlyMemory? wireBody = null) @@ -1075,7 +1075,7 @@ await EmitBufferedSyntheticResponseAsync(response, streamId, connectionState, fr /// Emits HEADERS + DATA from an already-buffered wire body without requiring /// (coalesce path for unread MITM lite / reverse). /// - private static async Task EmitBufferedSyntheticResponseAsync(Response response, int streamId, + private static async Task EmitBufferedSyntheticResponseAsync(Response response, int streamId, // NOSONAR S107 -- Buffered synthetic emit keeps the callerโ€™s frame buffers explicit. Http2ConnectionState connectionState, Http2FrameHeader frameHeader, byte[] frameHeaderBuffer, Stream clientStream, ReadOnlyMemory wireBody, CancellationToken cancellationToken) { diff --git a/src/Titanium.Web.Proxy/Http2/Http2Helper.cs b/src/Titanium.Web.Proxy/Http2/Http2Helper.cs index 1d10b9c07..84308a69f 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2Helper.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2Helper.cs @@ -46,6 +46,8 @@ internal partial class Http2Helper private static readonly byte[] ConnectMethodBytes = "CONNECT"u8.ToArray(); private const string SyntheticResponseFailedMessage = "HTTP/2 synthetic response failed"; + private const string DeferredDataQueueCapExceededMessage = + "HTTP/2 deferred DATA queue exceeded its per-stream cap."; /// /// Connection-level WINDOW_UPDATE increment matching Chrome/Edge (0xEF0001). Grows the peer's diff --git a/src/Titanium.Web.Proxy/Http2/Http2OriginConnection.cs b/src/Titanium.Web.Proxy/Http2/Http2OriginConnection.cs index f7a4f0842..5b5c8f792 100644 --- a/src/Titanium.Web.Proxy/Http2/Http2OriginConnection.cs +++ b/src/Titanium.Web.Proxy/Http2/Http2OriginConnection.cs @@ -1317,44 +1317,69 @@ private void ApplySettings(ReadOnlySpan payload) { var identifier = (payload[i] << 8) | payload[i + 1]; var value = (int)BinaryPrimitives.ReadUInt32BigEndian(payload.Slice(i + 2, 4)); + if (!TryApplySetting(identifier, value)) + return; + } + } - if (identifier == (int)Http2SettingsId.HeaderTableSize) - originSettings.UpdateHeaderTableSize(value); - else if (identifier == (int)Http2SettingsId.MaxFrameSize) - { - // RFC 7540 ยง6.5.2: values outside [16384, 16777215] are a connection-level PROTOCOL_ERROR. - if (value < 16384 || value > 16777215) - { - Fail(new IOException( - $"HTTP/2 protocol error: SETTINGS_MAX_FRAME_SIZE value {value} is out of range [16384, 16777215].")); - return; - } + /// Returns false when the setting is a connection error and the rest of the frame must be ignored. + private bool TryApplySetting(int identifier, int value) + { + if (identifier == (int)Http2SettingsId.HeaderTableSize) + originSettings.UpdateHeaderTableSize(value); + else if (identifier == (int)Http2SettingsId.MaxFrameSize) + { + if (!TryApplyMaxFrameSize(value)) + return false; + } + else if (identifier == (int)Http2SettingsId.InitialWindowSize) + { + if (!TryApplyInitialWindowSize(value)) + return false; + } + else if (identifier == (int)Http2SettingsId.MaxConcurrentStreams) + originSettings.MaxConcurrentStreams = value; + else if (identifier == (int)Http2SettingsId.EnableConnectProtocol) + ApplyEnableConnectProtocolSetting(value); - originSettings.MaxFrameSize = value; - } - else if (identifier == (int)Http2SettingsId.InitialWindowSize) - { - // RFC 7540 ยง6.5.2: values above 2^31-1 are a connection-level FLOW_CONTROL_ERROR. - // A wire value > 2^31-1 wraps to a negative int when cast; checking < 0 catches that. - if (value < 0) - { - Fail(new IOException( - $"HTTP/2 protocol error: SETTINGS_INITIAL_WINDOW_SIZE value exceeds the maximum of 2,147,483,647.")); - return; - } + return true; + } - if (sendFlow.OnInitialWindowSizeChanged(value)) - { - Fail(new IOException( - "HTTP/2 protocol error: SETTINGS_INITIAL_WINDOW_SIZE drove a stream window above 2^31-1.")); - return; - } - } - else if (identifier == (int)Http2SettingsId.MaxConcurrentStreams) - originSettings.MaxConcurrentStreams = value; - else if (identifier == (int)Http2SettingsId.EnableConnectProtocol) - ApplyEnableConnectProtocolSetting(value); + /// RFC 7540 ยง6.5.2: values outside [16384, 16777215] are a connection-level PROTOCOL_ERROR. + private bool TryApplyMaxFrameSize(int value) + { + if (value < 16384 || value > 16777215) + { + Fail(new IOException( + $"HTTP/2 protocol error: SETTINGS_MAX_FRAME_SIZE value {value} is out of range [16384, 16777215].")); + return false; } + + originSettings.MaxFrameSize = value; + return true; + } + + /// + /// RFC 7540 ยง6.5.2: values above 2^31-1 are a connection-level FLOW_CONTROL_ERROR. + /// A wire value > 2^31-1 wraps to a negative int when cast; checking < 0 catches that. + /// + private bool TryApplyInitialWindowSize(int value) + { + if (value < 0) + { + Fail(new IOException( + "HTTP/2 protocol error: SETTINGS_INITIAL_WINDOW_SIZE value exceeds the maximum of 2,147,483,647.")); + return false; + } + + if (sendFlow.OnInitialWindowSizeChanged(value)) + { + Fail(new IOException( + "HTTP/2 protocol error: SETTINGS_INITIAL_WINDOW_SIZE drove a stream window above 2^31-1.")); + return false; + } + + return true; } /// RFC 8441 ยง3: value MUST be 0 or 1; a sender MUST NOT send 0 after previously sending 1. diff --git a/src/Titanium.Web.Proxy/Http3/H3H1QpackResponseReader.cs b/src/Titanium.Web.Proxy/Http3/H3H1QpackResponseReader.cs index 6610fa039..5a21b66c3 100644 --- a/src/Titanium.Web.Proxy/Http3/H3H1QpackResponseReader.cs +++ b/src/Titanium.Web.Proxy/Http3/H3H1QpackResponseReader.cs @@ -42,23 +42,15 @@ internal readonly struct Result var isChunked = false; var connectionClose = false; - while (reader.TryConsumeHeaderLineFromBuffer(out var emptyLine, out var lineBytes)) - { - if (emptyLine) - return Finish(builder, contentLength, isChunked, connectionClose); - ConsumeLine(lineBytes, builder, ref contentLength, ref isChunked, ref connectionClose, - alsoPopulate); - } + if (TryFinishFromBuffer(reader, builder, ref contentLength, ref isChunked, ref connectionClose, + alsoPopulate, out var buffered)) + return buffered; while (true) { - while (reader.TryConsumeHeaderLineFromBuffer(out var emptyLine, out var lineBytes)) - { - if (emptyLine) - return Finish(builder, contentLength, isChunked, connectionClose); - ConsumeLine(lineBytes, builder, ref contentLength, ref isChunked, ref connectionClose, - alsoPopulate); - } + if (TryFinishFromBuffer(reader, builder, ref contentLength, ref isChunked, ref connectionClose, + alsoPopulate, out buffered)) + return buffered; // Prefer byte-buffer fill + TryConsume on the hot path. When the buffer is full without // an LF (or EOF leaves a partial line), fall back to ReadLine spanning (cold path). @@ -81,6 +73,31 @@ internal readonly struct Result } } + private static bool TryFinishFromBuffer( + HttpStream reader, + QpackEncoder.ResponseBlockBuilder builder, + ref long contentLength, + ref bool isChunked, + ref bool connectionClose, + HeaderCollection? alsoPopulate, + out Result? result) + { + while (reader.TryConsumeHeaderLineFromBuffer(out var emptyLine, out var lineBytes)) + { + if (emptyLine) + { + result = Finish(builder, contentLength, isChunked, connectionClose); + return true; + } + + ConsumeLine(lineBytes, builder, ref contentLength, ref isChunked, ref connectionClose, + alsoPopulate); + } + + result = null; + return false; + } + private static Result Finish( QpackEncoder.ResponseBlockBuilder builder, long contentLength, diff --git a/src/Titanium.Web.Proxy/Http3/Http3Frame.cs b/src/Titanium.Web.Proxy/Http3/Http3Frame.cs index cd3979af3..abe86afe5 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3Frame.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3Frame.cs @@ -132,6 +132,15 @@ public static ValueTask WriteAsync( return WriteLargeAsync(stream, frameType, payload, completeWrites, cancellationToken); } + /// + /// Writes a zero-payload frame (used for GOAWAY and some SETTINGS without parameters). + /// + public static ValueTask WriteAsync( + Stream stream, + ulong frameType, + CancellationToken cancellationToken) + => WriteAsync(stream, frameType, ReadOnlyMemory.Empty, cancellationToken); + /// /// Copies the frame into and does not release it until the /// write has been consumed. Sync completion calls GetResult @@ -240,15 +249,6 @@ private static async ValueTask AwaitWriteAndReturnAsync(ValueTask writeVt, byte[ } } - /// - /// Writes a zero-payload frame (used for GOAWAY and some SETTINGS without parameters). - /// - public static ValueTask WriteAsync( - Stream stream, - ulong frameType, - CancellationToken cancellationToken) - => WriteAsync(stream, frameType, ReadOnlyMemory.Empty, cancellationToken); - /// /// Writes HEADERS then DATA as a single stream write when the combined frames fit a modest /// buffer. Used for already-buffered medium/large bodies (lossy / bodies โ‰ฅ 16 KiB) so the diff --git a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs index 038327ac6..c8a5082d2 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs @@ -57,6 +57,29 @@ internal static async Task ForwardOverHttp2FastAsync( if (request.Authority.Length == 0 && !string.IsNullOrEmpty(request.Host)) request.Authority = request.Host.GetByteString(); + var origin = ResolveFastHttp2Origin(fwd, request, server); + + try + { + var target = new Http2OriginTarget( + origin.Host, origin.Port, origin.ConnectHost, origin.ConnectPort, origin.PoolKey); + var exchange = await SendHttp2OriginFastWithGoAwayRetryAsync( + server, logger, fwd, target, coldOpenSessionFactory, cancellationToken); + + StampForwardedHttp2Response(fwd, request, exchange); + } + finally + { + request.HttpVersion = clientHttpVersion; + } + } + + private readonly record struct FastHttp2Origin( + string Host, int Port, string PoolKey, string? ConnectHost, int? ConnectPort); + + private static FastHttp2Origin ResolveFastHttp2Origin( + H3H2FastForward fwd, Request request, ProxyServer server) + { string? connectHost = null; int? connectPort = null; if (fwd.ProxyEndPoint is TransparentBaseProxyEndPoint transparent @@ -66,75 +89,65 @@ internal static async Task ForwardOverHttp2FastAsync( connectPort = transparent.ForwardPort; } - string host; - int port; - string poolKey; if (fwd.ProxyEndPoint is TransparentBaseProxyEndPoint fastEp && fastEp.CachedH2OriginPoolKey != null && request.Authority.Equals(fastEp.CachedH2OriginAuthority)) { - host = fastEp.CachedH2OriginHost!; - port = fastEp.CachedH2OriginPort; - poolKey = fastEp.CachedH2OriginPoolKey; - } - else - { - (host, port) = ResolveH2OriginAuthority(request); - poolKey = Http2OriginConnectionPool.BuildPoolKey( - server, fwd.ProxyEndPoint, fwd.CustomUpStreamProxy, fwd.UpStreamEndPoint, - host, port, connectHost, connectPort); - if (fwd.ProxyEndPoint is TransparentBaseProxyEndPoint cacheEp) - { - cacheEp.CachedH2OriginAuthority = request.Authority; - cacheEp.CachedH2OriginHost = host; - cacheEp.CachedH2OriginPort = port; - cacheEp.CachedH2OriginPoolKey = poolKey; - } + return new FastHttp2Origin( + fastEp.CachedH2OriginHost!, fastEp.CachedH2OriginPort, fastEp.CachedH2OriginPoolKey, + connectHost, connectPort); } - try + var (host, port) = ResolveH2OriginAuthority(request); + var poolKey = Http2OriginConnectionPool.BuildPoolKey( + server, fwd.ProxyEndPoint, fwd.CustomUpStreamProxy, fwd.UpStreamEndPoint, + host, port, connectHost, connectPort); + if (fwd.ProxyEndPoint is TransparentBaseProxyEndPoint cacheEp) { - var target = new Http2OriginTarget(host, port, connectHost, connectPort, poolKey); - var exchange = await SendHttp2OriginFastWithGoAwayRetryAsync( - server, logger, fwd, target, coldOpenSessionFactory, cancellationToken); + cacheEp.CachedH2OriginAuthority = request.Authority; + cacheEp.CachedH2OriginHost = host; + cacheEp.CachedH2OriginPort = port; + cacheEp.CachedH2OriginPoolKey = poolKey; + } - var response = exchange.Response; - response.HttpVersion = HttpHeader.Version30; - response.RequestMethod = request.Method; - if (response.StreamBodyWriter == null) - { - response.IsBodyRead = true; - response.ContentLength = exchange.Body.Length; - // Interception-off: skip response.Body โ€” emit via Preencoded HEADERS+DATA. - if (fwd.PreencodedQpackHeaders == null) - fwd.PreencodedQpackHeaders = QpackEncoder.EncodeResponse(response, context: null); - fwd.PreencodedBody = exchange.Body; - fwd.PreencodedBodyLength = exchange.Body.Length; - // MITM unchanged-lite seeds Response before the call. Stamp Body onto the - // exchange Response (which replaces that seed) so BeforeResponse / - // FinishMitm fallback can read it โ€” match Tcp ForwardOverTcpFastAsync. - // Reverse (Response null) keeps skip-Body coalesce. - if (fwd.Response != null) - { - response.Body = exchange.Body; - response.BodyIsWireEncoded = true; - response.IsBodyReceived = true; - } - } - // else: leave StreamBodyWriter + IsBodyRead alone so SendResponseAsync streams DATA. + return new FastHttp2Origin(host, port, poolKey, connectHost, connectPort); + } - if (exchange.TrailingHeaders != null && !response.HasTrailingHeaders) + private static void StampForwardedHttp2Response( + H3H2FastForward fwd, Request request, Http2OriginExchange exchange) + { + var response = exchange.Response; + response.HttpVersion = HttpHeader.Version30; + response.RequestMethod = request.Method; + if (response.StreamBodyWriter == null) + { + response.IsBodyRead = true; + response.ContentLength = exchange.Body.Length; + // Interception-off: skip response.Body โ€” emit via Preencoded HEADERS+DATA. + if (fwd.PreencodedQpackHeaders == null) + fwd.PreencodedQpackHeaders = QpackEncoder.EncodeResponse(response, context: null); + fwd.PreencodedBody = exchange.Body; + fwd.PreencodedBodyLength = exchange.Body.Length; + // MITM unchanged-lite seeds Response before the call. Stamp Body onto the + // exchange Response (which replaces that seed) so BeforeResponse / + // FinishMitm fallback can read it โ€” match Tcp ForwardOverTcpFastAsync. + // Reverse (Response null) keeps skip-Body coalesce. + if (fwd.Response != null) { - foreach (var header in exchange.TrailingHeaders) - response.TrailingHeaders.AddHeader(header); + response.Body = exchange.Body; + response.BodyIsWireEncoded = true; + response.IsBodyReceived = true; } - - fwd.Response = response; } - finally + // else: leave StreamBodyWriter + IsBodyRead alone so SendResponseAsync streams DATA. + + if (exchange.TrailingHeaders != null && !response.HasTrailingHeaders) { - request.HttpVersion = clientHttpVersion; + foreach (var header in exchange.TrailingHeaders) + response.TrailingHeaders.AddHeader(header); } + + fwd.Response = response; } private static async Task SendHttp2OriginFastWithGoAwayRetryAsync( diff --git a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Tcp.cs b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Tcp.cs index 1927fb6d6..9a3b2813c 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Tcp.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Tcp.cs @@ -689,11 +689,12 @@ async ValueTask CopyResponseAsync() } // Keep request upload live while copying the response (true duplex). - var copyVt = CopyResponseAsync(); + // Each branch consumes its own ValueTask once. The no-upload path awaits + // directly so it does not allocate the Task that WhenAll needs. if (pendingUpload != null) - await Task.WhenAll(pendingUpload, copyVt.AsTask()); + await Task.WhenAll(pendingUpload, CopyResponseAsync().AsTask()); else - await copyVt; + await CopyResponseAsync(); }; } else if (uploadTask != null) diff --git a/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs b/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs index cce2cf555..00eb1814c 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs @@ -366,11 +366,12 @@ SessionEventArgs ColdOpenSessionFactory() var stub = new SessionEventArgs(server, endPoint, nullStream, null, stubCts); stub.IsFastPath = true; stub.CustomUpStreamProxy = fwd.CustomUpStreamProxy; - stub.UpstreamHttpProtocol = mitmUnchangedH3H3 - ? UpstreamHttpProtocol.Http3 - : mitmUnchangedH3H2 - ? UpstreamHttpProtocol.Http2 - : UpstreamHttpProtocol.Http11; + if (mitmUnchangedH3H3) + stub.UpstreamHttpProtocol = UpstreamHttpProtocol.Http3; + else if (mitmUnchangedH3H2) + stub.UpstreamHttpProtocol = UpstreamHttpProtocol.Http2; + else + stub.UpstreamHttpProtocol = UpstreamHttpProtocol.Http11; return stub; } @@ -716,7 +717,7 @@ await SendPreencodedResponseAsync(stream, fwd.PreencodedQpackHeaders, try { if (!cts.IsCancellationRequested) - cts.Cancel(); + await cts.CancelAsync().ConfigureAwait(false); } catch (ObjectDisposedException) { diff --git a/tests/Titanium.Inspector.Tests/DeferredInspectorUiCoverageTests.cs b/tests/Titanium.Inspector.Tests/DeferredInspectorUiCoverageTests.cs index 3717212bc..ce847db69 100644 --- a/tests/Titanium.Inspector.Tests/DeferredInspectorUiCoverageTests.cs +++ b/tests/Titanium.Inspector.Tests/DeferredInspectorUiCoverageTests.cs @@ -11,6 +11,7 @@ namespace Titanium.Inspector.Tests; [TestClass] public class DeferredInspectorUiCoverageTests { + private static readonly int[] DeferredUiOrder = [1, 2]; [TestMethod] public async Task DeferredUi_PresentsOnTheNextLiveTurn_AndPostsWhileTheAppIsUp() { @@ -39,7 +40,7 @@ await session.Dispatch(() => { // StatusText presents a stashed queue once the dispatcher is live. _ = vm.StatusText; - CollectionAssert.AreEqual(new[] { 1, 2 }, order); + CollectionAssert.AreEqual(DeferredUiOrder, order); var inline = 0; vm.QueueLiveUi(() => inline++); diff --git a/tests/Titanium.Inspector.Tests/LiveSessionUpdateUxTests.cs b/tests/Titanium.Inspector.Tests/LiveSessionUpdateUxTests.cs index 7322ad7e8..5e24e3608 100644 --- a/tests/Titanium.Inspector.Tests/LiveSessionUpdateUxTests.cs +++ b/tests/Titanium.Inspector.Tests/LiveSessionUpdateUxTests.cs @@ -117,7 +117,7 @@ public void OpaqueReason_RaisesInpc() } [TestMethod] - public void SessionUpdated_BeforeBatchedCapture_DoesNotDuplicateGridRow() + public async Task SessionUpdated_BeforeBatchedCapture_DoesNotDuplicateGridRow() { var path = Path.Combine(Path.GetTempPath(), "twp-dup-race-" + Guid.NewGuid().ToString("N") + ".json"); try @@ -155,7 +155,7 @@ public void SessionUpdated_BeforeBatchedCapture_DoesNotDuplicateGridRow() var deadline = DateTime.UtcNow.AddSeconds(2); while (vm.Sessions.Count == 0 && DateTime.UtcNow < deadline) { - Thread.Sleep(20); + await Task.Delay(20); } Assert.AreEqual(1, vm.Sessions.Count); diff --git a/tests/Titanium.Web.Proxy.IntegrationTests/Http2ContinuationAndAbuseBudgetTests.cs b/tests/Titanium.Web.Proxy.IntegrationTests/Http2ContinuationAndAbuseBudgetTests.cs index fe6b92ddd..9a1812f95 100644 --- a/tests/Titanium.Web.Proxy.IntegrationTests/Http2ContinuationAndAbuseBudgetTests.cs +++ b/tests/Titanium.Web.Proxy.IntegrationTests/Http2ContinuationAndAbuseBudgetTests.cs @@ -24,6 +24,8 @@ namespace Titanium.Web.Proxy.IntegrationTests; [TestClass] public class Http2ContinuationAndAbuseBudgetTests { + private static readonly int[] StreamsWithinAckedCap = [1, 3]; + private static readonly int[] StreamPastAckedCap = [5]; private static TestServer sharedServer = null!; [ClassInitialize] @@ -455,7 +457,7 @@ async Task OpenGetAsync(int streamId) return null; } - var earlyRefusal = await WaitForRstAsync(new[] { 1, 3 }, TimeSpan.FromMilliseconds(400)); + var earlyRefusal = await WaitForRstAsync(StreamsWithinAckedCap, TimeSpan.FromMilliseconds(400)); Assert.IsNull(earlyRefusal, "Streams within the ACKed cap must not be refused because a later SETTINGS lowered the cap."); @@ -463,7 +465,7 @@ await rawClient.Connection.WriteFrameAsync(Http2FrameType.Settings, 0, Http2Fram Array.Empty()); await OpenGetAsync(5); - var refused = await WaitForRstAsync(new[] { 5 }, TimeSpan.FromSeconds(3)); + var refused = await WaitForRstAsync(StreamPastAckedCap, TimeSpan.FromSeconds(3)); Assert.AreEqual(5, refused, "After the second SETTINGS is ACKed, a new stream past that cap must be REFUSED_STREAM."); diff --git a/tests/Titanium.Web.Proxy.UnitTests/HandlerAndProtocolHelperCoverageTests.cs b/tests/Titanium.Web.Proxy.UnitTests/HandlerAndProtocolHelperCoverageTests.cs index 0f895ad8d..c8c27a872 100644 --- a/tests/Titanium.Web.Proxy.UnitTests/HandlerAndProtocolHelperCoverageTests.cs +++ b/tests/Titanium.Web.Proxy.UnitTests/HandlerAndProtocolHelperCoverageTests.cs @@ -691,7 +691,7 @@ public async Task WriteTerminateLiteMiddlewareResponse_ConnectionCloseWhenClient var req = new Request { Method = "GET", HttpVersion = HttpHeader.Version11 }; req.Headers.AddHeader("Connection", "close"); - var writeMw = typeof(ProxyServer).GetMethod("WriteTerminateLiteMiddlewareResponseAsync", PrivateStatic)!; + var writeMw = typeof(ProxyServer).GetMethod("WriteTerminateLiteMiddlewareResponseAsync", PrivateInstance)!; var ctx = new ProxyMiddlewareContext { Session = new object(), @@ -704,7 +704,7 @@ public async Task WriteTerminateLiteMiddlewareResponse_ConnectionCloseWhenClient var buf = new byte[2048]; try { accepted.Receive(buf); } catch { /* ignore */ } }); - await (Task)writeMw.Invoke(null, [clientStream, req, ctx, CancellationToken.None])!; + await (Task)writeMw.Invoke(proxy, [clientStream, req, ctx, CancellationToken.None])!; await drain; Assert.AreEqual(403, ctx.HandledStatusCode); Assert.IsTrue(ctx.IsHandled); diff --git a/tests/Titanium.Web.Proxy.UnitTests/Http2BufferedSendOrderingTests.cs b/tests/Titanium.Web.Proxy.UnitTests/Http2BufferedSendOrderingTests.cs index b9b1418c3..9d564c604 100644 --- a/tests/Titanium.Web.Proxy.UnitTests/Http2BufferedSendOrderingTests.cs +++ b/tests/Titanium.Web.Proxy.UnitTests/Http2BufferedSendOrderingTests.cs @@ -25,6 +25,7 @@ namespace Titanium.Web.Proxy.UnitTests; [TestClass] public class Http2BufferedSendOrderingTests { + private static readonly int[] ExpectedOriginHeaderStreamIds = [1, 3]; private sealed record Frame(byte Type, byte Flags, int StreamId, byte[] Payload); private sealed class Capture : Http2.Hpack.IHeaderListener @@ -175,7 +176,7 @@ public async Task SendBufferedRequestAfterAdmission_LaterStreamStartedFirst_Reac .Where(f => f.Type == (byte)Http2FrameType.Headers) .Select(f => f.StreamId) .ToArray(); - CollectionAssert.AreEqual(new[] { 1, 3 }, streamOrder, + CollectionAssert.AreEqual(ExpectedOriginHeaderStreamIds, streamOrder, "Origin must see HEADERS in increasing stream-id order."); var frames = ParseFrames(origin.ToArray()); diff --git a/tests/Titanium.Web.Proxy.UnitTests/SonarGateCoverageBumpTests.cs b/tests/Titanium.Web.Proxy.UnitTests/SonarGateCoverageBumpTests.cs index 3c5e43417..353155275 100644 --- a/tests/Titanium.Web.Proxy.UnitTests/SonarGateCoverageBumpTests.cs +++ b/tests/Titanium.Web.Proxy.UnitTests/SonarGateCoverageBumpTests.cs @@ -712,7 +712,10 @@ public async Task ReadRequestLine_PrefetchHttp10BlankEofAndCancel() { var blank = await s.ReadRequestLineWithResultAsync(); Assert.IsFalse(blank.Cancelled); + // Method is annotated non-nullable but a blank request line leaves it null. +#pragma warning disable MSTEST0025 Assert.IsNull(blank.Status.Method); +#pragma warning restore MSTEST0025 var next = await s.ReadRequestLine(); Assert.AreEqual("GET", next.Method); } @@ -720,7 +723,10 @@ public async Task ReadRequestLine_PrefetchHttp10BlankEofAndCancel() await using (var s = MakeClientStream([])) { var eof = await s.ReadRequestLine(); + // Method is annotated non-nullable but EOF leaves it null. +#pragma warning disable MSTEST0025 Assert.IsNull(eof.Method); +#pragma warning restore MSTEST0025 } var gate = new TaskCompletionSource(TaskCreationOptions.RunContinuationsAsynchronously); diff --git a/tests/Titanium.Web.Proxy.UnitTests/SonarNewCodeCoverageTests.cs b/tests/Titanium.Web.Proxy.UnitTests/SonarNewCodeCoverageTests.cs index ca5e8d47d..249e9a119 100644 --- a/tests/Titanium.Web.Proxy.UnitTests/SonarNewCodeCoverageTests.cs +++ b/tests/Titanium.Web.Proxy.UnitTests/SonarNewCodeCoverageTests.cs @@ -1741,7 +1741,7 @@ public async Task H1TerminateLite_MiddlewareAndLiveOriginForward() var clientStream = new HttpClientStream(proxy, clientConn, new NetworkStream(clientSock, ownsSocket: false), proxy.BufferPool, CancellationToken.None); - var writeMw = typeof(ProxyServer).GetMethod("WriteTerminateLiteMiddlewareResponseAsync", PrivateStatic)!; + var writeMw = typeof(ProxyServer).GetMethod("WriteTerminateLiteMiddlewareResponseAsync", PrivateInstance)!; var ctx = new ProxyMiddlewareContext { Session = new object(), @@ -1755,16 +1755,16 @@ public async Task H1TerminateLite_MiddlewareAndLiveOriginForward() var buf = new byte[1024]; try { accepted.Receive(buf); } catch { /* ignore */ } }); - await (Task)writeMw.Invoke(null, [clientStream, req, ctx, CancellationToken.None])!; + await (Task)writeMw.Invoke(proxy, [clientStream, req, ctx, CancellationToken.None])!; await drain; - var tryMw = typeof(ProxyServer).GetMethod("TryRunTerminateLiteMiddlewareAsync", PrivateStatic)!; + var tryMw = typeof(ProxyServer).GetMethod("TryRunTerminateLiteMiddlewareAsync", PrivateInstance)!; var handled = new HandleAllMiddleware(); - var keep = await (Task)tryMw.Invoke(null, + var keep = await (Task)tryMw.Invoke(proxy, [ep, clientStream, req, new IProxyMiddleware[] { handled }, CancellationToken.None])!; Assert.IsNotNull(keep); - var passthrough = await (Task)tryMw.Invoke(null, + var passthrough = await (Task)tryMw.Invoke(proxy, [ep, clientStream, req, Array.Empty(), CancellationToken.None])!; Assert.IsNull(passthrough); From 68147e5127b073ce33635aebf94bf96fed425354 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 16:49:56 +0530 Subject: [PATCH 16/24] Keep the EnsureBodiesLoadedAsync overloads adjacent. --- .../Services/SessionStore.cs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/Titanium.Inspector/Services/SessionStore.cs b/src/Titanium.Inspector/Services/SessionStore.cs index 380c88605..ffa5f7f6c 100644 --- a/src/Titanium.Inspector/Services/SessionStore.cs +++ b/src/Titanium.Inspector/Services/SessionStore.cs @@ -373,6 +373,15 @@ public async Task EnsureBodiesLoadedAsync(SessionSnapshot snapshot, Cancellation } } + public async Task EnsureBodiesLoadedAsync(IEnumerable snapshots, CancellationToken ct = default) + { + foreach (var snap in snapshots) + { + ct.ThrowIfCancellationRequested(); + await EnsureBodiesLoadedAsync(snap, ct).ConfigureAwait(false); + } + } + /// /// Under heavy capture, the spill writer may still be draining thousands of HARs. /// Keep waiting while work is queued; only mark missing once the channel is idle @@ -415,15 +424,6 @@ private async Task WaitForSpilledBodyAsync( return false; } - public async Task EnsureBodiesLoadedAsync(IEnumerable snapshots, CancellationToken ct = default) - { - foreach (var snap in snapshots) - { - ct.ThrowIfCancellationRequested(); - await EnsureBodiesLoadedAsync(snap, ct).ConfigureAwait(false); - } - } - /// /// For export: hydrate spilled bodies, invoke , then unload unless selected. /// From a3f6e9c6d1454a1494d0b300edefa8db4c95b588 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 4 Oct 2026 12:03:15 +0000 Subject: [PATCH 17/24] Update documentation --- ...y.Caching.HttpResponseCacheMiddleware.html | 10 +-- docs/api/Titanium.Web.Proxy.ProxyServer.html | 67 ++++++++++++++++++- docs/index.json | 4 +- docs/xrefmap.yml | 26 +++++++ 4 files changed, 99 insertions(+), 8 deletions(-) diff --git a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html index a7f8933d5..1c60b303a 100644 --- a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html +++ b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html @@ -128,7 +128,7 @@

      Constructors Edit this page - View Source + View Source

      HttpResponseCacheMiddleware(IHttpResponseCache, TimeSpan?)

      @@ -167,7 +167,7 @@

      Methods Edit this page - View Source + View Source

      InvokeAsync(ProxyMiddlewareContext, ProxyMiddlewareDelegate, CancellationToken)

      @@ -224,11 +224,11 @@
      Returns
      Edit this page - View Source + View Source

      TryCacheCurrentResponse(SessionEventArgs)

      -

      Call from AfterResponse when caching upstream 200 bodies.

      +

      Call from the session response path when a small 200 body is already buffered.

      Declaration
      @@ -268,7 +268,7 @@

      Implements

      Edit this page
    1. - View Source + View Source
    2. diff --git a/docs/api/Titanium.Web.Proxy.ProxyServer.html b/docs/api/Titanium.Web.Proxy.ProxyServer.html index 746e5e7a9..ae4b25aba 100644 --- a/docs/api/Titanium.Web.Proxy.ProxyServer.html +++ b/docs/api/Titanium.Web.Proxy.ProxyServer.html @@ -1603,6 +1603,39 @@
      Property Value
      + + | + Edit this page + + + View Source + + +

      HttpResponseCacheFiller

      +

      Fills the GET/HEAD response cache from a session that is already on the interception path. +Does not subscribe BeforeResponse or AfterResponse, so it does +not turn NeedsHttpInterception(ProxyEndPoint) on.

      +
      +
      +
      Declaration
      +
      +
      public Action<SessionEventArgs>? HttpResponseCacheFiller { get; set; }
      +
      +
      Property Value
      + + + + + + + + + + + + + +
      TypeDescription
      Action<SessionEventArgs>
      | Edit this page @@ -2521,6 +2554,38 @@
      Property Value
      + + | + Edit this page + + + View Source + + +

      ResponseHeaderContributor

      +

      Adds response headers on the way to the client without subscribing BeforeResponse. +Plus CORS uses this so a listener can stay on H1 terminate-lite.

      +
      +
      +
      Declaration
      +
      +
      public Action<Response>? ResponseHeaderContributor { get; set; }
      +
      +
      Property Value
      + + + + + + + + + + + + + +
      TypeDescription
      Action<Response>
      | Edit this page @@ -2812,7 +2877,7 @@
      Property Value
      Edit this page
      - View Source + View Source

      ThreadPoolWorkerThread

      diff --git a/docs/index.json b/docs/index.json index 6718f4924..6f8f40e84 100644 --- a/docs/index.json +++ b/docs/index.json @@ -7,7 +7,7 @@ "api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html": { "href": "api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html", "title": "Class HttpResponseCacheMiddleware | Titanium Web Proxy", - "summary": "Class HttpResponseCacheMiddleware GET/HEAD response cache middleware. Only allocated when placed in the middleware list; otherwise the hot path pays nothing. Inheritance object HttpResponseCacheMiddleware Implements IProxyMiddleware Inherited Members object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.ReferenceEquals(object, object) object.ToString() Namespace: Titanium.Web.Proxy.Caching Assembly: Titanium.Web.Proxy.dll Syntax public sealed class HttpResponseCacheMiddleware : IProxyMiddleware Constructors | Edit this page View Source HttpResponseCacheMiddleware(IHttpResponseCache, TimeSpan?) Declaration public HttpResponseCacheMiddleware(IHttpResponseCache cache, TimeSpan? defaultTtl = null) Parameters Type Name Description IHttpResponseCache cache TimeSpan? defaultTtl Methods | Edit this page View Source InvokeAsync(ProxyMiddlewareContext, ProxyMiddlewareDelegate, CancellationToken) Declaration public ValueTask InvokeAsync(ProxyMiddlewareContext context, ProxyMiddlewareDelegate next, CancellationToken cancellationToken) Parameters Type Name Description ProxyMiddlewareContext context ProxyMiddlewareDelegate next CancellationToken cancellationToken Returns Type Description ValueTask | Edit this page View Source TryCacheCurrentResponse(SessionEventArgs) Call from AfterResponse when caching upstream 200 bodies. Declaration public void TryCacheCurrentResponse(SessionEventArgs session) Parameters Type Name Description SessionEventArgs session Implements Titanium.Web.Proxy.Abstractions.Middleware.IProxyMiddleware" + "summary": "Class HttpResponseCacheMiddleware GET/HEAD response cache middleware. Only allocated when placed in the middleware list; otherwise the hot path pays nothing. Inheritance object HttpResponseCacheMiddleware Implements IProxyMiddleware Inherited Members object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.ReferenceEquals(object, object) object.ToString() Namespace: Titanium.Web.Proxy.Caching Assembly: Titanium.Web.Proxy.dll Syntax public sealed class HttpResponseCacheMiddleware : IProxyMiddleware Constructors | Edit this page View Source HttpResponseCacheMiddleware(IHttpResponseCache, TimeSpan?) Declaration public HttpResponseCacheMiddleware(IHttpResponseCache cache, TimeSpan? defaultTtl = null) Parameters Type Name Description IHttpResponseCache cache TimeSpan? defaultTtl Methods | Edit this page View Source InvokeAsync(ProxyMiddlewareContext, ProxyMiddlewareDelegate, CancellationToken) Declaration public ValueTask InvokeAsync(ProxyMiddlewareContext context, ProxyMiddlewareDelegate next, CancellationToken cancellationToken) Parameters Type Name Description ProxyMiddlewareContext context ProxyMiddlewareDelegate next CancellationToken cancellationToken Returns Type Description ValueTask | Edit this page View Source TryCacheCurrentResponse(SessionEventArgs) Call from the session response path when a small 200 body is already buffered. Declaration public void TryCacheCurrentResponse(SessionEventArgs session) Parameters Type Name Description SessionEventArgs session Implements Titanium.Web.Proxy.Abstractions.Middleware.IProxyMiddleware" }, "api/Titanium.Web.Proxy.Caching.MemoryHttpResponseCache.html": { "href": "api/Titanium.Web.Proxy.Caching.MemoryHttpResponseCache.html", @@ -552,7 +552,7 @@ "api/Titanium.Web.Proxy.ProxyServer.html": { "href": "api/Titanium.Web.Proxy.ProxyServer.html", "title": "Class ProxyServer | Titanium Web Proxy", - "summary": "Class ProxyServer Translates an HTTP/1.1 client connection onto an h2-only origin (Http2 with AllowHttpProtocolTranslation enabled - see ResolveHttp2ForClientAsync(SessionEventArgsBase, bool, string, int, string, int?, UpstreamHttpProtocol, bool, bool, CancellationToken, bool)), leasing one h2 stream per HTTP/1.1 request from a shared Titanium.Web.Proxy.Http2.Http2OriginConnection via Titanium.Web.Proxy.ProxyServer.Http2OriginConnectionPool rather than opening a new TCP/TLS connection for every request. Inheritance object ProxyServer Implements IDisposable Inherited Members object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString() Namespace: Titanium.Web.Proxy Assembly: Titanium.Web.Proxy.dll Syntax public class ProxyServer : IDisposable Remarks This re-implements the HTTP/1.1 client read loop (request line, headers, BeforeRequest, authorization, header preparation, CancelRequest/replaced-response handling) rather than reusing the private HandleHttpSessionRequest/HandleHttpSessionResponse methods, because those methods send/receive over TcpServerConnection.Stream using the raw HTTP/1.1 wire format, which an h2 origin connection cannot speak. This mirrors the precedent set by the h2-to-HTTP/1.1 bridge (Http2ToHttp11BridgeHandler), which similarly bypasses the wire-format-specific machinery for the leg that does not match it. Origin connections are multiplexed across independent HTTP/1.1 clients through Titanium.Web.Proxy.ProxyServer.Http2OriginConnectionPool (fan-in share). Response bodies are delivered via Titanium.Web.Proxy.Http2.Http2OriginConnection streaming writers where available. Constructors | Edit this page View Source ProxyServer(bool, bool, bool) Initializes a new instance of ProxyServer class with provided parameters. Declaration public ProxyServer(bool userTrustRootCertificate = true, bool machineTrustRootCertificate = false, bool trustRootCertificateAsAdmin = false) Parameters Type Name Description bool userTrustRootCertificate When true (the default), EnsureRootCertificate() installs the MITM root into the current-user Personal and Trusted Root stores. Prefer user-only trust for interactive apps; pass false when trust must be fully opt-in. bool machineTrustRootCertificate When true, also trust in the local-machine stores (needs elevation). Defaults to false โ€” machine trust is opt-in for services/admin installs, not for normal desktop use. bool trustRootCertificateAsAdmin When true, attempt elevated trust via UAC (Windows only). Defaults to false. | Edit this page View Source ProxyServer(string?, string?, bool, bool, bool) Initializes a new instance of ProxyServer class with provided parameters. Declaration public ProxyServer(string? rootCertificateName, string? rootCertificateIssuerName, bool userTrustRootCertificate = true, bool machineTrustRootCertificate = false, bool trustRootCertificateAsAdmin = false) Parameters Type Name Description string rootCertificateName Name of the root certificate. string rootCertificateIssuerName Name of the root certificate issuer. bool userTrustRootCertificate When true (the default), EnsureRootCertificate() installs the MITM root into the current-user Personal and Trusted Root stores. Prefer user-only trust for interactive apps; pass false when trust must be fully opt-in. bool machineTrustRootCertificate When true, also trust in the local-machine stores (needs elevation). Defaults to false โ€” machine trust is opt-in for services/admin installs, not for normal desktop use. bool trustRootCertificateAsAdmin When true, attempt elevated trust via UAC (Windows only). Defaults to false. Fields | Edit this page View Source DefaultViaHeaderPseudonym Default Via header pseudonym (RFC 9110 ยง7.6.3). Used by ViaHeaderPseudonym and by Inspector when Add Via header is enabled. Declaration public const string DefaultViaHeaderPseudonym = \"titanium-web-proxy\" Field Value Type Description string Properties | Edit this page View Source AdmittedClientConnectionCount Number of client connections currently admitted (accepted and past the admission gate, not yet finished being handled), across all TCP-based endpoints. Unlike ClientConnectionCount, this drops to zero as soon as the handler returns, without the trailing TIME_WAIT delay. Declaration public int AdmittedClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source BlockLoopbackDestinations Outbound destination policy hook: when true, every resolved destination IP address is checked for loopback (127.0.0.0/8, ::1, including IPv4-mapped forms such as ::ffff:127.0.0.1) before connecting, and the connection attempt is rejected with an OutboundDestinationBlockedException if it matches. Private (RFC 1918), link-local, and cloud metadata addresses (including 169.254.169.254) remain reachable under this flag alone. Off by default. Use when the proxy must allow intranet destinations (for example 10.*) but must still stop clients from pivoting to the proxy host's own loopback. BlockPrivateNetworkDestinations already covers loopback as part of its broader set; when that flag is enabled, this property is not consulted for the reject. Assigning Profile does not read or clear this property. Enforced on TCP outbound connects only (the same call sites as BlockPrivateNetworkDestinations). Origin HTTP/3 (QUIC) dials a hostname and is not covered. An explicitly configured upstream proxy address is always exempt. Not currently enforced for a SOCKS upstream with ProxyDnsRequests enabled. Declaration public bool BlockLoopbackDestinations { get; set; } Property Value Type Description bool | Edit this page View Source BlockPrivateNetworkDestinations Outbound destination policy hook: when true, every resolved destination IP address is checked against loopback, private (RFC 1918/4193), link-local (which subsumes the 169.254.169.254 cloud metadata endpoint), and other non-globally-routable ranges before connecting, and the connection attempt is rejected with an OutboundDestinationBlockedException if it matches. Off by default: blocking private destinations would break this library's most common configurations, including upstream-proxy chaining to localhost and interception of local development servers. Only enable this when the proxy accepts requests from untrusted clients (an SSRF-relevant deployment), where those same destinations become an attacker-reachable pivot into the host's private network instead of an operator's own intentional configuration. An explicitly configured upstream proxy address (UpStreamHttpProxy, UpStreamHttpsProxy, or a per-session external proxy) is always exempt - that address is operator intent, not attacker-controlled. Checked against the resolved address actually used to connect (no re-resolution afterward, which would make the check a TOCTOU no-op against DNS rebinding). Not currently enforced for a SOCKS upstream with ProxyDnsRequests enabled, since the proxy never resolves the origin itself in that mode and has no address of its own to validate. Declaration public bool BlockPrivateNetworkDestinations { get; set; } Property Value Type Description bool | Edit this page View Source BufferPool The buffer pool used throughout this proxy instance. Set custom implementations by implementing this interface. By default this uses DefaultBufferPool implementation available in StreamExtended library package. Buffer size should be at least 10 bytes. Declaration public IBufferPool BufferPool { get; set; } Property Value Type Description IBufferPool | Edit this page View Source CertificateManager Manages certificates used by this proxy. Declaration public CertificateManager CertificateManager { get; } Property Value Type Description CertificateManager | Edit this page View Source CheckCertificateRevocation Should we check for certificate revocation during SSL authentication to servers Note: If enabled can reduce performance. Defaults to false. Declaration public X509RevocationMode CheckCertificateRevocation { get; set; } Property Value Type Description X509RevocationMode | Edit this page View Source ClientConnectionCount Total number of active TCP client connections. Does not include inbound HTTP/3 (QUIC) clients; see Http3ClientConnectionCount. Declaration public int ClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source ClientHeaderTimeoutSeconds Seconds to wait for a client to finish sending the request line and headers, from the moment this proxy starts reading a new request on the connection. Enforced with a linked CancellationTokenSource around the request-line and header read, not Socket.ReceiveTimeout: that property only bounds a single blocking Receive call, not the asynchronous reads this proxy actually issues, so without this deadline a client that opens a connection and trickles bytes arbitrarily slowly (or stops sending entirely) after the first byte ties up a read loop indefinitely. Default is 0 (disabled), matching every other deadline in this class - no per-session override exists because there is no SessionEventArgs for this request yet at the point this deadline applies. Declaration public int ClientHeaderTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source CompatibilityMode100Continue When true, the proxy immediately responds with a synthetic 100 Continue to any client request carrying Expect: 100-continue, before forwarding the headers to the origin and without waiting for the origin to respond. This breaks the strict handshake (client โ†’ proxy 100 โ†’ client body โ†’ origin body) but prevents the deadlock that occurs with strict clients when Enable100ContinueBehaviour is false (the default). Has no effect when Enable100ContinueBehaviour is true. Default: false. Declaration public bool CompatibilityMode100Continue { get; set; } Property Value Type Description bool | Edit this page View Source ConnectTimeOutSeconds Seconds server connection are to wait for connection to be established. Default value is 20 seconds. Declaration public int ConnectTimeOutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ConnectionTimeOutSeconds Seconds client/server connection are to be kept alive when waiting for read/write to complete. This will also determine the pool eviction time when connection pool is enabled. Default value is 60 seconds. Declaration public int ConnectionTimeOutSeconds { get; set; } Property Value Type Description int | Edit this page View Source CustomUpStreamProxyFailureFunc A callback to provide a chance for an upstream proxy failure to be handled by a new upstream proxy. User should return the ExternalProxy object with valid credentials or null. Declaration public Func>? CustomUpStreamProxyFailureFunc { get; set; } Property Value Type Description Func> | Edit this page View Source DecryptFailureBypassMaxEntries Maximum learned hosts retained (approximate LRU eviction). Default 256. Declaration public int DecryptFailureBypassMaxEntries { get; set; } Property Value Type Description int | Edit this page View Source DecryptFailureBypassThreshold Origin TLS failure strikes required before a host is bypassed on later CONNECTs. Same-CONNECT opaque fallback after an awaited H2 probe failure marks bypass immediately. Default 2. Declaration public int DecryptFailureBypassThreshold { get; set; } Property Value Type Description int | Edit this page View Source DecryptFailureBypassTtl How long a learned decrypt-bypass entry remains valid. Default 30 minutes. Declaration public TimeSpan DecryptFailureBypassTtl { get; set; } Property Value Type Description TimeSpan | Edit this page View Source DnsServerEndPoint DNS server endpoint used by Titanium.Web.Proxy.Http3.Dns.UdpSvcbDnsResolver for HTTPS/SVCB queries. Defaults to the first usable OS-configured plain-UDP DNS server discovered via NetworkInterface. This is a best-effort default and does not honor Windows NRPT, DoH, or VPN split-DNS policy. When no OS-configured DNS server can be discovered, the property reports 0.0.0.0:0 and proactive SVCB discovery is skipped (never falls back to a public third-party resolver). Assign an explicit endpoint to override discovery. Declaration [Experimental(\"TWP001\")] public IPEndPoint DnsServerEndPoint { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source Enable100ContinueBehaviour Does this proxy uses the HTTP protocol 100 continue behaviour strictly? Broken 100 continue implementations on server/client may cause problems if enabled. Defaults to false. Declaration public bool Enable100ContinueBehaviour { get; set; } Property Value Type Description bool | Edit this page View Source EnableConnectionPool Should we enable the server connection pool. Defaults to true. When connection pooling is enabled, instead of creating a new TCP connection to the server for each client TCP connection, we check if an idle server connection is available in our cached pool. If a compatible connection (same destination, scheme, upstream proxy, credentials and negotiated protocol) created from an earlier request is available, we reuse it. Only connections that are safe to reuse under the HTTP protocol are pooled: the response body must be fully received and the connection must be persistent (HTTP/1.1 keep-alive, or an HTTP/1.0 connection that explicitly opted in via \"Connection: keep-alive\"). Connections whose response asked to close, that failed, or that carry connection-oriented authentication state (WinAuth NTLM/Negotiate) or a per-session client certificate are never returned to the shared pool. The ConnectionTimeOutSeconds parameter determines the eviction time for inactive server connections. This reduces TCP (and TLS) connection establishment cost, both in wall clock time and CPU cycles. Set to false to force a fresh server connection for every client connection. Declaration public bool EnableConnectionPool { get; set; } Property Value Type Description bool | Edit this page View Source EnableDecryptFailureBypass When true, the proxy learns hosts whose origin TLS handshake fails under MITM (non-ALPN AuthenticationException, typically bot / TLS-fingerprint rejection) and tunnels subsequent CONNECTs without decrypt. Default false so library and RPS baselines are unchanged. Inspector enables this by default. Success-path cost when on is one dictionary lookup per CONNECT. Declaration public bool EnableDecryptFailureBypass { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttp2 Enable disable HTTP/2 support. Client-facing HTTP/2 is negotiated via TLS ALPN, or as prior-knowledge cleartext h2c on a transparent reverse endpoint (DecryptSsl: false). No Upgrade: h2c. Origin-facing HTTP/2 uses TLS ALPN h2 by default; with ForwardCleartext and Http2, the origin speaks cleartext HTTP/2 prior-knowledge (outbound h2c). A client/server that does not support HTTP/2 transparently falls back to HTTP/1.1 when policy allows. Request/response header and body modification in BeforeRequest/BeforeResponse, chunked trailers, interim (1xx) responses, and the synthetic-response APIs (Ok/Respond/Redirect/GenericResponse/ RespondStreaming) are all supported over HTTP/2, the same as over HTTP/1.x. Not supported: HTTP/2 server push (the wire frames are transcoded but there is no public API to originate a push) and Upgrade: h2c. Explicit-proxy inbound h2c is not implemented. See the protocol support matrix on the wiki for exact, up-to-date HTTP/1.x/HTTP/2 feature coverage. Declaration public bool EnableHttp2 { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttp3 Enable HTTP/3 (QUIC) support. When true: Any TransparentQuicProxyEndPoint is started as a UDP-only QUIC listener for transparent/NAT HTTP/3 interception. Any TransparentProxyEndPoint with EnableHttp3 also listens for HTTP/3 on the same IP:port (TCP H1/H2 + UDP H3) and injects client-facing Alt-Svc. With Auto (default), a cached Alt-Svc / HTTPS/SVCB capability selects outbound HTTP/3 on the next CONNECT or new HTTP/1.1 request. Background QUIC warm-up starts when the cache is filled so that handshake is often already done. An already-open H2โ†”H2 MITM session is not upgraded mid-connection. Forced Http3 fails closed with no TCP fallback. Requires MsQuic native library and a supported operating-system version (IsSupported). Setting to true with no inbound HTTP/3 endpoint is fine when an explicit/SOCKS/transparent TCP endpoint is present (origin-side QUIC only). A warning is emitted only when EnableHttp3 is set with no client-facing endpoints at all. Default: false (opt-in). Experimental: HTTP/3 support has not yet completed the full interop/soak/fuzz gate process. Suppress TWP001 to opt in; the attribute is removed when the feature graduates to stable. Declaration [Experimental(\"TWP001\")] public bool EnableHttp3 { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttpInterception Forces the full interception path (SessionEventArgs, BeforeRequest, etc.) even when no event handlers are subscribed. Set this when consuming SessionEventArgs for timing or metrics without subscribing to any event. Default: false. Declaration public bool EnableHttpInterception { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttpsSvcbDnsDiscovery When true, the proxy queues a background HTTPS/SVCB RR (DNS type 65) lookup after an Auto-mode capability-cache miss. A positive result (ALPN h3 found) warms Titanium.Web.Proxy.Http3.Http3OriginCapabilityCache for subsequent connections; the CONNECT / request path itself never awaits DNS. Negative results are cached for 1 minute; transient failures use a short backoff. Defaults to true whenever EnableHttp3 is true. Set explicitly to false to disable discovery even when HTTP/3 is enabled โ€” for example, when the configured DNS server is untrusted or unreachable. First-connection HTTP/3 adoption then comes from Alt-Svc. Declaration [Experimental(\"TWP001\")] public bool EnableHttpsSvcbDnsDiscovery { get; set; } Property Value Type Description bool | Edit this page View Source EnableIpv6UnreachableSoftSkip When true (default), after one IPv6 connect failure with NetworkUnreachable (or equivalent), temporarily omit IPv6 addresses from the Happy Eyeballs race for 30 seconds. Reduces first-chance SocketException noise on dual-stack hosts with a broken IPv6 path. Disable if operators require strict IPv6 preference even when the path is unreachable. Declaration public bool EnableIpv6UnreachableSoftSkip { get; set; } Property Value Type Description bool | Edit this page View Source EnableQpackDynamicTable When true, enables RFC 9204 QPACK dynamic table encoding and decoding for inbound HTTP/3 connections. Each connection gets its own Titanium.Web.Proxy.Http3.Qpack.QpackContext with two independent 4096-byte tables (one inbound, one outbound). Defaults to false (static-table-only); existing deployments are unaffected. Declaration [Experimental(\"TWP001\")] public bool EnableQpackDynamicTable { get; set; } Property Value Type Description bool | Edit this page View Source EnableRequestTimingCapture Enables structured request/connection timing capture. When false (the default) no timing objects are allocated and no UtcNow calls are made for timing purposes anywhere in the proxy, so there is zero overhead on the hot path. When enabled, every SessionEventArgsBase exposes a populated Timing (per-request phases: client header read, connection wait, request send, time-to-first-byte, response delivery, total), every upstream connection exposes a populated UpstreamConnectionTiming (reachable from a session via UpstreamConnectionTiming, describing DNS, TCP connect, optional upstream-proxy CONNECT, and TLS handshake durations), and a decrypted TunnelConnectSessionEventArgs exposes the client-facing TLS handshake duration via ClientTlsTiming. Can be toggled at any time; it only affects sessions/connections created after the change, never mutating timing objects already handed out. Defaults to false. Declaration public bool EnableRequestTimingCapture { get; set; } Property Value Type Description bool | Edit this page View Source EnableRfc8441 When true, the proxy enables RFC 8441 WebSocket-over-HTTP/2: Accepts extended CONNECT (:protocol = websocket) from h2 clients and advertises SETTINGS_ENABLE_CONNECT_PROTOCOL=1 to them. Per origin: if the origin is HTTP/2 and advertises RFC 8441 support, DATA frames are relayed directly; if the origin is HTTP/2 and does not, the stream is reset with REFUSED_STREAM; if the origin is HTTP/1.1, the h2โ†’h1 WebSocket upgrade bridge is used. On the HTTP/1.1-client-to-h2-origin translation bridge, translates Upgrade: websocket into extended CONNECT when the origin advertises the setting; otherwise falls back to a dedicated HTTP/1.1 origin connection for that WebSocket. When this property is false, that bridge still returns synthetic 501 Not Implemented for WebSocket upgrades (historical default). Default: false (must opt-in). Declaration public bool EnableRfc8441 { get; set; } Property Value Type Description bool | Edit this page View Source EnableTcpKeepAlive Enable TCP KeepAlive on client and server sockets so NAT/firewall mappings for long-lived CONNECT tunnels are refreshed. Default: true. Declaration public bool EnableTcpKeepAlive { get; set; } Property Value Type Description bool | Edit this page View Source EnableTcpServerConnectionPrefetch Should we enable tcp server connection prefetching? When enabled, as soon as we receive a client connection we concurrently initiate corresponding server connection process using CONNECT hostname or SNI hostname on a separate task so that after parsing client request we will have the server connection immediately ready or in the process of getting ready. If a server connection is available in cache then this prefetch task will immediately return with the available connection from cache. Defaults to true. Declaration public bool EnableTcpServerConnectionPrefetch { get; set; } Property Value Type Description bool | Edit this page View Source EnableWinAuth Enable disable Windows Authentication (NTLM/Kerberos). By default SSPI uses the process identity. To authenticate as another user, set WinAuthCredentialsProvider (issue #461). Defaults to false. Declaration public bool EnableWinAuth { get; set; } Property Value Type Description bool | Edit this page View Source EndpointAdmissionRejectionCount Total number of client connections rejected by any endpoint's MaxConcurrentClients since this instance was created. Declaration public long EndpointAdmissionRejectionCount { get; } Property Value Type Description long | Edit this page View Source ForwardToUpstreamGateway Gets or sets a value indicating whether requests will be chained to upstream gateway. Defaults to false. Declaration public bool ForwardToUpstreamGateway { get; set; } Property Value Type Description bool | Edit this page View Source GetCustomUpStreamProxyFunc A callback to provide authentication credentials for up stream proxy this proxy is using for HTTP(S) requests. User should return the ExternalProxy object with valid credentials. Declaration public Func>? GetCustomUpStreamProxyFunc { get; set; } Property Value Type Description Func> | Edit this page View Source GlobalAdmissionRejectionCount Total number of client connections rejected by MaxConcurrentClientConnections since this instance was created. Declaration public long GlobalAdmissionRejectionCount { get; } Property Value Type Description long | Edit this page View Source Http3ClientConnectionCount Total number of active inbound HTTP/3 (QUIC) client connections. Declaration public int Http3ClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source Http3ServerConnectionCount Total number of active upstream HTTP/3 (QUIC) server connections. These are also included in ServerConnectionCount. Declaration public int Http3ServerConnectionCount { get; } Property Value Type Description int | Edit this page View Source IdleReadTimeoutSeconds Seconds of idle time allowed while reading from the origin (stalled header/body waits). Applied via CancelAfter on the active read operation. Default is 0 (disabled). Per-session override: IdleReadTimeout. Declaration public int IdleReadTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source IdleWriteTimeoutSeconds Seconds of idle time allowed while writing to the origin (stalled header/body waits). Applied via CancelAfter on the active write operation. Default is 0 (disabled). Per-session override: IdleWriteTimeout. Declaration public int IdleWriteTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source IgnoreServerCertificateErrors When true, origin TLS certificates that fail OS chain validation are still accepted (MITM of loopback/self-signed/private CAs). Inspector's \"Ignore server certificate errors\" maps here. Default false. A subscribed ServerCertificateValidationCallback still wins. Declaration public bool IgnoreServerCertificateErrors { get; set; } Property Value Type Description bool | Edit this page View Source ListenerBackLog TCP listener accept backlog. Default: 1024 for burst connection handling. Declaration public int ListenerBackLog { get; set; } Property Value Type Description int | Edit this page View Source Logger The live, shared logger used throughout this proxy instance. Reflects the most recent call to ApplyLoggingConfiguration(). Declaration public ILogger Logger { get; } Property Value Type Description ILogger | Edit this page View Source Logging Configuration for this proxy instance's built-in diagnostic logging - the replacement for the removed ExceptionFunc callback. Every exception the proxy catches (even when handled internally and never surfaced to user code) is reported through this logger at an appropriate severity; see ProxyLoggingOptions for the console/file sinks, enable/disable switch, and minimum level. Mutate the returned instance (or assign a new one) at any point; each assignment/mutation you want to take effect must be followed by ApplyLoggingConfiguration() (which Start(bool) also calls automatically, so the configuration active at the moment the proxy starts running is picked up for the run even if you never call it yourself). Calling it again later - including while the proxy is already running - immediately swaps in the new configuration; this is safe because logging never blocks or otherwise affects proxy traffic. Declaration public ProxyLoggingOptions Logging { get; set; } Property Value Type Description ProxyLoggingOptions | Edit this page View Source MaxBufferedBodyBytes Maximum bytes the proxy will buffer for a single request or response body when body buffering is required (body-read hooks, authentication retry, etc.). Bodies larger than this limit are rejected with 413 (upstream request) or connection teardown (upstream response). Set to 0 to disable the limit (not recommended). Default: 4,194,304 (4 MiB). Declaration public int MaxBufferedBodyBytes { get; set; } Property Value Type Description int | Edit this page View Source MaxCachedConnections Maximum number of concurrent connections per remote host in cache. Only meaningful when EnableConnectionPool is true; to disable pooling, set EnableConnectionPool to false rather than setting this to 0 - the pool eviction loop treats a value below 1 as \"evict without limit while holding the pool-wide lock\", which spins indefinitely once the cache for that host is empty and would stall every other connection acquire/release in the process. Rejected outright at assignment so that state cannot be reached. Default value is 128. Declaration public int MaxCachedConnections { get; set; } Property Value Type Description int Exceptions Type Condition ArgumentOutOfRangeException The assigned value is less than 1. | Edit this page View Source MaxConcurrentClientConnections Maximum number of client connections admitted across all TCP-based endpoints at once. null (the default) disables the global admission gate, preserving today's unbounded behavior. When set, a connection beyond this limit is rejected and disposed immediately after accept, before a handler task is even started. Enforced independently of ClientConnectionCount: see Titanium.Web.Proxy.ProxyServer.admittedClientConnectionCount for why. See also MaxConcurrentClients for a per-endpoint cap layered on top of this global one. Declaration public int? MaxConcurrentClientConnections { get; set; } Property Value Type Description int? | Edit this page View Source MaxConcurrentHttp11HttpsOriginCreates Caps concurrent new HTTPS origin TCP/TLS opens on the H2โ†’H1 bridge only (MITM / re-encrypt). Pool hits (warm keep-alive) are uncapped. Cleartext H1 origins are not gated. Default is Clamp(ProcessorCount, 4, 32). Set before the first H2โ†’H1 HTTPS origin open (typically before Start(bool)); changing the value after the create gate has been used has no effect on the live semaphore. Declaration public int MaxConcurrentHttp11HttpsOriginCreates { get; set; } Property Value Type Description int Exceptions Type Condition ArgumentOutOfRangeException The assigned value is less than 1. | Edit this page View Source MaxDecodedHeaderListBytes Maximum decoded HTTP/2 header list size in bytes, using RFC 7541 accounting (name.Length + value.Length + 32 per field). Requests or responses with a decoded header list exceeding this limit will be refused with RST_STREAM(ENHANCE_YOUR_CALM) (code 0xb). Set to 0 to disable the limit (not recommended). Default: 65,536 (64 KiB). Advertised via SETTINGS_MAX_HEADER_LIST_SIZE. Declaration public int MaxDecodedHeaderListBytes { get; set; } Property Value Type Description int | Edit this page View Source MaxWebSocketFramePayloadBytes Maximum WebSocket frame payload size in bytes that the proxy will accept during frame-level interception (i.e. when BeforeWebSocketFrame has at least one subscriber). Frames whose decoded payload exceeds this limit cause the WebSocket connection to be closed with Close code 1009 (Message Too Big). Raw-relay sessions (no BeforeWebSocketFrame subscriber) bypass this check entirely and pass all frames through unvalidated. Default: 16,777,216 (16 MiB). Declaration public int MaxWebSocketFramePayloadBytes { get; set; } Property Value Type Description int | Edit this page View Source NetworkFailureRetryAttempts Number of times to retry upon network failures when connection pool is enabled. Declaration public int NetworkFailureRetryAttempts { get; set; } Property Value Type Description int | Edit this page View Source NoDelay Gets or sets a Boolean value that specifies whether server and client stream Sockets are using the Nagle algorithm. Defaults to true, no nagle algorithm is used. Declaration public bool NoDelay { get; set; } Property Value Type Description bool | Edit this page View Source OriginHttpVersionPolicy Controls which HTTP version is declared to the origin server on the request line, independently of the version the client declared to the proxy. Defaults to PreserveClientVersion, which matches the proxy's historical pass-through behavior exactly. Set to NormalizeToHttp11 to let HTTP/1.0 clients share pooled, persistent origin connections the same way HTTP/1.1 clients already do. This only changes the wire version written to the origin request line - it never changes the client-facing Http.Request.HttpVersion that event handlers observe, nor the version/persistence used to write the response back to the client. Declaration public OriginHttpVersionPolicy OriginHttpVersionPolicy { get; set; } Property Value Type Description OriginHttpVersionPolicy | Edit this page View Source PolicyModes Which resource-bound PolicyFamily is enforced, observed, or disabled, per the plan's rollout section. Read live by each family's enforcement call site - not baked into a per-request snapshot at connection accept time - so assigning a new value here (a whole-object replacement, never a mutation of the previous instance) takes effect for the next check any in-flight or new request makes, without restarting the proxy. This is the \"runtime switch to drop to Observe without redeploying\" the plan requires; see WithAllObservedExceptDisabled() for the one-call way to do that. Defaults to Balanced's modes (resource families enforced, Http2RelayValidation disabled so compressed H2 relay stays the verbatim-HPACK fast path). AllEnforce additionally enforces relay validation and is what PublicFacing applies. Assigning Profile also replaces this value with that profile's bundle; assign PolicyModes afterward to deviate from the selected profile's modes without changing anything else the profile set. Declaration public ProxyPolicyModes PolicyModes { get; set; } Property Value Type Description ProxyPolicyModes | Edit this page View Source Profile The last profile applied via this property's setter, defaulting to Balanced - the profile every field on this instance already starts at, so a fresh new ProxyServer() reports Balanced without needing its setter to run once at construction time. Assigning this property applies its entire ProxyProfileSettings bundle - ResourceLimits, PolicyModes, SupportedSslProtocols, BlockPrivateNetworkDestinations, MaxConcurrentClientConnections and the deadline-seconds properties - as a single atomic assignment, so a reader can never observe a half-applied profile. Assigning any of those properties individually afterward overrides just that one, without reverting the rest of the profile's bundle. Logged once per Start(bool) call, by name only - never with hosts, URLs or secrets, per the plan's rollout section. Declaration public ProxyProfile Profile { get; set; } Property Value Type Description ProxyProfile | Edit this page View Source ProxyAuthenticationRealm Realm used during Proxy Basic Authentication. Declaration public string ProxyAuthenticationRealm { get; set; } Property Value Type Description string | Edit this page View Source ProxyAuthenticationSchemes A collection of scheme types, e.g. basic, NTLM, Kerberos, Negotiate, to return if scheme authentication is required. Works in relation with ProxySchemeAuthenticateFunc. Declaration public IEnumerable ProxyAuthenticationSchemes { get; set; } Property Value Type Description IEnumerable | Edit this page View Source ProxyBasicAuthenticateFunc A callback to authenticate proxy clients via basic authentication. Parameters are username and password as provided by client. Should return true for successful authentication. Declaration public Func>? ProxyBasicAuthenticateFunc { get; set; } Property Value Type Description Func> | Edit this page View Source ProxyEndPoints A list of IpAddress and port this proxy is listening to. Declaration public List ProxyEndPoints { get; set; } Property Value Type Description List | Edit this page View Source ProxyRunning Is the proxy currently running? Declaration public bool ProxyRunning { get; } Property Value Type Description bool | Edit this page View Source ProxySchemeAuthenticateFunc A pluggable callback to authenticate clients by scheme instead of requiring basic authentication through ProxyBasicAuthenticateFunc. Parameters are current working session, schemeType, and token as provided by a calling client. Should return success for successful authentication, continuation if the package requests, or failure. Declaration public Func>? ProxySchemeAuthenticateFunc { get; set; } Property Value Type Description Func> | Edit this page View Source RequestTimeoutSeconds Total seconds allowed for a single request/response exchange after BeforeRequest returns (connect, send, wait for headers, and body copy). Default is 0 (disabled). Per-session override: RequestTimeout. Declaration public int RequestTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ResourceLimits The shared, immutable resource-bound snapshot (concurrent-stream cap, CONTINUATION frame-count/wall-clock bounds, peer-initiated incomplete-stream-reset budget, and the other limits described in ProxyResourceLimits) consulted by the HTTP/2 relay so a single proxy-owned value governs both what is enforced and what is advertised to each peer, rather than admitting purely against whatever the origin advertised. Assign a new ProxyResourceLimits (constructed via Create(long, int, long, long?, long?, double?, int?, int, int?, int, TimeSpan, bool, int, int?)) to override the Default snapshot. There is no artificial upper clamp: high-CPU/RAM hosts may pass larger maxCachedConnectionsPerHost, maxConcurrentStreamsPerConnection, etc. as needed. The live TCP pool depth knob MaxCachedConnections remains independently settable and should usually be kept in sync with MaxCachedConnectionsPerHost. Declaration public ProxyResourceLimits ResourceLimits { get; set; } Property Value Type Description ProxyResourceLimits | Edit this page View Source ResponseHeaderTimeoutSeconds Seconds to wait for the origin to send the response status line and headers after the request has been sent. Enforced with a linked CancellationTokenSource (not Socket receive timeout alone). When the deadline elapses a ProxyTimeoutException with ResponseHeader is raised (and may be converted to HTTP 504 before any response bytes have been committed to the client). Default is 0 (disabled). WebSocket upgrades, Server-Sent Events, raw tunnels, and sessions that already wrote a response status to the client are exempt; those waits use IdleReadTimeoutSeconds when configured. Per-session override: ResponseHeaderTimeout. Declaration public int ResponseHeaderTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ReuseSocket When true (default), SO_REUSEADDR is requested where Titanium.Web.Proxy.Helpers.RunTime.IsSocketReuseAvailable() reports support (always on Windows; on non-Windows, .NET Core 3+ / compatible runtimes). Declaration public bool ReuseSocket { get; set; } Property Value Type Description bool | Edit this page View Source ReverseProxy Optional reverse-proxy route/cluster configuration. When null (default), Core keeps 6.x ForwardHost behavior with zero added cost on the hot path. Declaration public ReverseProxyOptions? ReverseProxy { get; set; } Property Value Type Description ReverseProxyOptions | Edit this page View Source ServerConnectionCount Total number of active server connections (TCP plus upstream QUIC). For HTTP/3-only upstreams see Http3ServerConnectionCount. Declaration public int ServerConnectionCount { get; } Property Value Type Description int | Edit this page View Source ShouldInterceptHttp Optional per-request/stream predicate consulted only when the global interception gate is active. Return true to use the full SessionEventArgs path; return false to use the fast-forward path. null (the default) intercepts every request โ€” preserving today's behavior. Declaration public Func? ShouldInterceptHttp { get; set; } Property Value Type Description Func | Edit this page View Source SupportedServerSslProtocols Ssl versions offered on outbound HTTPS connections to origins (and upstream proxies). Default None means โ€œuse SupportedSslProtocolsโ€ (typically TLS 1.2 and 1.3). Set an explicit mask to restrict or expand outbound-only independently of inbound client TLS. Older docs described None as โ€œsame as the proxy client.โ€ That coupling is incorrect across protocol translations (e.g. inbound QUIC is always TLS 1.3 while outbound TCP SslStream on macOS SecureTransport cannot offer TLS 1.3). Declaration public SslProtocols SupportedServerSslProtocols { get; set; } Property Value Type Description SslProtocols | Edit this page View Source SupportedSslProtocols List of supported Ssl versions. Defaults to TLS 1.2/1.3 only as of 5.0 - a breaking change from 4.x, which also enabled SSL 3.0/TLS 1.0/1.1. Those legacy, broken-by-design protocols require an explicit opt-in by assigning this property directly (e.g. SslProtocols.Tls | SslProtocols.Tls11 | SslProtocols.Tls12 | SslProtocols.Tls13) if a legacy client/server genuinely requires them. Declaration public SslProtocols SupportedSslProtocols { get; set; } Property Value Type Description SslProtocols | Edit this page View Source TcpTimeWaitSeconds SO_LINGER timeout in seconds applied to client and upstream sockets via LingerOption (enabled with this timeout). This is not the kernel TCP TIME_WAIT duration โ€” TIME_WAIT is controlled by the OS. A positive value means Close may block up to that many seconds flushing send buffers; use 0 for an abortive close (RST). Default is 0 so high-churn proxies avoid TIME_WAIT accumulation; the 1-second connection disposal delay already prefers peer-first close. Declaration public int TcpTimeWaitSeconds { get; set; } Property Value Type Description int | Edit this page View Source ThreadPoolWorkerThread Customize the minimum ThreadPool size (increase it on a server). Defaults to max(ProcessorCount * 2, 16) so short loopback/proxy workloads are not starved while the pool is still ramping workers. Declaration public int ThreadPoolWorkerThread { get; set; } Property Value Type Description int | Edit this page View Source UpStreamEndPoint Local adapter/NIC endpoint where proxy makes request via. Defaults via any IP addresses of this machine. When the resolved destination address family does not match this endpoint, it is ignored so dual-stack destinations can still connect (see UpStreamEndPointIPv4 / UpStreamEndPointIPv6). Declaration public IPEndPoint? UpStreamEndPoint { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamEndPointIPv4 Local bind endpoint used when the resolved upstream destination is IPv4. Takes precedence over UpStreamEndPoint for IPv4 destinations. Declaration public IPEndPoint? UpStreamEndPointIPv4 { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamEndPointIPv6 Local bind endpoint used when the resolved upstream destination is IPv6. Takes precedence over UpStreamEndPoint for IPv6 destinations. Declaration public IPEndPoint? UpStreamEndPointIPv6 { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamHttpProxy External proxy used for Http requests. Declaration public IExternalProxy? UpStreamHttpProxy { get; set; } Property Value Type Description IExternalProxy | Edit this page View Source UpStreamHttpsProxy External proxy used for Https requests. Declaration public IExternalProxy? UpStreamHttpsProxy { get; set; } Property Value Type Description IExternalProxy | Edit this page View Source UpstreamProxyConfigurationScript If set, the upstream proxy will be detected by a script that will be loaded from the provided Uri Declaration public Uri? UpstreamProxyConfigurationScript { get; set; } Property Value Type Description Uri | Edit this page View Source ViaHeaderPseudonym Pseudonym used in Via header fields appended to forwarded requests and responses (RFC 9110 ยง7.6.3). Defaults to DefaultViaHeaderPseudonym. Set to an empty string to disable Via header injection entirely. Loop detection uses this value: a request arriving with this pseudonym already present in Via is refused with 508 Loop Detected. Declaration public string ViaHeaderPseudonym { get; set; } Property Value Type Description string | Edit this page View Source WinAuthCredentialsProvider Optional per-session credential provider for server 401 WinAuth (NTLM/Negotiate/Kerberos). Return null to use the current process identity (legacy behavior). Do not put plaintext passwords on SessionEventArgs โ€” use this callback instead. Windows SSPI only; ignored on non-Windows platforms. Declaration public Func>? WinAuthCredentialsProvider { get; set; } Property Value Type Description Func> Methods | Edit this page View Source AddEndPoint(ProxyEndPoint) Add a proxy end point. Declaration public void AddEndPoint(ProxyEndPoint endPoint) Parameters Type Name Description ProxyEndPoint endPoint The proxy endpoint. | Edit this page View Source ApplyLoggingConfiguration() Rebuilds the active logger/logger factory from the current Logging configuration, disposing any previously owned built-in providers. Called automatically from the constructor (with the default configuration) and from Start(bool). Call this explicitly any time after changing Logging and you want the change to take effect immediately - whether the proxy is stopped (e.g. before using CertificateManager directly) or already running. Declaration public void ApplyLoggingConfiguration() | Edit this page View Source ClearDecryptFailureBypass() Clears all learned decrypt-bypass entries. Declaration public void ClearDecryptFailureBypass() | Edit this page View Source DisableAllSystemProxies() Clear all proxy settings for current machine. Declaration public void DisableAllSystemProxies() | Edit this page View Source DisableSystemHttpProxy() Clear HTTP proxy settings of current machine. Declaration public void DisableSystemHttpProxy() | Edit this page View Source DisableSystemHttpsProxy() Clear HTTPS proxy settings of current machine. Declaration public void DisableSystemHttpsProxy() | Edit this page View Source DisableSystemProxy(ProxyProtocolType) Clear the specified proxy setting for current machine. Declaration public void DisableSystemProxy(ProxyProtocolType protocolType) Parameters Type Name Description ProxyProtocolType protocolType | Edit this page View Source Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Declaration public void Dispose() | Edit this page View Source Dispose(bool) Declaration [SuppressMessage(\"ApiDesign\", \"RS0016:Add public types and members to the declared API\", Justification = \"Protected Dispose(bool) is required by the standard IDisposable pattern but is not public API.\")] protected virtual void Dispose(bool disposing) Parameters Type Name Description bool disposing | Edit this page View Source ForceDecryptFailureBypass(string) Marks host as actively bypassed (same as a forced learn after origin TLS failure). Raises DecryptFailureBypassChanged when bypass newly becomes active. Declaration public bool ForceDecryptFailureBypass(string host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source GetDecryptFailureBypassEntries() Snapshot of current learned decrypt-bypass entries (may include non-active strikes). Declaration public IReadOnlyList GetDecryptFailureBypassEntries() Returns Type Description IReadOnlyList | Edit this page View Source RemoveDecryptFailureBypass(string) Removes one host from the learned decrypt-bypass cache. Declaration public bool RemoveDecryptFailureBypass(string host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source RemoveEndPoint(ProxyEndPoint) Remove a proxy end point. Will throw error if the end point doesn't exist. Declaration public void RemoveEndPoint(ProxyEndPoint endPoint) Parameters Type Name Description ProxyEndPoint endPoint The existing endpoint to remove. | Edit this page View Source RestoreOriginalProxySettings() Restores the original proxy settings. Declaration public void RestoreOriginalProxySettings() | Edit this page View Source SetAsSystemHttpProxy(ExplicitProxyEndPoint) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemHttpProxy(ExplicitProxyEndPoint endPoint) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. | Edit this page View Source SetAsSystemHttpProxy(ExplicitProxyEndPoint, SystemProxySettings) Set the given explicit end point as the default HTTP proxy server for current machine. Declaration public void SetAsSystemHttpProxy(ExplicitProxyEndPoint endPoint, SystemProxySettings settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. SystemProxySettings settings The Windows system proxy settings. | Edit this page View Source SetAsSystemHttpsProxy(ExplicitProxyEndPoint) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemHttpsProxy(ExplicitProxyEndPoint endPoint) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. | Edit this page View Source SetAsSystemHttpsProxy(ExplicitProxyEndPoint, SystemProxySettings) Set the given explicit end point as the default HTTPS proxy server for current machine. Declaration public void SetAsSystemHttpsProxy(ExplicitProxyEndPoint endPoint, SystemProxySettings settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. SystemProxySettings settings The Windows system proxy settings. | Edit this page View Source SetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. ProxyProtocolType protocolType The proxy protocol type. | Edit this page View Source SetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType, SystemProxySettings?) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType, SystemProxySettings? settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. ProxyProtocolType protocolType The proxy protocol type. SystemProxySettings settings The Windows system proxy settings, or null to preserve the current bypass list. | Edit this page View Source SetHttp3Enabled(bool) Enables or disables EnableHttp3. Enabling still requires MsQuic (IsSupported); disabling is always applied. Safe to call while the proxy is running โ€” new origin connections pick up the change. Existing sessions keep the protocol they already negotiated. Declaration public bool SetHttp3Enabled(bool enabled) Parameters Type Name Description bool enabled Returns Type Description bool true when HTTP/3 is enabled after the call. | Edit this page View Source ShouldBypassDecryptForLearnedHost(string?) When EnableDecryptFailureBypass is on and host is actively bypassed, returns true (decrypt should be skipped). Declaration public bool ShouldBypassDecryptForLearnedHost(string? host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source Start(bool) Start this proxy server instance. Transactional: if any endpoint fails to start, every listener this call already started is stopped, the system-upstream-proxy resolver (if this call created one) is disposed, and ProxyRunning is left false before the exception propagates. A caller that catches the exception is left with an instance in exactly the same state as before calling Start(bool), not a partially-bound proxy with some endpoints silently listening. Declaration public void Start(bool changeSystemProxySettings = true) Parameters Type Name Description bool changeSystemProxySettings Whether or not clear any system proxy settings which is pointing to our own endpoint (causing a cycle). E.g due to ungracious proxy shutdown before. | Edit this page View Source Stop() Stop this proxy server instance. Endpoints remain registered so Start(bool) can re-listen on the same ports. In-flight sessions are cancelled; pooled upstream connections are cleared. The connection factory itself stays usable for a subsequent Start (it is only disposed with the proxy). Declaration public void Stop() | Edit this page View Source StopAsync(TimeSpan?) Asynchronously stop this proxy server, cancel in-flight sessions, and wait briefly for client connection count to drain before clearing the upstream pool. Declaration public Task StopAsync(TimeSpan? drainTimeout = null) Parameters Type Name Description TimeSpan? drainTimeout Maximum time to wait for active client handlers to exit after cancellation. Defaults to 5 seconds. Returns Type Description Task | Edit this page View Source TryDisableAllSystemProxies() Clear all OS proxy settings without throwing. Declaration public SystemProxyChangeResult TryDisableAllSystemProxies() Returns Type Description SystemProxyChangeResult | Edit this page View Source TryDisableSystemProxy(ProxyProtocolType) Clear OS proxy for the given protocols without throwing. Declaration public SystemProxyChangeResult TryDisableSystemProxy(ProxyProtocolType protocolType) Parameters Type Name Description ProxyProtocolType protocolType Returns Type Description SystemProxyChangeResult | Edit this page View Source TryEnableHttp3IfSupported() Turns on EnableHttp3 when MsQuic is available (IsSupported). Hosts (CLI, Inspector, examples) should call this instead of setting EnableHttp3 blindly. Returns true when HTTP/3 was enabled. Declaration public bool TryEnableHttp3IfSupported() Returns Type Description bool | Edit this page View Source TryRestoreOriginalProxySettings() Restore OS proxy without throwing. Declaration public SystemProxyChangeResult TryRestoreOriginalProxySettings() Returns Type Description SystemProxyChangeResult | Edit this page View Source TrySetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType, SystemProxySettings?) Enable OS system proxy without throwing. Failures are logged and returned so Inspector/CLI can show a status message instead of crashing. Declaration public SystemProxyChangeResult TrySetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType, SystemProxySettings? settings = null) Parameters Type Name Description ExplicitProxyEndPoint endPoint ProxyProtocolType protocolType SystemProxySettings settings Returns Type Description SystemProxyChangeResult Events | Edit this page View Source AfterResponse Intercept after response event from server. Declaration public event AsyncEventHandler? AfterResponse Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeRequest Intercept request event to server. Declaration public event AsyncEventHandler? BeforeRequest Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeResponse Intercept response event from server. Declaration public event AsyncEventHandler? BeforeResponse Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeUpStreamConnectRequest Intercept connect request sent to upstream proxy. Declaration public event AsyncEventHandler? BeforeUpStreamConnectRequest Event Type Type Description AsyncEventHandler | Edit this page View Source ClientCertificateSelectionCallback Event to override client certificate selection during mutual SSL authentication. Declaration public event AsyncEventHandler? ClientCertificateSelectionCallback Event Type Type Description AsyncEventHandler | Edit this page View Source ClientConnectionCountChanged Event occurs when client connection count changed. Declaration public event EventHandler? ClientConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source DecryptFailureBypassChanged Raised when a host becomes actively bypassed (threshold reached or same-CONNECT mark). Handlers must not block; Inspector marshals to the UI thread. Declaration public event EventHandler? DecryptFailureBypassChanged Event Type Type Description EventHandler | Edit this page View Source Http3ClientConnectionCountChanged Event occurs when inbound HTTP/3 client connection count changed. Declaration public event EventHandler? Http3ClientConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source Http3ServerConnectionCountChanged Event occurs when upstream HTTP/3 server connection count changed. Declaration public event EventHandler? Http3ServerConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source OnClientConnectionCreate Customize TcpClient used for client connection upon create. Declaration public event AsyncEventHandler? OnClientConnectionCreate Event Type Type Description AsyncEventHandler | Edit this page View Source OnRequestBodyWrite Intercept request body send event to server. Subscribe to inspect or modify the request body chunk-by-chunk as it streams to the server, without buffering the whole body. Do not combine with SessionEventArgs.GetRequestBody (which buffers). Declaration public event AsyncEventHandler? OnRequestBodyWrite Event Type Type Description AsyncEventHandler | Edit this page View Source OnResponseBodyWrite Intercept response body send event to client. Subscribe to inspect or modify the response body chunk-by-chunk as it streams to the client, without buffering the whole body. Do not combine with SessionEventArgs.GetResponseBody (which buffers). Declaration public event AsyncEventHandler? OnResponseBodyWrite Event Type Type Description AsyncEventHandler | Edit this page View Source OnServerConnectionCreate Customize TcpClient used for server connection upon create. Declaration public event AsyncEventHandler? OnServerConnectionCreate Event Type Type Description AsyncEventHandler | Edit this page View Source ServerCertificateValidationCallback Event to override the default verification logic of remote SSL certificate received during authentication. Declaration public event AsyncEventHandler? ServerCertificateValidationCallback Event Type Type Description AsyncEventHandler | Edit this page View Source ServerConnectionCountChanged Event occurs when server connection count changed. Declaration public event EventHandler? ServerConnectionCountChanged Event Type Type Description EventHandler Implements IDisposable" + "summary": "Class ProxyServer Translates an HTTP/1.1 client connection onto an h2-only origin (Http2 with AllowHttpProtocolTranslation enabled - see ResolveHttp2ForClientAsync(SessionEventArgsBase, bool, string, int, string, int?, UpstreamHttpProtocol, bool, bool, CancellationToken, bool)), leasing one h2 stream per HTTP/1.1 request from a shared Titanium.Web.Proxy.Http2.Http2OriginConnection via Titanium.Web.Proxy.ProxyServer.Http2OriginConnectionPool rather than opening a new TCP/TLS connection for every request. Inheritance object ProxyServer Implements IDisposable Inherited Members object.Equals(object) object.Equals(object, object) object.GetHashCode() object.GetType() object.MemberwiseClone() object.ReferenceEquals(object, object) object.ToString() Namespace: Titanium.Web.Proxy Assembly: Titanium.Web.Proxy.dll Syntax public class ProxyServer : IDisposable Remarks This re-implements the HTTP/1.1 client read loop (request line, headers, BeforeRequest, authorization, header preparation, CancelRequest/replaced-response handling) rather than reusing the private HandleHttpSessionRequest/HandleHttpSessionResponse methods, because those methods send/receive over TcpServerConnection.Stream using the raw HTTP/1.1 wire format, which an h2 origin connection cannot speak. This mirrors the precedent set by the h2-to-HTTP/1.1 bridge (Http2ToHttp11BridgeHandler), which similarly bypasses the wire-format-specific machinery for the leg that does not match it. Origin connections are multiplexed across independent HTTP/1.1 clients through Titanium.Web.Proxy.ProxyServer.Http2OriginConnectionPool (fan-in share). Response bodies are delivered via Titanium.Web.Proxy.Http2.Http2OriginConnection streaming writers where available. Constructors | Edit this page View Source ProxyServer(bool, bool, bool) Initializes a new instance of ProxyServer class with provided parameters. Declaration public ProxyServer(bool userTrustRootCertificate = true, bool machineTrustRootCertificate = false, bool trustRootCertificateAsAdmin = false) Parameters Type Name Description bool userTrustRootCertificate When true (the default), EnsureRootCertificate() installs the MITM root into the current-user Personal and Trusted Root stores. Prefer user-only trust for interactive apps; pass false when trust must be fully opt-in. bool machineTrustRootCertificate When true, also trust in the local-machine stores (needs elevation). Defaults to false โ€” machine trust is opt-in for services/admin installs, not for normal desktop use. bool trustRootCertificateAsAdmin When true, attempt elevated trust via UAC (Windows only). Defaults to false. | Edit this page View Source ProxyServer(string?, string?, bool, bool, bool) Initializes a new instance of ProxyServer class with provided parameters. Declaration public ProxyServer(string? rootCertificateName, string? rootCertificateIssuerName, bool userTrustRootCertificate = true, bool machineTrustRootCertificate = false, bool trustRootCertificateAsAdmin = false) Parameters Type Name Description string rootCertificateName Name of the root certificate. string rootCertificateIssuerName Name of the root certificate issuer. bool userTrustRootCertificate When true (the default), EnsureRootCertificate() installs the MITM root into the current-user Personal and Trusted Root stores. Prefer user-only trust for interactive apps; pass false when trust must be fully opt-in. bool machineTrustRootCertificate When true, also trust in the local-machine stores (needs elevation). Defaults to false โ€” machine trust is opt-in for services/admin installs, not for normal desktop use. bool trustRootCertificateAsAdmin When true, attempt elevated trust via UAC (Windows only). Defaults to false. Fields | Edit this page View Source DefaultViaHeaderPseudonym Default Via header pseudonym (RFC 9110 ยง7.6.3). Used by ViaHeaderPseudonym and by Inspector when Add Via header is enabled. Declaration public const string DefaultViaHeaderPseudonym = \"titanium-web-proxy\" Field Value Type Description string Properties | Edit this page View Source AdmittedClientConnectionCount Number of client connections currently admitted (accepted and past the admission gate, not yet finished being handled), across all TCP-based endpoints. Unlike ClientConnectionCount, this drops to zero as soon as the handler returns, without the trailing TIME_WAIT delay. Declaration public int AdmittedClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source BlockLoopbackDestinations Outbound destination policy hook: when true, every resolved destination IP address is checked for loopback (127.0.0.0/8, ::1, including IPv4-mapped forms such as ::ffff:127.0.0.1) before connecting, and the connection attempt is rejected with an OutboundDestinationBlockedException if it matches. Private (RFC 1918), link-local, and cloud metadata addresses (including 169.254.169.254) remain reachable under this flag alone. Off by default. Use when the proxy must allow intranet destinations (for example 10.*) but must still stop clients from pivoting to the proxy host's own loopback. BlockPrivateNetworkDestinations already covers loopback as part of its broader set; when that flag is enabled, this property is not consulted for the reject. Assigning Profile does not read or clear this property. Enforced on TCP outbound connects only (the same call sites as BlockPrivateNetworkDestinations). Origin HTTP/3 (QUIC) dials a hostname and is not covered. An explicitly configured upstream proxy address is always exempt. Not currently enforced for a SOCKS upstream with ProxyDnsRequests enabled. Declaration public bool BlockLoopbackDestinations { get; set; } Property Value Type Description bool | Edit this page View Source BlockPrivateNetworkDestinations Outbound destination policy hook: when true, every resolved destination IP address is checked against loopback, private (RFC 1918/4193), link-local (which subsumes the 169.254.169.254 cloud metadata endpoint), and other non-globally-routable ranges before connecting, and the connection attempt is rejected with an OutboundDestinationBlockedException if it matches. Off by default: blocking private destinations would break this library's most common configurations, including upstream-proxy chaining to localhost and interception of local development servers. Only enable this when the proxy accepts requests from untrusted clients (an SSRF-relevant deployment), where those same destinations become an attacker-reachable pivot into the host's private network instead of an operator's own intentional configuration. An explicitly configured upstream proxy address (UpStreamHttpProxy, UpStreamHttpsProxy, or a per-session external proxy) is always exempt - that address is operator intent, not attacker-controlled. Checked against the resolved address actually used to connect (no re-resolution afterward, which would make the check a TOCTOU no-op against DNS rebinding). Not currently enforced for a SOCKS upstream with ProxyDnsRequests enabled, since the proxy never resolves the origin itself in that mode and has no address of its own to validate. Declaration public bool BlockPrivateNetworkDestinations { get; set; } Property Value Type Description bool | Edit this page View Source BufferPool The buffer pool used throughout this proxy instance. Set custom implementations by implementing this interface. By default this uses DefaultBufferPool implementation available in StreamExtended library package. Buffer size should be at least 10 bytes. Declaration public IBufferPool BufferPool { get; set; } Property Value Type Description IBufferPool | Edit this page View Source CertificateManager Manages certificates used by this proxy. Declaration public CertificateManager CertificateManager { get; } Property Value Type Description CertificateManager | Edit this page View Source CheckCertificateRevocation Should we check for certificate revocation during SSL authentication to servers Note: If enabled can reduce performance. Defaults to false. Declaration public X509RevocationMode CheckCertificateRevocation { get; set; } Property Value Type Description X509RevocationMode | Edit this page View Source ClientConnectionCount Total number of active TCP client connections. Does not include inbound HTTP/3 (QUIC) clients; see Http3ClientConnectionCount. Declaration public int ClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source ClientHeaderTimeoutSeconds Seconds to wait for a client to finish sending the request line and headers, from the moment this proxy starts reading a new request on the connection. Enforced with a linked CancellationTokenSource around the request-line and header read, not Socket.ReceiveTimeout: that property only bounds a single blocking Receive call, not the asynchronous reads this proxy actually issues, so without this deadline a client that opens a connection and trickles bytes arbitrarily slowly (or stops sending entirely) after the first byte ties up a read loop indefinitely. Default is 0 (disabled), matching every other deadline in this class - no per-session override exists because there is no SessionEventArgs for this request yet at the point this deadline applies. Declaration public int ClientHeaderTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source CompatibilityMode100Continue When true, the proxy immediately responds with a synthetic 100 Continue to any client request carrying Expect: 100-continue, before forwarding the headers to the origin and without waiting for the origin to respond. This breaks the strict handshake (client โ†’ proxy 100 โ†’ client body โ†’ origin body) but prevents the deadlock that occurs with strict clients when Enable100ContinueBehaviour is false (the default). Has no effect when Enable100ContinueBehaviour is true. Default: false. Declaration public bool CompatibilityMode100Continue { get; set; } Property Value Type Description bool | Edit this page View Source ConnectTimeOutSeconds Seconds server connection are to wait for connection to be established. Default value is 20 seconds. Declaration public int ConnectTimeOutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ConnectionTimeOutSeconds Seconds client/server connection are to be kept alive when waiting for read/write to complete. This will also determine the pool eviction time when connection pool is enabled. Default value is 60 seconds. Declaration public int ConnectionTimeOutSeconds { get; set; } Property Value Type Description int | Edit this page View Source CustomUpStreamProxyFailureFunc A callback to provide a chance for an upstream proxy failure to be handled by a new upstream proxy. User should return the ExternalProxy object with valid credentials or null. Declaration public Func>? CustomUpStreamProxyFailureFunc { get; set; } Property Value Type Description Func> | Edit this page View Source DecryptFailureBypassMaxEntries Maximum learned hosts retained (approximate LRU eviction). Default 256. Declaration public int DecryptFailureBypassMaxEntries { get; set; } Property Value Type Description int | Edit this page View Source DecryptFailureBypassThreshold Origin TLS failure strikes required before a host is bypassed on later CONNECTs. Same-CONNECT opaque fallback after an awaited H2 probe failure marks bypass immediately. Default 2. Declaration public int DecryptFailureBypassThreshold { get; set; } Property Value Type Description int | Edit this page View Source DecryptFailureBypassTtl How long a learned decrypt-bypass entry remains valid. Default 30 minutes. Declaration public TimeSpan DecryptFailureBypassTtl { get; set; } Property Value Type Description TimeSpan | Edit this page View Source DnsServerEndPoint DNS server endpoint used by Titanium.Web.Proxy.Http3.Dns.UdpSvcbDnsResolver for HTTPS/SVCB queries. Defaults to the first usable OS-configured plain-UDP DNS server discovered via NetworkInterface. This is a best-effort default and does not honor Windows NRPT, DoH, or VPN split-DNS policy. When no OS-configured DNS server can be discovered, the property reports 0.0.0.0:0 and proactive SVCB discovery is skipped (never falls back to a public third-party resolver). Assign an explicit endpoint to override discovery. Declaration [Experimental(\"TWP001\")] public IPEndPoint DnsServerEndPoint { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source Enable100ContinueBehaviour Does this proxy uses the HTTP protocol 100 continue behaviour strictly? Broken 100 continue implementations on server/client may cause problems if enabled. Defaults to false. Declaration public bool Enable100ContinueBehaviour { get; set; } Property Value Type Description bool | Edit this page View Source EnableConnectionPool Should we enable the server connection pool. Defaults to true. When connection pooling is enabled, instead of creating a new TCP connection to the server for each client TCP connection, we check if an idle server connection is available in our cached pool. If a compatible connection (same destination, scheme, upstream proxy, credentials and negotiated protocol) created from an earlier request is available, we reuse it. Only connections that are safe to reuse under the HTTP protocol are pooled: the response body must be fully received and the connection must be persistent (HTTP/1.1 keep-alive, or an HTTP/1.0 connection that explicitly opted in via \"Connection: keep-alive\"). Connections whose response asked to close, that failed, or that carry connection-oriented authentication state (WinAuth NTLM/Negotiate) or a per-session client certificate are never returned to the shared pool. The ConnectionTimeOutSeconds parameter determines the eviction time for inactive server connections. This reduces TCP (and TLS) connection establishment cost, both in wall clock time and CPU cycles. Set to false to force a fresh server connection for every client connection. Declaration public bool EnableConnectionPool { get; set; } Property Value Type Description bool | Edit this page View Source EnableDecryptFailureBypass When true, the proxy learns hosts whose origin TLS handshake fails under MITM (non-ALPN AuthenticationException, typically bot / TLS-fingerprint rejection) and tunnels subsequent CONNECTs without decrypt. Default false so library and RPS baselines are unchanged. Inspector enables this by default. Success-path cost when on is one dictionary lookup per CONNECT. Declaration public bool EnableDecryptFailureBypass { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttp2 Enable disable HTTP/2 support. Client-facing HTTP/2 is negotiated via TLS ALPN, or as prior-knowledge cleartext h2c on a transparent reverse endpoint (DecryptSsl: false). No Upgrade: h2c. Origin-facing HTTP/2 uses TLS ALPN h2 by default; with ForwardCleartext and Http2, the origin speaks cleartext HTTP/2 prior-knowledge (outbound h2c). A client/server that does not support HTTP/2 transparently falls back to HTTP/1.1 when policy allows. Request/response header and body modification in BeforeRequest/BeforeResponse, chunked trailers, interim (1xx) responses, and the synthetic-response APIs (Ok/Respond/Redirect/GenericResponse/ RespondStreaming) are all supported over HTTP/2, the same as over HTTP/1.x. Not supported: HTTP/2 server push (the wire frames are transcoded but there is no public API to originate a push) and Upgrade: h2c. Explicit-proxy inbound h2c is not implemented. See the protocol support matrix on the wiki for exact, up-to-date HTTP/1.x/HTTP/2 feature coverage. Declaration public bool EnableHttp2 { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttp3 Enable HTTP/3 (QUIC) support. When true: Any TransparentQuicProxyEndPoint is started as a UDP-only QUIC listener for transparent/NAT HTTP/3 interception. Any TransparentProxyEndPoint with EnableHttp3 also listens for HTTP/3 on the same IP:port (TCP H1/H2 + UDP H3) and injects client-facing Alt-Svc. With Auto (default), a cached Alt-Svc / HTTPS/SVCB capability selects outbound HTTP/3 on the next CONNECT or new HTTP/1.1 request. Background QUIC warm-up starts when the cache is filled so that handshake is often already done. An already-open H2โ†”H2 MITM session is not upgraded mid-connection. Forced Http3 fails closed with no TCP fallback. Requires MsQuic native library and a supported operating-system version (IsSupported). Setting to true with no inbound HTTP/3 endpoint is fine when an explicit/SOCKS/transparent TCP endpoint is present (origin-side QUIC only). A warning is emitted only when EnableHttp3 is set with no client-facing endpoints at all. Default: false (opt-in). Experimental: HTTP/3 support has not yet completed the full interop/soak/fuzz gate process. Suppress TWP001 to opt in; the attribute is removed when the feature graduates to stable. Declaration [Experimental(\"TWP001\")] public bool EnableHttp3 { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttpInterception Forces the full interception path (SessionEventArgs, BeforeRequest, etc.) even when no event handlers are subscribed. Set this when consuming SessionEventArgs for timing or metrics without subscribing to any event. Default: false. Declaration public bool EnableHttpInterception { get; set; } Property Value Type Description bool | Edit this page View Source EnableHttpsSvcbDnsDiscovery When true, the proxy queues a background HTTPS/SVCB RR (DNS type 65) lookup after an Auto-mode capability-cache miss. A positive result (ALPN h3 found) warms Titanium.Web.Proxy.Http3.Http3OriginCapabilityCache for subsequent connections; the CONNECT / request path itself never awaits DNS. Negative results are cached for 1 minute; transient failures use a short backoff. Defaults to true whenever EnableHttp3 is true. Set explicitly to false to disable discovery even when HTTP/3 is enabled โ€” for example, when the configured DNS server is untrusted or unreachable. First-connection HTTP/3 adoption then comes from Alt-Svc. Declaration [Experimental(\"TWP001\")] public bool EnableHttpsSvcbDnsDiscovery { get; set; } Property Value Type Description bool | Edit this page View Source EnableIpv6UnreachableSoftSkip When true (default), after one IPv6 connect failure with NetworkUnreachable (or equivalent), temporarily omit IPv6 addresses from the Happy Eyeballs race for 30 seconds. Reduces first-chance SocketException noise on dual-stack hosts with a broken IPv6 path. Disable if operators require strict IPv6 preference even when the path is unreachable. Declaration public bool EnableIpv6UnreachableSoftSkip { get; set; } Property Value Type Description bool | Edit this page View Source EnableQpackDynamicTable When true, enables RFC 9204 QPACK dynamic table encoding and decoding for inbound HTTP/3 connections. Each connection gets its own Titanium.Web.Proxy.Http3.Qpack.QpackContext with two independent 4096-byte tables (one inbound, one outbound). Defaults to false (static-table-only); existing deployments are unaffected. Declaration [Experimental(\"TWP001\")] public bool EnableQpackDynamicTable { get; set; } Property Value Type Description bool | Edit this page View Source EnableRequestTimingCapture Enables structured request/connection timing capture. When false (the default) no timing objects are allocated and no UtcNow calls are made for timing purposes anywhere in the proxy, so there is zero overhead on the hot path. When enabled, every SessionEventArgsBase exposes a populated Timing (per-request phases: client header read, connection wait, request send, time-to-first-byte, response delivery, total), every upstream connection exposes a populated UpstreamConnectionTiming (reachable from a session via UpstreamConnectionTiming, describing DNS, TCP connect, optional upstream-proxy CONNECT, and TLS handshake durations), and a decrypted TunnelConnectSessionEventArgs exposes the client-facing TLS handshake duration via ClientTlsTiming. Can be toggled at any time; it only affects sessions/connections created after the change, never mutating timing objects already handed out. Defaults to false. Declaration public bool EnableRequestTimingCapture { get; set; } Property Value Type Description bool | Edit this page View Source EnableRfc8441 When true, the proxy enables RFC 8441 WebSocket-over-HTTP/2: Accepts extended CONNECT (:protocol = websocket) from h2 clients and advertises SETTINGS_ENABLE_CONNECT_PROTOCOL=1 to them. Per origin: if the origin is HTTP/2 and advertises RFC 8441 support, DATA frames are relayed directly; if the origin is HTTP/2 and does not, the stream is reset with REFUSED_STREAM; if the origin is HTTP/1.1, the h2โ†’h1 WebSocket upgrade bridge is used. On the HTTP/1.1-client-to-h2-origin translation bridge, translates Upgrade: websocket into extended CONNECT when the origin advertises the setting; otherwise falls back to a dedicated HTTP/1.1 origin connection for that WebSocket. When this property is false, that bridge still returns synthetic 501 Not Implemented for WebSocket upgrades (historical default). Default: false (must opt-in). Declaration public bool EnableRfc8441 { get; set; } Property Value Type Description bool | Edit this page View Source EnableTcpKeepAlive Enable TCP KeepAlive on client and server sockets so NAT/firewall mappings for long-lived CONNECT tunnels are refreshed. Default: true. Declaration public bool EnableTcpKeepAlive { get; set; } Property Value Type Description bool | Edit this page View Source EnableTcpServerConnectionPrefetch Should we enable tcp server connection prefetching? When enabled, as soon as we receive a client connection we concurrently initiate corresponding server connection process using CONNECT hostname or SNI hostname on a separate task so that after parsing client request we will have the server connection immediately ready or in the process of getting ready. If a server connection is available in cache then this prefetch task will immediately return with the available connection from cache. Defaults to true. Declaration public bool EnableTcpServerConnectionPrefetch { get; set; } Property Value Type Description bool | Edit this page View Source EnableWinAuth Enable disable Windows Authentication (NTLM/Kerberos). By default SSPI uses the process identity. To authenticate as another user, set WinAuthCredentialsProvider (issue #461). Defaults to false. Declaration public bool EnableWinAuth { get; set; } Property Value Type Description bool | Edit this page View Source EndpointAdmissionRejectionCount Total number of client connections rejected by any endpoint's MaxConcurrentClients since this instance was created. Declaration public long EndpointAdmissionRejectionCount { get; } Property Value Type Description long | Edit this page View Source ForwardToUpstreamGateway Gets or sets a value indicating whether requests will be chained to upstream gateway. Defaults to false. Declaration public bool ForwardToUpstreamGateway { get; set; } Property Value Type Description bool | Edit this page View Source GetCustomUpStreamProxyFunc A callback to provide authentication credentials for up stream proxy this proxy is using for HTTP(S) requests. User should return the ExternalProxy object with valid credentials. Declaration public Func>? GetCustomUpStreamProxyFunc { get; set; } Property Value Type Description Func> | Edit this page View Source GlobalAdmissionRejectionCount Total number of client connections rejected by MaxConcurrentClientConnections since this instance was created. Declaration public long GlobalAdmissionRejectionCount { get; } Property Value Type Description long | Edit this page View Source Http3ClientConnectionCount Total number of active inbound HTTP/3 (QUIC) client connections. Declaration public int Http3ClientConnectionCount { get; } Property Value Type Description int | Edit this page View Source Http3ServerConnectionCount Total number of active upstream HTTP/3 (QUIC) server connections. These are also included in ServerConnectionCount. Declaration public int Http3ServerConnectionCount { get; } Property Value Type Description int | Edit this page View Source HttpResponseCacheFiller Fills the GET/HEAD response cache from a session that is already on the interception path. Does not subscribe BeforeResponse or AfterResponse, so it does not turn NeedsHttpInterception(ProxyEndPoint) on. Declaration public Action? HttpResponseCacheFiller { get; set; } Property Value Type Description Action | Edit this page View Source IdleReadTimeoutSeconds Seconds of idle time allowed while reading from the origin (stalled header/body waits). Applied via CancelAfter on the active read operation. Default is 0 (disabled). Per-session override: IdleReadTimeout. Declaration public int IdleReadTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source IdleWriteTimeoutSeconds Seconds of idle time allowed while writing to the origin (stalled header/body waits). Applied via CancelAfter on the active write operation. Default is 0 (disabled). Per-session override: IdleWriteTimeout. Declaration public int IdleWriteTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source IgnoreServerCertificateErrors When true, origin TLS certificates that fail OS chain validation are still accepted (MITM of loopback/self-signed/private CAs). Inspector's \"Ignore server certificate errors\" maps here. Default false. A subscribed ServerCertificateValidationCallback still wins. Declaration public bool IgnoreServerCertificateErrors { get; set; } Property Value Type Description bool | Edit this page View Source ListenerBackLog TCP listener accept backlog. Default: 1024 for burst connection handling. Declaration public int ListenerBackLog { get; set; } Property Value Type Description int | Edit this page View Source Logger The live, shared logger used throughout this proxy instance. Reflects the most recent call to ApplyLoggingConfiguration(). Declaration public ILogger Logger { get; } Property Value Type Description ILogger | Edit this page View Source Logging Configuration for this proxy instance's built-in diagnostic logging - the replacement for the removed ExceptionFunc callback. Every exception the proxy catches (even when handled internally and never surfaced to user code) is reported through this logger at an appropriate severity; see ProxyLoggingOptions for the console/file sinks, enable/disable switch, and minimum level. Mutate the returned instance (or assign a new one) at any point; each assignment/mutation you want to take effect must be followed by ApplyLoggingConfiguration() (which Start(bool) also calls automatically, so the configuration active at the moment the proxy starts running is picked up for the run even if you never call it yourself). Calling it again later - including while the proxy is already running - immediately swaps in the new configuration; this is safe because logging never blocks or otherwise affects proxy traffic. Declaration public ProxyLoggingOptions Logging { get; set; } Property Value Type Description ProxyLoggingOptions | Edit this page View Source MaxBufferedBodyBytes Maximum bytes the proxy will buffer for a single request or response body when body buffering is required (body-read hooks, authentication retry, etc.). Bodies larger than this limit are rejected with 413 (upstream request) or connection teardown (upstream response). Set to 0 to disable the limit (not recommended). Default: 4,194,304 (4 MiB). Declaration public int MaxBufferedBodyBytes { get; set; } Property Value Type Description int | Edit this page View Source MaxCachedConnections Maximum number of concurrent connections per remote host in cache. Only meaningful when EnableConnectionPool is true; to disable pooling, set EnableConnectionPool to false rather than setting this to 0 - the pool eviction loop treats a value below 1 as \"evict without limit while holding the pool-wide lock\", which spins indefinitely once the cache for that host is empty and would stall every other connection acquire/release in the process. Rejected outright at assignment so that state cannot be reached. Default value is 128. Declaration public int MaxCachedConnections { get; set; } Property Value Type Description int Exceptions Type Condition ArgumentOutOfRangeException The assigned value is less than 1. | Edit this page View Source MaxConcurrentClientConnections Maximum number of client connections admitted across all TCP-based endpoints at once. null (the default) disables the global admission gate, preserving today's unbounded behavior. When set, a connection beyond this limit is rejected and disposed immediately after accept, before a handler task is even started. Enforced independently of ClientConnectionCount: see Titanium.Web.Proxy.ProxyServer.admittedClientConnectionCount for why. See also MaxConcurrentClients for a per-endpoint cap layered on top of this global one. Declaration public int? MaxConcurrentClientConnections { get; set; } Property Value Type Description int? | Edit this page View Source MaxConcurrentHttp11HttpsOriginCreates Caps concurrent new HTTPS origin TCP/TLS opens on the H2โ†’H1 bridge only (MITM / re-encrypt). Pool hits (warm keep-alive) are uncapped. Cleartext H1 origins are not gated. Default is Clamp(ProcessorCount, 4, 32). Set before the first H2โ†’H1 HTTPS origin open (typically before Start(bool)); changing the value after the create gate has been used has no effect on the live semaphore. Declaration public int MaxConcurrentHttp11HttpsOriginCreates { get; set; } Property Value Type Description int Exceptions Type Condition ArgumentOutOfRangeException The assigned value is less than 1. | Edit this page View Source MaxDecodedHeaderListBytes Maximum decoded HTTP/2 header list size in bytes, using RFC 7541 accounting (name.Length + value.Length + 32 per field). Requests or responses with a decoded header list exceeding this limit will be refused with RST_STREAM(ENHANCE_YOUR_CALM) (code 0xb). Set to 0 to disable the limit (not recommended). Default: 65,536 (64 KiB). Advertised via SETTINGS_MAX_HEADER_LIST_SIZE. Declaration public int MaxDecodedHeaderListBytes { get; set; } Property Value Type Description int | Edit this page View Source MaxWebSocketFramePayloadBytes Maximum WebSocket frame payload size in bytes that the proxy will accept during frame-level interception (i.e. when BeforeWebSocketFrame has at least one subscriber). Frames whose decoded payload exceeds this limit cause the WebSocket connection to be closed with Close code 1009 (Message Too Big). Raw-relay sessions (no BeforeWebSocketFrame subscriber) bypass this check entirely and pass all frames through unvalidated. Default: 16,777,216 (16 MiB). Declaration public int MaxWebSocketFramePayloadBytes { get; set; } Property Value Type Description int | Edit this page View Source NetworkFailureRetryAttempts Number of times to retry upon network failures when connection pool is enabled. Declaration public int NetworkFailureRetryAttempts { get; set; } Property Value Type Description int | Edit this page View Source NoDelay Gets or sets a Boolean value that specifies whether server and client stream Sockets are using the Nagle algorithm. Defaults to true, no nagle algorithm is used. Declaration public bool NoDelay { get; set; } Property Value Type Description bool | Edit this page View Source OriginHttpVersionPolicy Controls which HTTP version is declared to the origin server on the request line, independently of the version the client declared to the proxy. Defaults to PreserveClientVersion, which matches the proxy's historical pass-through behavior exactly. Set to NormalizeToHttp11 to let HTTP/1.0 clients share pooled, persistent origin connections the same way HTTP/1.1 clients already do. This only changes the wire version written to the origin request line - it never changes the client-facing Http.Request.HttpVersion that event handlers observe, nor the version/persistence used to write the response back to the client. Declaration public OriginHttpVersionPolicy OriginHttpVersionPolicy { get; set; } Property Value Type Description OriginHttpVersionPolicy | Edit this page View Source PolicyModes Which resource-bound PolicyFamily is enforced, observed, or disabled, per the plan's rollout section. Read live by each family's enforcement call site - not baked into a per-request snapshot at connection accept time - so assigning a new value here (a whole-object replacement, never a mutation of the previous instance) takes effect for the next check any in-flight or new request makes, without restarting the proxy. This is the \"runtime switch to drop to Observe without redeploying\" the plan requires; see WithAllObservedExceptDisabled() for the one-call way to do that. Defaults to Balanced's modes (resource families enforced, Http2RelayValidation disabled so compressed H2 relay stays the verbatim-HPACK fast path). AllEnforce additionally enforces relay validation and is what PublicFacing applies. Assigning Profile also replaces this value with that profile's bundle; assign PolicyModes afterward to deviate from the selected profile's modes without changing anything else the profile set. Declaration public ProxyPolicyModes PolicyModes { get; set; } Property Value Type Description ProxyPolicyModes | Edit this page View Source Profile The last profile applied via this property's setter, defaulting to Balanced - the profile every field on this instance already starts at, so a fresh new ProxyServer() reports Balanced without needing its setter to run once at construction time. Assigning this property applies its entire ProxyProfileSettings bundle - ResourceLimits, PolicyModes, SupportedSslProtocols, BlockPrivateNetworkDestinations, MaxConcurrentClientConnections and the deadline-seconds properties - as a single atomic assignment, so a reader can never observe a half-applied profile. Assigning any of those properties individually afterward overrides just that one, without reverting the rest of the profile's bundle. Logged once per Start(bool) call, by name only - never with hosts, URLs or secrets, per the plan's rollout section. Declaration public ProxyProfile Profile { get; set; } Property Value Type Description ProxyProfile | Edit this page View Source ProxyAuthenticationRealm Realm used during Proxy Basic Authentication. Declaration public string ProxyAuthenticationRealm { get; set; } Property Value Type Description string | Edit this page View Source ProxyAuthenticationSchemes A collection of scheme types, e.g. basic, NTLM, Kerberos, Negotiate, to return if scheme authentication is required. Works in relation with ProxySchemeAuthenticateFunc. Declaration public IEnumerable ProxyAuthenticationSchemes { get; set; } Property Value Type Description IEnumerable | Edit this page View Source ProxyBasicAuthenticateFunc A callback to authenticate proxy clients via basic authentication. Parameters are username and password as provided by client. Should return true for successful authentication. Declaration public Func>? ProxyBasicAuthenticateFunc { get; set; } Property Value Type Description Func> | Edit this page View Source ProxyEndPoints A list of IpAddress and port this proxy is listening to. Declaration public List ProxyEndPoints { get; set; } Property Value Type Description List | Edit this page View Source ProxyRunning Is the proxy currently running? Declaration public bool ProxyRunning { get; } Property Value Type Description bool | Edit this page View Source ProxySchemeAuthenticateFunc A pluggable callback to authenticate clients by scheme instead of requiring basic authentication through ProxyBasicAuthenticateFunc. Parameters are current working session, schemeType, and token as provided by a calling client. Should return success for successful authentication, continuation if the package requests, or failure. Declaration public Func>? ProxySchemeAuthenticateFunc { get; set; } Property Value Type Description Func> | Edit this page View Source RequestTimeoutSeconds Total seconds allowed for a single request/response exchange after BeforeRequest returns (connect, send, wait for headers, and body copy). Default is 0 (disabled). Per-session override: RequestTimeout. Declaration public int RequestTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ResourceLimits The shared, immutable resource-bound snapshot (concurrent-stream cap, CONTINUATION frame-count/wall-clock bounds, peer-initiated incomplete-stream-reset budget, and the other limits described in ProxyResourceLimits) consulted by the HTTP/2 relay so a single proxy-owned value governs both what is enforced and what is advertised to each peer, rather than admitting purely against whatever the origin advertised. Assign a new ProxyResourceLimits (constructed via Create(long, int, long, long?, long?, double?, int?, int, int?, int, TimeSpan, bool, int, int?)) to override the Default snapshot. There is no artificial upper clamp: high-CPU/RAM hosts may pass larger maxCachedConnectionsPerHost, maxConcurrentStreamsPerConnection, etc. as needed. The live TCP pool depth knob MaxCachedConnections remains independently settable and should usually be kept in sync with MaxCachedConnectionsPerHost. Declaration public ProxyResourceLimits ResourceLimits { get; set; } Property Value Type Description ProxyResourceLimits | Edit this page View Source ResponseHeaderContributor Adds response headers on the way to the client without subscribing BeforeResponse. Plus CORS uses this so a listener can stay on H1 terminate-lite. Declaration public Action? ResponseHeaderContributor { get; set; } Property Value Type Description Action | Edit this page View Source ResponseHeaderTimeoutSeconds Seconds to wait for the origin to send the response status line and headers after the request has been sent. Enforced with a linked CancellationTokenSource (not Socket receive timeout alone). When the deadline elapses a ProxyTimeoutException with ResponseHeader is raised (and may be converted to HTTP 504 before any response bytes have been committed to the client). Default is 0 (disabled). WebSocket upgrades, Server-Sent Events, raw tunnels, and sessions that already wrote a response status to the client are exempt; those waits use IdleReadTimeoutSeconds when configured. Per-session override: ResponseHeaderTimeout. Declaration public int ResponseHeaderTimeoutSeconds { get; set; } Property Value Type Description int | Edit this page View Source ReuseSocket When true (default), SO_REUSEADDR is requested where Titanium.Web.Proxy.Helpers.RunTime.IsSocketReuseAvailable() reports support (always on Windows; on non-Windows, .NET Core 3+ / compatible runtimes). Declaration public bool ReuseSocket { get; set; } Property Value Type Description bool | Edit this page View Source ReverseProxy Optional reverse-proxy route/cluster configuration. When null (default), Core keeps 6.x ForwardHost behavior with zero added cost on the hot path. Declaration public ReverseProxyOptions? ReverseProxy { get; set; } Property Value Type Description ReverseProxyOptions | Edit this page View Source ServerConnectionCount Total number of active server connections (TCP plus upstream QUIC). For HTTP/3-only upstreams see Http3ServerConnectionCount. Declaration public int ServerConnectionCount { get; } Property Value Type Description int | Edit this page View Source ShouldInterceptHttp Optional per-request/stream predicate consulted only when the global interception gate is active. Return true to use the full SessionEventArgs path; return false to use the fast-forward path. null (the default) intercepts every request โ€” preserving today's behavior. Declaration public Func? ShouldInterceptHttp { get; set; } Property Value Type Description Func | Edit this page View Source SupportedServerSslProtocols Ssl versions offered on outbound HTTPS connections to origins (and upstream proxies). Default None means โ€œuse SupportedSslProtocolsโ€ (typically TLS 1.2 and 1.3). Set an explicit mask to restrict or expand outbound-only independently of inbound client TLS. Older docs described None as โ€œsame as the proxy client.โ€ That coupling is incorrect across protocol translations (e.g. inbound QUIC is always TLS 1.3 while outbound TCP SslStream on macOS SecureTransport cannot offer TLS 1.3). Declaration public SslProtocols SupportedServerSslProtocols { get; set; } Property Value Type Description SslProtocols | Edit this page View Source SupportedSslProtocols List of supported Ssl versions. Defaults to TLS 1.2/1.3 only as of 5.0 - a breaking change from 4.x, which also enabled SSL 3.0/TLS 1.0/1.1. Those legacy, broken-by-design protocols require an explicit opt-in by assigning this property directly (e.g. SslProtocols.Tls | SslProtocols.Tls11 | SslProtocols.Tls12 | SslProtocols.Tls13) if a legacy client/server genuinely requires them. Declaration public SslProtocols SupportedSslProtocols { get; set; } Property Value Type Description SslProtocols | Edit this page View Source TcpTimeWaitSeconds SO_LINGER timeout in seconds applied to client and upstream sockets via LingerOption (enabled with this timeout). This is not the kernel TCP TIME_WAIT duration โ€” TIME_WAIT is controlled by the OS. A positive value means Close may block up to that many seconds flushing send buffers; use 0 for an abortive close (RST). Default is 0 so high-churn proxies avoid TIME_WAIT accumulation; the 1-second connection disposal delay already prefers peer-first close. Declaration public int TcpTimeWaitSeconds { get; set; } Property Value Type Description int | Edit this page View Source ThreadPoolWorkerThread Customize the minimum ThreadPool size (increase it on a server). Defaults to max(ProcessorCount * 2, 16) so short loopback/proxy workloads are not starved while the pool is still ramping workers. Declaration public int ThreadPoolWorkerThread { get; set; } Property Value Type Description int | Edit this page View Source UpStreamEndPoint Local adapter/NIC endpoint where proxy makes request via. Defaults via any IP addresses of this machine. When the resolved destination address family does not match this endpoint, it is ignored so dual-stack destinations can still connect (see UpStreamEndPointIPv4 / UpStreamEndPointIPv6). Declaration public IPEndPoint? UpStreamEndPoint { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamEndPointIPv4 Local bind endpoint used when the resolved upstream destination is IPv4. Takes precedence over UpStreamEndPoint for IPv4 destinations. Declaration public IPEndPoint? UpStreamEndPointIPv4 { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamEndPointIPv6 Local bind endpoint used when the resolved upstream destination is IPv6. Takes precedence over UpStreamEndPoint for IPv6 destinations. Declaration public IPEndPoint? UpStreamEndPointIPv6 { get; set; } Property Value Type Description IPEndPoint | Edit this page View Source UpStreamHttpProxy External proxy used for Http requests. Declaration public IExternalProxy? UpStreamHttpProxy { get; set; } Property Value Type Description IExternalProxy | Edit this page View Source UpStreamHttpsProxy External proxy used for Https requests. Declaration public IExternalProxy? UpStreamHttpsProxy { get; set; } Property Value Type Description IExternalProxy | Edit this page View Source UpstreamProxyConfigurationScript If set, the upstream proxy will be detected by a script that will be loaded from the provided Uri Declaration public Uri? UpstreamProxyConfigurationScript { get; set; } Property Value Type Description Uri | Edit this page View Source ViaHeaderPseudonym Pseudonym used in Via header fields appended to forwarded requests and responses (RFC 9110 ยง7.6.3). Defaults to DefaultViaHeaderPseudonym. Set to an empty string to disable Via header injection entirely. Loop detection uses this value: a request arriving with this pseudonym already present in Via is refused with 508 Loop Detected. Declaration public string ViaHeaderPseudonym { get; set; } Property Value Type Description string | Edit this page View Source WinAuthCredentialsProvider Optional per-session credential provider for server 401 WinAuth (NTLM/Negotiate/Kerberos). Return null to use the current process identity (legacy behavior). Do not put plaintext passwords on SessionEventArgs โ€” use this callback instead. Windows SSPI only; ignored on non-Windows platforms. Declaration public Func>? WinAuthCredentialsProvider { get; set; } Property Value Type Description Func> Methods | Edit this page View Source AddEndPoint(ProxyEndPoint) Add a proxy end point. Declaration public void AddEndPoint(ProxyEndPoint endPoint) Parameters Type Name Description ProxyEndPoint endPoint The proxy endpoint. | Edit this page View Source ApplyLoggingConfiguration() Rebuilds the active logger/logger factory from the current Logging configuration, disposing any previously owned built-in providers. Called automatically from the constructor (with the default configuration) and from Start(bool). Call this explicitly any time after changing Logging and you want the change to take effect immediately - whether the proxy is stopped (e.g. before using CertificateManager directly) or already running. Declaration public void ApplyLoggingConfiguration() | Edit this page View Source ClearDecryptFailureBypass() Clears all learned decrypt-bypass entries. Declaration public void ClearDecryptFailureBypass() | Edit this page View Source DisableAllSystemProxies() Clear all proxy settings for current machine. Declaration public void DisableAllSystemProxies() | Edit this page View Source DisableSystemHttpProxy() Clear HTTP proxy settings of current machine. Declaration public void DisableSystemHttpProxy() | Edit this page View Source DisableSystemHttpsProxy() Clear HTTPS proxy settings of current machine. Declaration public void DisableSystemHttpsProxy() | Edit this page View Source DisableSystemProxy(ProxyProtocolType) Clear the specified proxy setting for current machine. Declaration public void DisableSystemProxy(ProxyProtocolType protocolType) Parameters Type Name Description ProxyProtocolType protocolType | Edit this page View Source Dispose() Performs application-defined tasks associated with freeing, releasing, or resetting unmanaged resources. Declaration public void Dispose() | Edit this page View Source Dispose(bool) Declaration [SuppressMessage(\"ApiDesign\", \"RS0016:Add public types and members to the declared API\", Justification = \"Protected Dispose(bool) is required by the standard IDisposable pattern but is not public API.\")] protected virtual void Dispose(bool disposing) Parameters Type Name Description bool disposing | Edit this page View Source ForceDecryptFailureBypass(string) Marks host as actively bypassed (same as a forced learn after origin TLS failure). Raises DecryptFailureBypassChanged when bypass newly becomes active. Declaration public bool ForceDecryptFailureBypass(string host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source GetDecryptFailureBypassEntries() Snapshot of current learned decrypt-bypass entries (may include non-active strikes). Declaration public IReadOnlyList GetDecryptFailureBypassEntries() Returns Type Description IReadOnlyList | Edit this page View Source RemoveDecryptFailureBypass(string) Removes one host from the learned decrypt-bypass cache. Declaration public bool RemoveDecryptFailureBypass(string host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source RemoveEndPoint(ProxyEndPoint) Remove a proxy end point. Will throw error if the end point doesn't exist. Declaration public void RemoveEndPoint(ProxyEndPoint endPoint) Parameters Type Name Description ProxyEndPoint endPoint The existing endpoint to remove. | Edit this page View Source RestoreOriginalProxySettings() Restores the original proxy settings. Declaration public void RestoreOriginalProxySettings() | Edit this page View Source SetAsSystemHttpProxy(ExplicitProxyEndPoint) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemHttpProxy(ExplicitProxyEndPoint endPoint) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. | Edit this page View Source SetAsSystemHttpProxy(ExplicitProxyEndPoint, SystemProxySettings) Set the given explicit end point as the default HTTP proxy server for current machine. Declaration public void SetAsSystemHttpProxy(ExplicitProxyEndPoint endPoint, SystemProxySettings settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. SystemProxySettings settings The Windows system proxy settings. | Edit this page View Source SetAsSystemHttpsProxy(ExplicitProxyEndPoint) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemHttpsProxy(ExplicitProxyEndPoint endPoint) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. | Edit this page View Source SetAsSystemHttpsProxy(ExplicitProxyEndPoint, SystemProxySettings) Set the given explicit end point as the default HTTPS proxy server for current machine. Declaration public void SetAsSystemHttpsProxy(ExplicitProxyEndPoint endPoint, SystemProxySettings settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. SystemProxySettings settings The Windows system proxy settings. | Edit this page View Source SetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. ProxyProtocolType protocolType The proxy protocol type. | Edit this page View Source SetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType, SystemProxySettings?) Set the given explicit end point as the default proxy server for current machine. Declaration public void SetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType, SystemProxySettings? settings) Parameters Type Name Description ExplicitProxyEndPoint endPoint The explicit endpoint. ProxyProtocolType protocolType The proxy protocol type. SystemProxySettings settings The Windows system proxy settings, or null to preserve the current bypass list. | Edit this page View Source SetHttp3Enabled(bool) Enables or disables EnableHttp3. Enabling still requires MsQuic (IsSupported); disabling is always applied. Safe to call while the proxy is running โ€” new origin connections pick up the change. Existing sessions keep the protocol they already negotiated. Declaration public bool SetHttp3Enabled(bool enabled) Parameters Type Name Description bool enabled Returns Type Description bool true when HTTP/3 is enabled after the call. | Edit this page View Source ShouldBypassDecryptForLearnedHost(string?) When EnableDecryptFailureBypass is on and host is actively bypassed, returns true (decrypt should be skipped). Declaration public bool ShouldBypassDecryptForLearnedHost(string? host) Parameters Type Name Description string host Returns Type Description bool | Edit this page View Source Start(bool) Start this proxy server instance. Transactional: if any endpoint fails to start, every listener this call already started is stopped, the system-upstream-proxy resolver (if this call created one) is disposed, and ProxyRunning is left false before the exception propagates. A caller that catches the exception is left with an instance in exactly the same state as before calling Start(bool), not a partially-bound proxy with some endpoints silently listening. Declaration public void Start(bool changeSystemProxySettings = true) Parameters Type Name Description bool changeSystemProxySettings Whether or not clear any system proxy settings which is pointing to our own endpoint (causing a cycle). E.g due to ungracious proxy shutdown before. | Edit this page View Source Stop() Stop this proxy server instance. Endpoints remain registered so Start(bool) can re-listen on the same ports. In-flight sessions are cancelled; pooled upstream connections are cleared. The connection factory itself stays usable for a subsequent Start (it is only disposed with the proxy). Declaration public void Stop() | Edit this page View Source StopAsync(TimeSpan?) Asynchronously stop this proxy server, cancel in-flight sessions, and wait briefly for client connection count to drain before clearing the upstream pool. Declaration public Task StopAsync(TimeSpan? drainTimeout = null) Parameters Type Name Description TimeSpan? drainTimeout Maximum time to wait for active client handlers to exit after cancellation. Defaults to 5 seconds. Returns Type Description Task | Edit this page View Source TryDisableAllSystemProxies() Clear all OS proxy settings without throwing. Declaration public SystemProxyChangeResult TryDisableAllSystemProxies() Returns Type Description SystemProxyChangeResult | Edit this page View Source TryDisableSystemProxy(ProxyProtocolType) Clear OS proxy for the given protocols without throwing. Declaration public SystemProxyChangeResult TryDisableSystemProxy(ProxyProtocolType protocolType) Parameters Type Name Description ProxyProtocolType protocolType Returns Type Description SystemProxyChangeResult | Edit this page View Source TryEnableHttp3IfSupported() Turns on EnableHttp3 when MsQuic is available (IsSupported). Hosts (CLI, Inspector, examples) should call this instead of setting EnableHttp3 blindly. Returns true when HTTP/3 was enabled. Declaration public bool TryEnableHttp3IfSupported() Returns Type Description bool | Edit this page View Source TryRestoreOriginalProxySettings() Restore OS proxy without throwing. Declaration public SystemProxyChangeResult TryRestoreOriginalProxySettings() Returns Type Description SystemProxyChangeResult | Edit this page View Source TrySetAsSystemProxy(ExplicitProxyEndPoint, ProxyProtocolType, SystemProxySettings?) Enable OS system proxy without throwing. Failures are logged and returned so Inspector/CLI can show a status message instead of crashing. Declaration public SystemProxyChangeResult TrySetAsSystemProxy(ExplicitProxyEndPoint endPoint, ProxyProtocolType protocolType, SystemProxySettings? settings = null) Parameters Type Name Description ExplicitProxyEndPoint endPoint ProxyProtocolType protocolType SystemProxySettings settings Returns Type Description SystemProxyChangeResult Events | Edit this page View Source AfterResponse Intercept after response event from server. Declaration public event AsyncEventHandler? AfterResponse Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeRequest Intercept request event to server. Declaration public event AsyncEventHandler? BeforeRequest Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeResponse Intercept response event from server. Declaration public event AsyncEventHandler? BeforeResponse Event Type Type Description AsyncEventHandler | Edit this page View Source BeforeUpStreamConnectRequest Intercept connect request sent to upstream proxy. Declaration public event AsyncEventHandler? BeforeUpStreamConnectRequest Event Type Type Description AsyncEventHandler | Edit this page View Source ClientCertificateSelectionCallback Event to override client certificate selection during mutual SSL authentication. Declaration public event AsyncEventHandler? ClientCertificateSelectionCallback Event Type Type Description AsyncEventHandler | Edit this page View Source ClientConnectionCountChanged Event occurs when client connection count changed. Declaration public event EventHandler? ClientConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source DecryptFailureBypassChanged Raised when a host becomes actively bypassed (threshold reached or same-CONNECT mark). Handlers must not block; Inspector marshals to the UI thread. Declaration public event EventHandler? DecryptFailureBypassChanged Event Type Type Description EventHandler | Edit this page View Source Http3ClientConnectionCountChanged Event occurs when inbound HTTP/3 client connection count changed. Declaration public event EventHandler? Http3ClientConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source Http3ServerConnectionCountChanged Event occurs when upstream HTTP/3 server connection count changed. Declaration public event EventHandler? Http3ServerConnectionCountChanged Event Type Type Description EventHandler | Edit this page View Source OnClientConnectionCreate Customize TcpClient used for client connection upon create. Declaration public event AsyncEventHandler? OnClientConnectionCreate Event Type Type Description AsyncEventHandler | Edit this page View Source OnRequestBodyWrite Intercept request body send event to server. Subscribe to inspect or modify the request body chunk-by-chunk as it streams to the server, without buffering the whole body. Do not combine with SessionEventArgs.GetRequestBody (which buffers). Declaration public event AsyncEventHandler? OnRequestBodyWrite Event Type Type Description AsyncEventHandler | Edit this page View Source OnResponseBodyWrite Intercept response body send event to client. Subscribe to inspect or modify the response body chunk-by-chunk as it streams to the client, without buffering the whole body. Do not combine with SessionEventArgs.GetResponseBody (which buffers). Declaration public event AsyncEventHandler? OnResponseBodyWrite Event Type Type Description AsyncEventHandler | Edit this page View Source OnServerConnectionCreate Customize TcpClient used for server connection upon create. Declaration public event AsyncEventHandler? OnServerConnectionCreate Event Type Type Description AsyncEventHandler | Edit this page View Source ServerCertificateValidationCallback Event to override the default verification logic of remote SSL certificate received during authentication. Declaration public event AsyncEventHandler? ServerCertificateValidationCallback Event Type Type Description AsyncEventHandler | Edit this page View Source ServerConnectionCountChanged Event occurs when server connection count changed. Declaration public event EventHandler? ServerConnectionCountChanged Event Type Type Description EventHandler Implements IDisposable" }, "api/Titanium.Web.Proxy.Routing.ReverseProxyFastPath.html": { "href": "api/Titanium.Web.Proxy.Routing.ReverseProxyFastPath.html", diff --git a/docs/xrefmap.yml b/docs/xrefmap.yml index 6d77c5e65..07c017c2e 100644 --- a/docs/xrefmap.yml +++ b/docs/xrefmap.yml @@ -9614,6 +9614,19 @@ references: commentId: E:Titanium.Web.Proxy.ProxyServer.Http3ServerConnectionCountChanged fullName: Titanium.Web.Proxy.ProxyServer.Http3ServerConnectionCountChanged nameWithType: ProxyServer.Http3ServerConnectionCountChanged +- uid: Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller + name: HttpResponseCacheFiller + href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_HttpResponseCacheFiller + commentId: P:Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller + fullName: Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller + nameWithType: ProxyServer.HttpResponseCacheFiller +- uid: Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller* + name: HttpResponseCacheFiller + href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_HttpResponseCacheFiller_ + commentId: Overload:Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller + isSpec: "True" + fullName: Titanium.Web.Proxy.ProxyServer.HttpResponseCacheFiller + nameWithType: ProxyServer.HttpResponseCacheFiller - uid: Titanium.Web.Proxy.ProxyServer.IdleReadTimeoutSeconds name: IdleReadTimeoutSeconds href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_IdleReadTimeoutSeconds @@ -9992,6 +10005,19 @@ references: isSpec: "True" fullName: Titanium.Web.Proxy.ProxyServer.ResourceLimits nameWithType: ProxyServer.ResourceLimits +- uid: Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor + name: ResponseHeaderContributor + href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_ResponseHeaderContributor + commentId: P:Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor + fullName: Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor + nameWithType: ProxyServer.ResponseHeaderContributor +- uid: Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor* + name: ResponseHeaderContributor + href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_ResponseHeaderContributor_ + commentId: Overload:Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor + isSpec: "True" + fullName: Titanium.Web.Proxy.ProxyServer.ResponseHeaderContributor + nameWithType: ProxyServer.ResponseHeaderContributor - uid: Titanium.Web.Proxy.ProxyServer.ResponseHeaderTimeoutSeconds name: ResponseHeaderTimeoutSeconds href: api/Titanium.Web.Proxy.ProxyServer.html#Titanium_Web_Proxy_ProxyServer_ResponseHeaderTimeoutSeconds From 361a4674be3e210f05ece123d9b31c03a7bcc077 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 17:37:14 +0530 Subject: [PATCH 18/24] Make the response-cache helpers match the Sonar rules without touching the hit path. --- .../Caching/HttpResponseCacheMiddleware.cs | 21 ++++++++----------- 1 file changed, 9 insertions(+), 12 deletions(-) diff --git a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs index f1e59324f..ac9ca3a45 100644 --- a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs +++ b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs @@ -1,5 +1,6 @@ using System; using System.Collections.Generic; +using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; @@ -134,7 +135,7 @@ internal static string BuildCacheKey(string method, string host, string path) return $"{method}:{host}{path}"; } - private void ServeHit(ProxyMiddlewareContext context, CachedHttpResponse cached) + private static void ServeHit(ProxyMiddlewareContext context, CachedHttpResponse cached) { var headers = new List(cached.Headers.Count + 1); foreach (var h in cached.Headers) @@ -232,13 +233,12 @@ private static List> CopyCacheableHeaders(IEnumerab { if (header.Name.Equals("Connection", StringComparison.OrdinalIgnoreCase)) { - foreach (var part in header.Value.Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)) + foreach (var part in header.Value + .Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries) + .Where(part => !part.Equals("close", StringComparison.OrdinalIgnoreCase) && + !part.Equals("keep-alive", StringComparison.OrdinalIgnoreCase))) { - if (!part.Equals("close", StringComparison.OrdinalIgnoreCase) && - !part.Equals("keep-alive", StringComparison.OrdinalIgnoreCase)) - { - hopByHop.Add(part); - } + hopByHop.Add(part); } continue; @@ -248,12 +248,9 @@ private static List> CopyCacheableHeaders(IEnumerab } var kept = new List>(staged.Count); - foreach (var header in staged) + foreach (var header in staged.Where(header => !hopByHop.Contains(header.Key))) { - if (!hopByHop.Contains(header.Key)) - { - kept.Add(header); - } + kept.Add(header); } return kept; From caa080b537e4e87c5e69bf4a4634bcb74f043841 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 4 Oct 2026 12:30:14 +0000 Subject: [PATCH 19/24] Update documentation --- ...ium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html index 1c60b303a..b8d49e796 100644 --- a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html +++ b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html @@ -128,7 +128,7 @@

      Constructors Edit this page - View Source + View Source

      HttpResponseCacheMiddleware(IHttpResponseCache, TimeSpan?)

      @@ -167,7 +167,7 @@

      Methods Edit this page - View Source + View Source

      InvokeAsync(ProxyMiddlewareContext, ProxyMiddlewareDelegate, CancellationToken)

      @@ -224,7 +224,7 @@
      Returns
      Edit this page
      - View Source + View Source

      TryCacheCurrentResponse(SessionEventArgs)

      @@ -268,7 +268,7 @@

      Implements

      Edit this page
    3. - View Source + View Source
    4. From 65eec2b801bfea158fc111e3e6a4850453ad380d Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 18:08:24 +0530 Subject: [PATCH 20/24] Keep cache stores and H3 stream teardown allocation-free after the Sonar cleanup. The header Where allocated on every cache store, CancelAsync queued a Task on every H3 fast-path teardown, and origin resolution could leave the request stamped as HTTP/2. --- .../Services/SessionStreamBuffer.cs | 7 +++++-- .../Caching/HttpResponseCacheMiddleware.cs | 19 +++++++++++-------- .../Http3/Http3OriginBridge.Http2.cs | 5 +++-- .../Http3/Http3RequestStream.cs | 4 +++- 4 files changed, 22 insertions(+), 13 deletions(-) diff --git a/src/Titanium.Inspector/Services/SessionStreamBuffer.cs b/src/Titanium.Inspector/Services/SessionStreamBuffer.cs index 9b240a297..acb162421 100644 --- a/src/Titanium.Inspector/Services/SessionStreamBuffer.cs +++ b/src/Titanium.Inspector/Services/SessionStreamBuffer.cs @@ -104,9 +104,12 @@ private void DrainAvailable(List batch) private void RaiseSessionAdded(List batch) { - foreach (var snapshot in batch) + // One subscriber list for the whole batch. Re-reading the event per row would drop + // the tail for a handler that unsubscribes on the first snapshot. + if (SessionAdded is { } handler) // NOSONAR S3264 -- Invoke the captured delegate so the batch shares one list. { - SessionAdded?.Invoke(snapshot); + foreach (var snapshot in batch) + handler(snapshot); } } } diff --git a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs index ac9ca3a45..3238d2250 100644 --- a/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs +++ b/src/Titanium.Web.Proxy/Caching/HttpResponseCacheMiddleware.cs @@ -1,6 +1,5 @@ using System; using System.Collections.Generic; -using System.Linq; using System.Net; using System.Threading; using System.Threading.Tasks; @@ -233,12 +232,13 @@ private static List> CopyCacheableHeaders(IEnumerab { if (header.Name.Equals("Connection", StringComparison.OrdinalIgnoreCase)) { - foreach (var part in header.Value - .Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries) - .Where(part => !part.Equals("close", StringComparison.OrdinalIgnoreCase) && - !part.Equals("keep-alive", StringComparison.OrdinalIgnoreCase))) + foreach (var part in header.Value.Split(',', StringSplitOptions.TrimEntries | StringSplitOptions.RemoveEmptyEntries)) // NOSONAR S3267 -- Where would allocate an enumerator on every cache store. { - hopByHop.Add(part); + if (!part.Equals("close", StringComparison.OrdinalIgnoreCase) && + !part.Equals("keep-alive", StringComparison.OrdinalIgnoreCase)) + { + hopByHop.Add(part); + } } continue; @@ -248,9 +248,12 @@ private static List> CopyCacheableHeaders(IEnumerab } var kept = new List>(staged.Count); - foreach (var header in staged.Where(header => !hopByHop.Contains(header.Key))) + foreach (var header in staged) // NOSONAR S3267 -- A capturing Where allocates a closure on every cache store. { - kept.Add(header); + if (!hopByHop.Contains(header.Key)) + { + kept.Add(header); + } } return kept; diff --git a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs index c8a5082d2..4340b927e 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3OriginBridge.Http2.cs @@ -57,10 +57,11 @@ internal static async Task ForwardOverHttp2FastAsync( if (request.Authority.Length == 0 && !string.IsNullOrEmpty(request.Host)) request.Authority = request.Host.GetByteString(); - var origin = ResolveFastHttp2Origin(fwd, request, server); - try { + // Origin resolution stays inside the restore so a throw cannot leave the + // request stamped as HTTP/2. + var origin = ResolveFastHttp2Origin(fwd, request, server); var target = new Http2OriginTarget( origin.Host, origin.Port, origin.ConnectHost, origin.ConnectPort, origin.PoolKey); var exchange = await SendHttp2OriginFastWithGoAwayRetryAsync( diff --git a/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs b/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs index 00eb1814c..ec7f9e341 100644 --- a/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs +++ b/src/Titanium.Web.Proxy/Http3/Http3RequestStream.cs @@ -716,8 +716,10 @@ await SendPreencodedResponseAsync(stream, fwd.PreencodedQpackHeaders, { try { + // Sync Cancel runs registered callbacks on this thread and returns before the + // CTS is pooled. CancelAsync queues those callbacks and allocates a Task. if (!cts.IsCancellationRequested) - await cts.CancelAsync().ConfigureAwait(false); + cts.Cancel(); // NOSONAR S6966 -- Keep teardown inline on the H3 fast path. } catch (ObjectDisposedException) { From ec13dbedf31fdcd2426e61fdc82dbf94cfc1af36 Mon Sep 17 00:00:00 2001 From: github-actions <41898282+github-actions[bot]@users.noreply.github.com> Date: Sun, 4 Oct 2026 13:00:31 +0000 Subject: [PATCH 21/24] Update documentation --- ...ium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html index b8d49e796..1c60b303a 100644 --- a/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html +++ b/docs/api/Titanium.Web.Proxy.Caching.HttpResponseCacheMiddleware.html @@ -128,7 +128,7 @@

      Constructors Edit this page - View Source + View Source

      HttpResponseCacheMiddleware(IHttpResponseCache, TimeSpan?)

      @@ -167,7 +167,7 @@

      Methods Edit this page - View Source + View Source

      InvokeAsync(ProxyMiddlewareContext, ProxyMiddlewareDelegate, CancellationToken)

      @@ -224,7 +224,7 @@
      Returns
      Edit this page - View Source + View Source

      TryCacheCurrentResponse(SessionEventArgs)

      @@ -268,7 +268,7 @@

      Implements

      Edit this page
    5. - View Source + View Source
    6. From 482f598435457e7b69e343264b5b8ba60253909d Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 20:16:24 +0530 Subject: [PATCH 22/24] Spread HTTP/2 and HTTP/3 RPS load across many client connections so nginx, HAProxy, and Envoy can use every worker. A single multiplexed connection pinned those peers to one core. The same ramp now opens min(concurrency, max(4 x cores, 16)) connections, and large-body buffers match Titanium's 64 KiB window. --- tools/RpsLoadProbe/EmbeddedLoadGenerator.cs | 85 ++++++++++++++---- tools/RpsLoadProbe/EnvoyHost.cs | 14 ++- tools/RpsLoadProbe/GrpcLoadGenerator.cs | 87 ++++++++++++------- tools/RpsLoadProbe/HaproxyHost.cs | 4 + tools/RpsLoadProbe/MachineInfo.cs | 4 +- tools/RpsLoadProbe/NginxHost.cs | 43 +++++---- tools/RpsLoadProbe/README.md | 2 +- .../paste-compare-product-wiki.ps1 | 60 +++++++++++-- tools/RpsLoadProbe/paste-grpc-ws-wiki.py | 13 ++- tools/RpsLoadProbe/paste-heavier-wiki.py | 86 +++++++++++++----- .../validate-all-compare-product-arms.ps1 | 2 + 11 files changed, 297 insertions(+), 103 deletions(-) diff --git a/tools/RpsLoadProbe/EmbeddedLoadGenerator.cs b/tools/RpsLoadProbe/EmbeddedLoadGenerator.cs index 9ad14ee67..8959e4fd2 100644 --- a/tools/RpsLoadProbe/EmbeddedLoadGenerator.cs +++ b/tools/RpsLoadProbe/EmbeddedLoadGenerator.cs @@ -20,7 +20,15 @@ internal sealed record LoadResult( double P50Ms, double P99Ms, double MaxMs, - string NegotiatedVersionHint); + string NegotiatedVersionHint) +{ + /// + /// Client connections used for this step. HTTP/2 and HTTP/3 use a fixed pool so each + /// connection is owned by one handler. HTTP/1 reports in-flight concurrency (one request + /// per connection). + /// + public int ClientConnections { get; init; } +} internal sealed class LoadRequestOptions { @@ -87,14 +95,26 @@ private static async Task RunHttpClientAsync(LoadRequestOptions opti if (requestBody != null) Array.Fill(requestBody, (byte)'p'); - using var handler = CreateHandler(options.ExplicitProxyUrl, options.HttpVersion, workload.KeepAlive); - using var client = new HttpClient(handler) + var multiplexed = options.HttpVersion.Major >= 2; + var connectionCount = ClientConnectionCount(options.HttpVersion, concurrency); + var clients = new HttpClient[connectionCount]; + for (var c = 0; c < connectionCount; c++) { - Timeout = TimeSpan.FromSeconds(30), - DefaultRequestVersion = options.HttpVersion, - DefaultVersionPolicy = options.VersionPolicy - }; + // One handler per HTTP/2 or HTTP/3 connection. EnableMultipleHttp2Connections only + // opens another socket after the peer stream cap, which is above this ramp, so a + // shared handler stays on one TCP connection and pins nginx/HAProxy/Envoy to one worker. + var handler = CreateHandler(options.ExplicitProxyUrl, workload.KeepAlive, + pinOneConnection: multiplexed); + clients[c] = new HttpClient(handler) + { + Timeout = TimeSpan.FromSeconds(30), + DefaultRequestVersion = options.HttpVersion, + DefaultVersionPolicy = options.VersionPolicy + }; + } + try + { var ok = 0L; var errors = 0L; var versionHits = new ConcurrentDictionary(); @@ -114,6 +134,7 @@ private static async Task RunHttpClientAsync(LoadRequestOptions opti while (!cts.IsCancellationRequested) { var target = targets[rr++ % targets.Count]; + var client = clients[workerId % clients.Length]; var requestSw = collectLatency ? Stopwatch.StartNew() : null; try { @@ -209,7 +230,38 @@ private static async Task RunHttpClientAsync(LoadRequestOptions opti P50Ms: Percentile(samples, 0.50), P99Ms: Percentile(samples, 0.99), MaxMs: samples.Length == 0 ? 0 : samples[^1], - NegotiatedVersionHint: versionHint); + NegotiatedVersionHint: versionHint) + { + ClientConnections = connectionCount + }; + } + finally + { + foreach (var client in clients) + client?.Dispose(); + } + } + + /// + /// HTTP/2 and HTTP/3 capacity shape: min(concurrency, max(4ร—cores, 16)) connections. + /// On a 4 vCPU runner that is 8, 16, 16, 16 at concurrency 8, 16, 32, 64. + /// TWP_RPS_SINGLE_HTTP2_CONNECTION / TWP_RPS_SINGLE_HTTP3_CONNECTION force one. + /// HTTP/1 reports concurrency (one in-flight request per connection). + /// + internal static int ClientConnectionCount(Version httpVersion, int concurrency) + { + concurrency = Math.Max(1, concurrency); + if (httpVersion.Major < 2) + return concurrency; + + var single = httpVersion.Major >= 3 + ? IsTruthyEnv("TWP_RPS_SINGLE_HTTP3_CONNECTION") + : IsTruthyEnv("TWP_RPS_SINGLE_HTTP2_CONNECTION"); + if (single) + return 1; + + var cap = Math.Max(4 * Environment.ProcessorCount, 16); + return Math.Min(concurrency, cap); } internal static async Task CopyThrottledAsync(HttpResponseMessage response, WorkloadOptions workload, @@ -231,20 +283,19 @@ internal static IReadOnlyList ResolveTargets(LoadRequestOptions options) throw new ArgumentException("LoadRequestOptions requires Target or Targets."); } - private static SocketsHttpHandler CreateHandler(string? explicitProxyUrl, Version httpVersion, bool keepAlive) + private static SocketsHttpHandler CreateHandler(string? explicitProxyUrl, bool keepAlive, + bool pinOneConnection = false) { var handler = new SocketsHttpHandler { - MaxConnectionsPerServer = keepAlive ? 256 : 1024, + MaxConnectionsPerServer = pinOneConnection ? 1 : keepAlive ? 256 : 1024, PooledConnectionLifetime = keepAlive ? TimeSpan.FromMinutes(10) : TimeSpan.Zero, PooledConnectionIdleTimeout = keepAlive ? TimeSpan.FromMinutes(2) : TimeSpan.Zero, - // Multiplex across HTTP/2 connections under load. A single client H2 connection serializes - // all DATA writes on ClientWriteLock and fans every stream onto the H2โ†’H1 bridge at once; - // multiple connections match browser-style fan-out and keep error rates down. - // Set TWP_RPS_SINGLE_HTTP2_CONNECTION=1 to force one client H2 connection (Memory/RSS A/B). - EnableMultipleHttp2Connections = !IsTruthyEnv("TWP_RPS_SINGLE_HTTP2_CONNECTION"), - EnableMultipleHttp3Connections = httpVersion.Major >= 3 && - !IsTruthyEnv("TWP_RPS_SINGLE_HTTP3_CONNECTION"), + // Fan-out is a pool of handlers (one connection each). A shared handler with + // EnableMultipleHttp2Connections still stays on one socket until the stream cap. + // TWP_RPS_SINGLE_HTTP2_CONNECTION=1 forces a one-handler pool (Memory/RSS A/B). + EnableMultipleHttp2Connections = false, + EnableMultipleHttp3Connections = false, SslOptions = new SslClientAuthenticationOptions { RemoteCertificateValidationCallback = static (_, _, _, _) => true, diff --git a/tools/RpsLoadProbe/EnvoyHost.cs b/tools/RpsLoadProbe/EnvoyHost.cs index 2671f5e79..9ae089e3b 100644 --- a/tools/RpsLoadProbe/EnvoyHost.cs +++ b/tools/RpsLoadProbe/EnvoyHost.cs @@ -358,6 +358,9 @@ private void AppendHttpConnectionManager(int col, string statPrefix, string code // RFC 8441 extended CONNECT (compare-ws-h2); harmless for ordinary H2 reverse. W(col + 4, "http2_protocol_options:"); W(col + 6, "allow_connect: true"); + // Same class as Titanium: 64 KiB stream window, 1 MiB connection window. + W(col + 6, "initial_stream_window_size: 65535"); + W(col + 6, "initial_connection_window_size: 1048576"); } // Kestrel rejects :scheme that does not match the upstream transport (https on h2c, // http on HTTPS). Align :scheme with the cluster socket, not the downstream TLS. @@ -440,11 +443,11 @@ public void Cluster(int originPort, PeerOriginProto origin) WriteExplicitHttp("http_protocol_options: {}"); break; case PeerOriginProto.H2c: - WriteExplicitHttp("http2_protocol_options: {}"); + WriteExplicitHttp2(); break; case PeerOriginProto.H2Tls: WriteUpstreamTls(["h2"]); - WriteExplicitHttp("http2_protocol_options: {}"); + WriteExplicitHttp2(); break; case PeerOriginProto.H3: WriteUpstreamQuic(); @@ -490,6 +493,13 @@ private void WriteExplicitHttp(string protocolOptionsLine) W(10, protocolOptionsLine); } + private void WriteExplicitHttp2() + { + WriteExplicitHttp("http2_protocol_options:"); + W(12, "initial_stream_window_size: 65535"); + W(12, "initial_connection_window_size: 1048576"); + } + public override string ToString() => sb.ToString(); } diff --git a/tools/RpsLoadProbe/GrpcLoadGenerator.cs b/tools/RpsLoadProbe/GrpcLoadGenerator.cs index 2c3609753..284d43ee8 100644 --- a/tools/RpsLoadProbe/GrpcLoadGenerator.cs +++ b/tools/RpsLoadProbe/GrpcLoadGenerator.cs @@ -25,20 +25,28 @@ public static Task RunAsync(Uri target, int concurrency, TimeSpan du private static async Task RunAsync(Uri target, int concurrency, TimeSpan duration, bool collectLatency, CancellationToken cancellationToken) { - using var handler = new SocketsHttpHandler + var connectionCount = EmbeddedLoadGenerator.ClientConnectionCount(System.Net.HttpVersion.Version20, concurrency); + var channels = new GrpcChannel[connectionCount]; + var clients = new Echo.EchoClient[connectionCount]; + for (var c = 0; c < connectionCount; c++) { - EnableMultipleHttp2Connections = true, - SslOptions = new SslClientAuthenticationOptions + var handler = new SocketsHttpHandler { - RemoteCertificateValidationCallback = static (_, _, _, _) => true - } - }; - using var channel = GrpcChannel.ForAddress(target, new GrpcChannelOptions - { - HttpHandler = handler, - DisposeHttpClient = true - }); - var client = new Echo.EchoClient(channel); + MaxConnectionsPerServer = 1, + EnableMultipleHttp2Connections = false, + SslOptions = new SslClientAuthenticationOptions + { + RemoteCertificateValidationCallback = static (_, _, _, _) => true + } + }; + channels[c] = GrpcChannel.ForAddress(target, new GrpcChannelOptions + { + HttpHandler = handler, + DisposeHttpClient = true + }); + clients[c] = new Echo.EchoClient(channels[c]); + } + var request = new EchoRequest { Message = "x" }; var ok = 0L; @@ -50,6 +58,7 @@ private static async Task RunAsync(Uri target, int concurrency, Time var workers = new Task[Math.Max(1, concurrency)]; for (var i = 0; i < workers.Length; i++) { + var client = clients[i % clients.Length]; workers[i] = Task.Run(async () => { while (!cts.IsCancellationRequested) @@ -76,30 +85,42 @@ private static async Task RunAsync(Uri target, int concurrency, Time try { - await Task.WhenAll(workers); + try + { + await Task.WhenAll(workers); + } + catch + { + // workers swallow; ignore aggregate + } + + sw.Stop(); + var seconds = Math.Max(sw.Elapsed.TotalSeconds, 0.001); + var total = ok + errors; + var samples = latencies?.ToArray() ?? []; + Array.Sort(samples); + + return new LoadResult( + GeneratorName, + concurrency, + seconds, + ok, + errors, + ok / seconds, + total == 0 ? 100 : 100.0 * errors / total, + Percentile(samples, 0.50), + Percentile(samples, 0.99), + samples.Length == 0 ? 0 : samples[^1], + "h2-grpc") + { + ClientConnections = connectionCount + }; } - catch + finally { - // workers swallow; ignore aggregate + foreach (var channel in channels) + channel?.Dispose(); } - - sw.Stop(); - var seconds = Math.Max(sw.Elapsed.TotalSeconds, 0.001); - var total = ok + errors; - var samples = latencies?.ToArray() ?? []; - Array.Sort(samples); - return new LoadResult( - GeneratorName, - concurrency, - seconds, - ok, - errors, - ok / seconds, - total == 0 ? 100 : 100.0 * errors / total, - Percentile(samples, 0.50), - Percentile(samples, 0.99), - samples.Length == 0 ? 0 : samples[^1], - "h2-grpc"); } private static double Percentile(long[] sortedMs, double p) diff --git a/tools/RpsLoadProbe/HaproxyHost.cs b/tools/RpsLoadProbe/HaproxyHost.cs index 9c7c1077c..ff0c02eee 100644 --- a/tools/RpsLoadProbe/HaproxyHost.cs +++ b/tools/RpsLoadProbe/HaproxyHost.cs @@ -261,6 +261,10 @@ private static string GlobalDefaults() => $""" global nbthread {Environment.ProcessorCount} maxconn 4096 + # Match Titanium's 64 KiB HTTP/2 window and 16 KiB frames. Default tune.bufsize is 16 KiB + # and flow-controls a large body down to that buffer. + tune.bufsize 65536 + tune.h2.initial-window-size 65536 defaults mode http diff --git a/tools/RpsLoadProbe/MachineInfo.cs b/tools/RpsLoadProbe/MachineInfo.cs index b7c691c70..94917424b 100644 --- a/tools/RpsLoadProbe/MachineInfo.cs +++ b/tools/RpsLoadProbe/MachineInfo.cs @@ -111,7 +111,7 @@ internal static class CsvWriter { public static Task WriteHeaderAsync(StreamWriter writer) => writer.WriteLineAsync( - "timestamp_utc,arm,generator,concurrency,duration_s,ok,errors,rps,error_rate_pct,p50_ms,p99_ms,max_ms,meets_slo,nginx_version,haproxy_version,envoy_version,yarp_version,http_versions,max_cached_connections,method,response_bytes,request_bytes,delay_ms,loss_percent,keepalive,proxy_rss_peak_bytes,proxy_cpu_avg_pct"); + "timestamp_utc,arm,generator,concurrency,duration_s,ok,errors,rps,error_rate_pct,p50_ms,p99_ms,max_ms,meets_slo,nginx_version,haproxy_version,envoy_version,yarp_version,http_versions,max_cached_connections,method,response_bytes,request_bytes,delay_ms,loss_percent,keepalive,proxy_rss_peak_bytes,proxy_cpu_avg_pct,client_connections"); public static Task WriteRowAsync(StreamWriter writer, string arm, LoadResult result, bool meetsSlo, string? nginxVersion, int? maxCachedConnections = null, WorkloadOptions? workload = null, @@ -124,7 +124,7 @@ public static Task WriteRowAsync(StreamWriter writer, string arm, LoadResult res ? c.AvgCpuPercent.ToString("F2", CultureInfo.InvariantCulture) : ""; return writer.WriteLineAsync(string.Create(CultureInfo.InvariantCulture, - $"{DateTime.UtcNow:O},{arm},{result.Generator},{result.Concurrency},{result.DurationSeconds:F3},{result.Ok},{result.Errors},{result.Rps:F1},{result.ErrorRatePercent:F4},{result.P50Ms:F2},{result.P99Ms:F2},{result.MaxMs:F2},{(meetsSlo ? 1 : 0)},{Escape(nginxVersion)},{Escape(haproxyVersion)},{Escape(envoyVersion)},{Escape(yarpVersion)},{Escape(result.NegotiatedVersionHint)},{(maxCachedConnections?.ToString(CultureInfo.InvariantCulture) ?? "")},{workload.Method},{workload.ResponseBytes},{workload.RequestBytes},{workload.DelayMs},{workload.LossPercent:F2},{(workload.KeepAlive ? 1 : 0)},{rss},{cpu}")); + $"{DateTime.UtcNow:O},{arm},{result.Generator},{result.Concurrency},{result.DurationSeconds:F3},{result.Ok},{result.Errors},{result.Rps:F1},{result.ErrorRatePercent:F4},{result.P50Ms:F2},{result.P99Ms:F2},{result.MaxMs:F2},{(meetsSlo ? 1 : 0)},{Escape(nginxVersion)},{Escape(haproxyVersion)},{Escape(envoyVersion)},{Escape(yarpVersion)},{Escape(result.NegotiatedVersionHint)},{(maxCachedConnections?.ToString(CultureInfo.InvariantCulture) ?? "")},{workload.Method},{workload.ResponseBytes},{workload.RequestBytes},{workload.DelayMs},{workload.LossPercent:F2},{(workload.KeepAlive ? 1 : 0)},{rss},{cpu},{result.ClientConnections}")); } private static string Escape(string? value) diff --git a/tools/RpsLoadProbe/NginxHost.cs b/tools/RpsLoadProbe/NginxHost.cs index 9997976d1..53a2f2bf4 100644 --- a/tools/RpsLoadProbe/NginxHost.cs +++ b/tools/RpsLoadProbe/NginxHost.cs @@ -308,6 +308,7 @@ private static Func BuildHttp1Conf(int originHttpPort) => ( access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -319,7 +320,7 @@ upstream origin { keepalive 256; } server { - listen 127.0.0.1:{{port}}; + listen 127.0.0.1:{{port}} reuseport; location / { proxy_http_version 1.1; proxy_set_header Connection ""; @@ -344,6 +345,7 @@ private static Func BuildH2cToH1Conf(int originHttpPort) => access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -355,7 +357,7 @@ upstream origin { keepalive 256; } server { - listen 127.0.0.1:{{port}}; + listen 127.0.0.1:{{port}} reuseport; http2 on; location / { proxy_http_version 1.1; @@ -381,6 +383,7 @@ private static Func BuildH2cToHttpsConf(int originHttpsPort access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -396,7 +399,7 @@ upstream origin { '' close; } server { - listen 127.0.0.1:{{port}}; + listen 127.0.0.1:{{port}} reuseport; http2 on; {{HttpsOriginProxyLocations().Trim()}} } @@ -424,6 +427,7 @@ private static Func BuildHttp1TlsConf(int originHttpPort, s access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -439,7 +443,7 @@ upstream origin { '' close; } server { - listen 127.0.0.1:{{port}} ssl; + listen 127.0.0.1:{{port}} ssl reuseport; ssl_certificate {{certDest}}; ssl_certificate_key {{keyDest}}; ssl_protocols TLSv1.2 TLSv1.3; @@ -478,8 +482,8 @@ private static Func BuildHttp2Conf(int originHttpPort, stri keyDest = keyDest.Replace('\\', '/'); // Prefer `http2 on` when available; fall back to listen-parameter form for builds < 1.25.1. var listenAndHttp2 = useHttp2OnDirective - ? $"listen 127.0.0.1:{port} ssl;\n http2 on;" - : $"listen 127.0.0.1:{port} ssl http2;"; + ? $"listen 127.0.0.1:{port} ssl reuseport;\n http2 on;" + : $"listen 127.0.0.1:{port} ssl http2 reuseport;"; return $$""" worker_processes auto; daemon off; @@ -492,6 +496,7 @@ private static Func BuildHttp2Conf(int originHttpPort, stri access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -531,8 +536,8 @@ private static Func BuildGrpcConf(int originHttpsPort, stri certDest = certDest.Replace('\\', '/'); keyDest = keyDest.Replace('\\', '/'); var listenAndHttp2 = useHttp2OnDirective - ? $"listen 127.0.0.1:{port} ssl;\n http2 on;" - : $"listen 127.0.0.1:{port} ssl http2;"; + ? $"listen 127.0.0.1:{port} ssl reuseport;\n http2 on;" + : $"listen 127.0.0.1:{port} ssl http2 reuseport;"; return $$""" worker_processes auto; daemon off; @@ -545,6 +550,7 @@ private static Func BuildGrpcConf(int originHttpsPort, stri access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -593,6 +599,7 @@ private static Func BuildHttp3CleartextConf(int originHttpP access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -604,8 +611,8 @@ upstream origin { keepalive 256; } server { - listen 127.0.0.1:{{port}} ssl; - listen [::1]:{{port}} ssl ipv6only=on; + listen 127.0.0.1:{{port}} ssl reuseport; + listen [::1]:{{port}} ssl reuseport ipv6only=on; listen 127.0.0.1:{{port}} quic reuseport; listen [::1]:{{port}} quic reuseport ipv6only=on; http3 on; @@ -683,6 +690,7 @@ private static Func BuildHttp1ToHttpsConf(int originHttpsPo access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -698,7 +706,7 @@ upstream origin { '' close; } server { - listen 127.0.0.1:{{port}}; + listen 127.0.0.1:{{port}} reuseport; {{HttpsOriginProxyLocations().Trim()}} } } @@ -726,6 +734,7 @@ private static Func BuildHttp1TlsToHttpsConf(int originHttp access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -741,7 +750,7 @@ upstream origin { '' close; } server { - listen 127.0.0.1:{{port}} ssl; + listen 127.0.0.1:{{port}} ssl reuseport; ssl_certificate {{certDest}}; ssl_certificate_key {{keyDest}}; ssl_protocols TLSv1.2 TLSv1.3; @@ -762,8 +771,8 @@ private static Func BuildHttp2ToHttpsHttp1Conf(int originHt certDest = certDest.Replace('\\', '/'); keyDest = keyDest.Replace('\\', '/'); var listenAndHttp2 = useHttp2OnDirective - ? $"listen 127.0.0.1:{port} ssl;\n http2 on;" - : $"listen 127.0.0.1:{port} ssl http2;"; + ? $"listen 127.0.0.1:{port} ssl reuseport;\n http2 on;" + : $"listen 127.0.0.1:{port} ssl http2 reuseport;"; return $$""" worker_processes auto; daemon off; @@ -776,6 +785,7 @@ private static Func BuildHttp2ToHttpsHttp1Conf(int originHt access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -819,6 +829,7 @@ private static Func BuildHttp3ToHttpsHttp1Conf(int originHt access_log off; sendfile on; keepalive_timeout 65; + http2_chunk_size 16k; client_max_body_size 10m; client_body_temp_path temp/client_body; proxy_temp_path temp/proxy; @@ -830,8 +841,8 @@ upstream origin { keepalive 256; } server { - listen 127.0.0.1:{{port}} ssl; - listen [::1]:{{port}} ssl ipv6only=on; + listen 127.0.0.1:{{port}} ssl reuseport; + listen [::1]:{{port}} ssl reuseport ipv6only=on; listen 127.0.0.1:{{port}} quic reuseport; listen [::1]:{{port}} quic reuseport ipv6only=on; http3 on; diff --git a/tools/RpsLoadProbe/README.md b/tools/RpsLoadProbe/README.md index 76b1d51de..8fc18fe95 100644 --- a/tools/RpsLoadProbe/README.md +++ b/tools/RpsLoadProbe/README.md @@ -96,7 +96,7 @@ pwsh tools/RpsLoadProbe/run-rps.ps1 -Mode compare-saturation - **compare-saturation:** Block A prints median peak RPS as **% of origin-direct** (and bombardier when present) plus median Memory (RSS) / CPU at the peak-RPS step. Blocks B/C print peerรทYARP and peerรทnginx (when present) plus Memory (RSS) / CPU โ€” not % of H1 origin-direct. - **Other compare-* matrix modes:** median peak RPS for all arms; **TWP-only** median Memory (RSS) / CPU (`median_memory_rss_bytes` / `median_cpu_avg_pct`). nginx/YARP Memory/CPU remain saturation-only for peer comparison. -Memory A/B knobs (load generator): `TWP_RPS_SINGLE_HTTP2_CONNECTION=1` / `TWP_RPS_SINGLE_HTTP3_CONNECTION=1` force a single multiplexed client connection (`EnableMultipleHttp2Connections` / `EnableMultipleHttp3Connections` off). See [Performance Profiling โ€” Memory (RSS)](../../wiki/Performance-Profiling.md#memory-rss--h2h1-vs-h1--h3). +HTTP/2 and HTTP/3 open `min(concurrency, max(4ร—cores, 16))` client connections (one `SocketsHttpHandler` each, `MaxConnectionsPerServer = 1`). On a 4 vCPU runner that is 16 connections at concurrency 64. A single shared handler stays on one connection until the peer stream cap and pins nginx, HAProxy, and Envoy to one worker. `TWP_RPS_SINGLE_HTTP2_CONNECTION=1` / `TWP_RPS_SINGLE_HTTP3_CONNECTION=1` force one connection for a local memory A/B. CSV column `client_connections` records the pool size. See [Performance Profiling โ€” Memory (RSS)](../../wiki/Performance-Profiling.md#memory-rss--h2h1-vs-h1--h3). Paste CI medians into the wiki [Performance โ€” Saturation control](../../wiki/Performance.md#saturation-control) section. Do not mix bombardier into the publishable TWPรทYARPรทnginx matrices. diff --git a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 index 9b855b688..10c45b068 100644 --- a/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 +++ b/tools/RpsLoadProbe/paste-compare-product-wiki.ps1 @@ -26,7 +26,7 @@ function Median([double[]]$vals) { function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { $rows = @(Import-Csv $CsvPath | Where-Object { $_.arm -eq $Arm }) if ($rows.Count -eq 0) { return $null } - $sustains = @(); $peaks = @(); $rss = @(); $cpu = @() + $sustains = @(); $peaks = @(); $rss = @(); $cpu = @(); $bytes = @() $sawC64 = $false for ($i = 0; $i + $Steps -le $rows.Count; $i += $Steps) { $chunk = $rows[$i..($i + $Steps - 1)] @@ -36,6 +36,7 @@ function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { $peaks += [double]$c64Ok.rps $rss += [double]$c64Ok.proxy_rss_peak_bytes $cpu += [double]$c64Ok.proxy_cpu_avg_pct + $bytes += (Get-PayloadBytes $c64Ok) $sawC64 = $true continue } @@ -46,6 +47,7 @@ function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { $peaks += [double]$c64Any.rps $rss += [double]$c64Any.proxy_rss_peak_bytes $cpu += [double]$c64Any.proxy_cpu_avg_pct + $bytes += (Get-PayloadBytes $c64Any) } } if ($sustains.Count -gt 0) { @@ -54,6 +56,7 @@ function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { Peak = Median $peaks Rss = Median $rss Cpu = Median $cpu + Bytes = Median $bytes } } # Misaligned repeats (missing c=64 in a pass): use any SLO-pass c=64 rows. @@ -62,11 +65,13 @@ function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { $s = @($okAny | ForEach-Object { [double]$_.rps }) $r = @($okAny | ForEach-Object { [double]$_.proxy_rss_peak_bytes }) $c = @($okAny | ForEach-Object { [double]$_.proxy_cpu_avg_pct }) + $b = @($okAny | ForEach-Object { Get-PayloadBytes $_ }) return @{ Sustain = Median $s Peak = Median $s Rss = Median $r Cpu = Median $c + Bytes = Median $b } } if (-not $sawC64 -or $peaks.Count -eq 0) { return $null } @@ -75,9 +80,44 @@ function Get-ArmMetrics([string]$CsvPath, [string]$Arm) { Peak = Median $peaks Rss = Median $rss Cpu = Median $cpu + Bytes = Median $bytes } } +function Get-PayloadBytes($row) { + $resp = 0.0; $req = 0.0 + if ($row.PSObject.Properties.Name -contains 'response_bytes' -and $row.response_bytes) { + $resp = [double]$row.response_bytes + } + if ($row.PSObject.Properties.Name -contains 'request_bytes' -and $row.request_bytes) { + $req = [double]$row.request_bytes + } + return $resp + $req +} + +function Get-LogicalCpus([string]$OsFolder) { + if ($OsFolder -eq 'macos-15') { return 3 } + return 4 +} + +function Format-CostSuffix($metrics, [int]$Cpus) { + if (-not $metrics -or -not $metrics.Sustain -or $metrics.Sustain -le 0) { return '' } + $parts = @() + $payload = 0.0 + if ($metrics.ContainsKey('Bytes') -and $metrics.Bytes) { $payload = [double]$metrics.Bytes } + $inv = [cultureinfo]::InvariantCulture + if ($payload -ge 1024) { + $mib = $metrics.Sustain * $payload / 1MB + $parts += $mib.ToString('N0', $inv) + ' MiB/s' + } + if ($metrics.Cpu -ge 0.05) { + $us = $metrics.Cpu * $Cpus / 100.0 / $metrics.Sustain * 1000000 + $parts += ($us.ToString('N1', $inv) + ' ยตs CPU/req') + } + if ($parts.Count -eq 0) { return '' } + return ' ยท ' + ($parts -join ' ยท ') +} + function Get-MedianMetrics([string]$OsFolder, [string]$Arm) { # Across run IDs: take the best sustain/peak so peer-fix overlays beat older 0-RPS # product rows for the same arm (median of [0, 50k] would publish 0). @@ -112,7 +152,7 @@ function Get-MedianMetrics([string]$OsFolder, [string]$Arm) { return $best } -function Format-RpsCell($metrics, [switch]$Medal) { +function Format-RpsCell($metrics, [switch]$Medal, [int]$Cpus = 4) { if (-not $metrics) { return '*Not measured*' } $sustain = [int][math]::Round($metrics.Sustain, 0) $peak = [int][math]::Round($metrics.Peak, 0) @@ -121,11 +161,12 @@ function Format-RpsCell($metrics, [switch]$Medal) { $prefix = if ($Medal) { "$goldMedal " } else { '' } $inv = [cultureinfo]::InvariantCulture $sustainText = $sustain.ToString('N0', $inv) + $cost = Format-CostSuffix $metrics $Cpus if ($peak -gt $sustain) { $peakText = $peak.ToString('N0', $inv) - $sub = "peak $peakText ยท $mb MiB / $cpu% CPU" + $sub = "peak $peakText ยท $mb MiB / $cpu% CPU$cost" } else { - $sub = "$mb MiB / $cpu% CPU" + $sub = "$mb MiB / $cpu% CPU$cost" } return ("{0}**{1}**
      ({2})" -f $prefix, $sustainText, $sub) } @@ -201,7 +242,7 @@ function Format-TerminatePeerCell( } $arm = $w[$PeerKey] if ($arm) { - return Format-RpsCell $metrics -Medal:$Medal + return Format-RpsCell $metrics -Medal:$Medal -Cpus:(Get-LogicalCpus $OsFolder) } $reason = Get-PeerImpossibleReason $w $PeerKey $arm return Format-Impossible $reason @@ -242,18 +283,19 @@ function Emit-ReverseTable([string]$OsFolder) { @{ Expression = { $_.M.Cpu }; Ascending = $true } | Select-Object -First 1 ).K + $cpus = Get-LogicalCpus $OsFolder if ($omitNative) { Write-Output ("| {0} | {1} | {2} | {3} | {4} |" -f $w.C, $w.O, - (Format-RpsCell $twp -Medal:($best -eq 'twp')), + (Format-RpsCell $twp -Medal:($best -eq 'twp') -Cpus:$cpus), (Format-TerminatePeerCell $OsFolder $w 'Nginx' $nginx -Medal:($best -eq 'nginx')), - (Format-RpsCell $yarp -Medal:($best -eq 'yarp'))) + (Format-RpsCell $yarp -Medal:($best -eq 'yarp') -Cpus:$cpus)) } else { Write-Output ("| {0} | {1} | {2} | {3} | {4} | {5} | {6} |" -f $w.C, $w.O, - (Format-RpsCell $twp -Medal:($best -eq 'twp')), + (Format-RpsCell $twp -Medal:($best -eq 'twp') -Cpus:$cpus), (Format-TerminatePeerCell $OsFolder $w 'Nginx' $nginx -Medal:($best -eq 'nginx')), (Format-TerminatePeerCell $OsFolder $w 'Haproxy' $haproxy -Medal:($best -eq 'haproxy')), (Format-TerminatePeerCell $OsFolder $w 'Envoy' $envoy -Medal:($best -eq 'envoy')), - (Format-RpsCell $yarp -Medal:($best -eq 'yarp'))) + (Format-RpsCell $yarp -Medal:($best -eq 'yarp') -Cpus:$cpus)) } } } diff --git a/tools/RpsLoadProbe/paste-grpc-ws-wiki.py b/tools/RpsLoadProbe/paste-grpc-ws-wiki.py index cd6dffa19..9561b734f 100755 --- a/tools/RpsLoadProbe/paste-grpc-ws-wiki.py +++ b/tools/RpsLoadProbe/paste-grpc-ws-wiki.py @@ -134,6 +134,7 @@ def cell( impossible: Optional[str] = None, *, medal: bool = False, + cpus: int = 4, ) -> str: if impossible: return f"*{impossible}*" @@ -147,8 +148,12 @@ def cell( rps = int(round(sustain)) if sustain == sustain else 0 rss_s = f"{rss:.0f} MiB" if rss == rss else "?" cpu_s = f"{cpu:.1f}% CPU" if cpu == cpu else "?" + cost = "" + if sustain == sustain and sustain > 0 and cpu == cpu and cpu >= 0.05: + us = cpu * cpus / 100.0 / sustain * 1_000_000 + cost = f" ยท {us:.1f} ยตs CPU/req" prefix = f"{MEDAL} " if medal else "" - return f"{prefix}**{rps:,}**
      ({rss_s} / {cpu_s})" + return f"{prefix}**{rps:,}**
      ({rss_s} / {cpu_s}{cost})" def pick_row_winner( @@ -234,7 +239,11 @@ def render_table( elif win_no_haproxy_envoy and os_key == "windows" and product in ("HAProxy", "Envoy"): cells.append(cell(None, "Not possible")) else: - cells.append(cell(data.get(arm), medal=(winner == product))) + cells.append(cell( + data.get(arm), + medal=(winner == product), + cpus=3 if os_key == "macos" else 4, + )) lines.append("| " + " | ".join([os_label, *cells]) + " |") return "\n".join(lines) diff --git a/tools/RpsLoadProbe/paste-heavier-wiki.py b/tools/RpsLoadProbe/paste-heavier-wiki.py index 7ee02df12..21c787c7a 100755 --- a/tools/RpsLoadProbe/paste-heavier-wiki.py +++ b/tools/RpsLoadProbe/paste-heavier-wiki.py @@ -47,6 +47,7 @@ def arm_metrics(csv_path: Path, arm: str) -> Optional[dict]: peaks: List[float] = [] rss: List[float] = [] cpu: List[float] = [] + payload: List[float] = [] i = 0 while i + STEPS <= len(rows): chunk = rows[i : i + STEPS] @@ -57,6 +58,7 @@ def arm_metrics(csv_path: Path, arm: str) -> Optional[dict]: peaks.append(float(r["rps"])) rss.append(float(r.get("proxy_rss_peak_bytes") or 0)) cpu.append(float(r.get("proxy_cpu_avg_pct") or 0)) + payload.append(_payload_bytes(r)) else: slo_any = [r for r in chunk if r.get("meets_slo") == "1"] c64_any = [r for r in chunk if r.get("concurrency") == "64"] @@ -68,11 +70,13 @@ def arm_metrics(csv_path: Path, arm: str) -> Optional[dict]: peaks.append(float(peak_row["rps"]) if peak_row else float(r["rps"])) rss.append(float(r.get("proxy_rss_peak_bytes") or 0)) cpu.append(float(r.get("proxy_cpu_avg_pct") or 0)) + payload.append(_payload_bytes(r)) elif peak_row is not None: sustains.append(0.0) peaks.append(float(peak_row["rps"])) rss.append(float(peak_row.get("proxy_rss_peak_bytes") or 0)) cpu.append(float(peak_row.get("proxy_cpu_avg_pct") or 0)) + payload.append(_payload_bytes(peak_row)) i += STEPS if not peaks: slo = [r for r in rows if r.get("meets_slo") == "1"] @@ -84,6 +88,7 @@ def arm_metrics(csv_path: Path, arm: str) -> Optional[dict]: "Peak": float(r["rps"]), "Rss": float(r.get("proxy_rss_peak_bytes") or 0), "Cpu": float(r.get("proxy_cpu_avg_pct") or 0), + "Bytes": _payload_bytes(r), } c64 = [r for r in rows if r.get("concurrency") == "64"] if not c64: @@ -94,15 +99,21 @@ def arm_metrics(csv_path: Path, arm: str) -> Optional[dict]: "Peak": float(r["rps"]), "Rss": float(r.get("proxy_rss_peak_bytes") or 0), "Cpu": float(r.get("proxy_cpu_avg_pct") or 0), + "Bytes": _payload_bytes(r), } return { "Sustain": median(sustains), "Peak": median(peaks), "Rss": median(rss), "Cpu": median(cpu), + "Bytes": median(payload) or 0, } +def _payload_bytes(row: dict) -> float: + return float(row.get("response_bytes") or 0) + float(row.get("request_bytes") or 0) + + def _run_id_list(run_ids: RunIds) -> List[int]: return [run_ids] if isinstance(run_ids, int) else list(run_ids) @@ -160,7 +171,29 @@ def parse_run_ids(text: str) -> RunIds: return ids[0] if len(ids) == 1 else ids -def fmt_cell(m: Optional[dict], medal: bool = False, impossible: Optional[str] = None) -> str: +def _cost_suffix(m: dict, cpus: int) -> str: + rps = m.get("Sustain") or 0 + if rps <= 0: + return "" + parts: List[str] = [] + payload = m.get("Bytes") or 0 + # Large bodies are read as goodput. Tiny GET stays RPS-only in the footnote. + if payload >= 1024: + mib_s = rps * payload / (1024 * 1024) + parts.append(f"{mib_s:,.0f} MiB/s" if mib_s >= 10 else f"{mib_s:.1f} MiB/s") + cpu = m.get("Cpu") or 0 + if cpu >= 0.05: + us = cpu * cpus / 100.0 / rps * 1_000_000 + parts.append(f"{us:.1f} ยตs CPU/req") + return (" ยท " + " ยท ".join(parts)) if parts else "" + + +def fmt_cell( + m: Optional[dict], + medal: bool = False, + impossible: Optional[str] = None, + cpus: int = 4, +) -> str: if impossible: return f"*{impossible}*" if not m: @@ -172,6 +205,7 @@ def fmt_cell(m: Optional[dict], medal: bool = False, impossible: Optional[str] = prefix = f"{MEDAL} " if medal else "" # Handshake arms defer CPU sampling (post-measure snapshot) โ€” omit idle 0% CPU. foot = f"{mb} MiB" if cpu < 0.05 else f"{mb} MiB / {cpu}% CPU" + foot += _cost_suffix(m, cpus) if peak > sustain: sub = f"peak {peak:,} ยท {foot}" else: @@ -183,7 +217,15 @@ def pick_medal(cands: List[Tuple[str, Optional[dict]]]) -> Optional[str]: valid = [(k, m) for k, m in cands if m and (m["Sustain"] or 0) > 0] if not valid: return None - return min(valid, key=lambda km: (-km[1]["Sustain"], km[1]["Rss"], km[1]["Cpu"]))[0] + + def rank(m: dict) -> float: + payload = m.get("Bytes") or 0 + # 1 KiB and up: medal on goodput (RPS ร— body). Same body size keeps RPS order. + if payload >= 1024: + return (m["Sustain"] or 0) * payload + return m["Sustain"] or 0 + + return min(valid, key=lambda km: (-rank(km[1]), km[1]["Rss"], km[1]["Cpu"]))[0] WIN_NO_HAPROXY_ENVOY_NOTE = ( @@ -219,6 +261,7 @@ def peer_row( win_no_haproxy_envoy: bool = False, haproxy_a: Optional[str] = None, envoy_a: Optional[str] = None, + cpus: int = 4, ) -> str: twp = data.get(twp_a) if twp_a else None nginx = data.get(nginx_a) if nginx_a else None @@ -244,16 +287,16 @@ def peer_row( medal_peers = [("twp", twp), ("nginx", nginx), ("haproxy", haproxy), ("envoy", envoy), ("yarp", yarp)] medal = pick_medal(medal_peers) cells = prefix + [ - fmt_cell(twp, medal=(medal == "twp")), - fmt_cell(nginx, medal=(medal == "nginx"), impossible=nginx_imp), + fmt_cell(twp, medal=(medal == "twp"), cpus=cpus), + fmt_cell(nginx, medal=(medal == "nginx"), impossible=nginx_imp, cpus=cpus), ] if not win_no_haproxy_envoy: cells += [ - fmt_cell(haproxy, medal=(medal == "haproxy"), impossible=haproxy_imp), - fmt_cell(envoy, medal=(medal == "envoy"), impossible=envoy_imp), + fmt_cell(haproxy, medal=(medal == "haproxy"), impossible=haproxy_imp, cpus=cpus), + fmt_cell(envoy, medal=(medal == "envoy"), impossible=envoy_imp, cpus=cpus), ] cells += [ - fmt_cell(yarp, medal=(medal == "yarp")), + fmt_cell(yarp, medal=(medal == "yarp"), cpus=cpus), ] return "| " + " | ".join(cells) + " |" @@ -331,7 +374,7 @@ def main() -> None: ("256 KiB", "HTTP/3 ยท QUIC", "HTTP/1 ยท TLS", "twp-reverse-http3-to-https-http1-body256k", "nginx-reverse-http3-to-https-http1-body256k", "yarp-reverse-http3-to-https-http1-body256k"), ] - def bodies_table(data: dict, is_win: bool) -> str: + def bodies_table(data: dict, is_win: bool, cpus: int = 4) -> str: include_he = not is_win rows = [ f"| Body | Client | Origin | {peer_cols(include_he)} |", @@ -343,7 +386,7 @@ def bodies_table(data: dict, is_win: bool) -> str: stem = t.replace("twp-reverse-", "", 1) extra = {"haproxy_a": f"haproxy-reverse-{stem}", "envoy_a": f"envoy-reverse-{stem}"} rows.append( - peer_row([body, c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, **extra) + peer_row([body, c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, cpus=cpus, **extra) ) return "\n".join(rows) @@ -358,7 +401,7 @@ def bodies_table(data: dict, is_win: bool) -> str: ("HTTP/3 ยท QUIC", "HTTP/1 ยท TLS", "twp-reverse-http3-to-https-http1-post64k", "nginx-reverse-http3-to-https-http1-post64k", "yarp-reverse-http3-to-https-http1-post64k"), ] - def post_table(data: dict, is_win: bool) -> str: + def post_table(data: dict, is_win: bool, cpus: int = 4) -> str: include_he = not is_win rows = [ f"| Client | Origin | {peer_cols(include_he)} |", @@ -370,7 +413,7 @@ def post_table(data: dict, is_win: bool) -> str: stem = t.replace("twp-reverse-", "", 1) extra = {"haproxy_a": f"haproxy-reverse-{stem}", "envoy_a": f"envoy-reverse-{stem}"} rows.append( - peer_row([c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, **extra) + peer_row([c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, cpus=cpus, **extra) ) return "\n".join(rows) @@ -385,7 +428,7 @@ def post_table(data: dict, is_win: bool) -> str: ("HTTP/3 ยท QUIC", "HTTP/1 ยท TLS", "twp-reverse-http3-to-https-http1-lossy", "nginx-reverse-http3-to-https-http1-lossy", "yarp-reverse-http3-to-https-http1-lossy"), ] - def lossy_table(data: dict, is_win: bool) -> str: + def lossy_table(data: dict, is_win: bool, cpus: int = 4) -> str: include_he = not is_win rows = [ f"| Client | Origin | {peer_cols(include_he)} |", @@ -397,7 +440,7 @@ def lossy_table(data: dict, is_win: bool) -> str: stem = t.replace("twp-reverse-", "", 1) extra = {"haproxy_a": f"haproxy-reverse-{stem}", "envoy_a": f"envoy-reverse-{stem}"} rows.append( - peer_row([c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, **extra) + peer_row([c, o], t, n, y, data, win_no_quic=is_win, win_no_haproxy_envoy=is_win, cpus=cpus, **extra) ) return "\n".join(rows) @@ -415,7 +458,7 @@ def lossy_table(data: dict, is_win: bool) -> str: ("Duplex (WebSocket / H1 Upgrade)", "HTTP/1 ยท TLS", "HTTP/1 ยท plain", "twp-reverse-http1-tls-duplex-ws", "nginx-reverse-http1-tls-duplex-ws", "yarp-reverse-http1-tls-duplex-ws"), ] - def arch_table(data: dict, is_win: bool) -> str: + def arch_table(data: dict, is_win: bool, cpus: int = 4) -> str: include_he = not is_win rows = [ f"| Scenario | Client | Origin | {peer_cols(include_he)} |", @@ -438,6 +481,7 @@ def arch_table(data: dict, is_win: bool) -> str: data, win_no_quic=is_win and bool(n and "http3" in n), win_no_haproxy_envoy=is_win, + cpus=cpus, **extra, ) ) @@ -449,14 +493,14 @@ def arch_table(data: dict, is_win: bool) -> str: ("Keep-alive ยท 256 KiB GET", "twp-reverse-http1-tls-ka-256k", "nginx-reverse-http1-tls-ka-256k", "yarp-reverse-http1-tls-ka-256k"), ] - def tls_table(data: dict, is_win: bool) -> str: + def tls_table(data: dict, is_win: bool, cpus: int = 4) -> str: include_he = not is_win rows = [ f"| Workload | {peer_cols(include_he)} |", f"|---|{peer_rule(include_he)}|", ] for label, t, n, y in tls_spec: - rows.append(peer_row([label], t, n, y, data, win_no_haproxy_envoy=is_win)) + rows.append(peer_row([label], t, n, y, data, win_no_haproxy_envoy=is_win, cpus=cpus)) return "\n".join(rows) def sat_block_a(data: dict) -> str: @@ -812,7 +856,7 @@ def patch_heavier(heading: str, new_hdr: str, new_table: str) -> None: f"Median of **3** repeats on `{mac_folder}` @ `{HEAD}`. " f"Source: Actions [{rid_t_mac}]({run_url(rid_t_mac)}).\n\n" ) - mac_tbl = tls_table(mac["tls"], False) + mac_tbl = tls_table(mac["tls"], False, cpus=3) mac_section = mac_hdr + mac_tbl + "\n\n" m = text.find("#### macOS", tls) next_h2 = text.find("\n## ", tls + 1) @@ -881,7 +925,7 @@ def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, tabl "### Windows โ€” POST 64 KiB request + 64 KiB response", "### macOS โ€” heavier reverse GET (64 KiB / 256 KiB)", f"{mac_intro} Source: Actions [{rid_b_mac}]({run_url(rid_b_mac)}) (`compare-bodies`). Warmup 2s / measure 8s.", - bodies_table(mac["bodies"], False), + bodies_table(mac["bodies"], False, cpus=3), ) if has_os(runs["post"], mac_folder): ensure_mac_heading( @@ -889,7 +933,7 @@ def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, tabl "### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss)", "### macOS โ€” POST 64 KiB request + 64 KiB response", f"{mac_intro} Source: Actions [{rid_p_mac}]({run_url(rid_p_mac)}) (`compare-post`).", - post_table(mac["post"], False), + post_table(mac["post"], False, cpus=3), ) if has_os(runs["lossy"], mac_folder): ensure_mac_heading( @@ -897,7 +941,7 @@ def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, tabl "### Architecture-sensitive", "### macOS โ€” lossy / high-RTT (H2 HOL / H3 loss)", f"{mac_intro} Source: [{rid_l_mac}]({run_url(rid_l_mac)}) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only).", - lossy_table(mac["lossy"], False), + lossy_table(mac["lossy"], False, cpus=3), ) if has_os(runs["arch"], mac_folder): ensure_mac_heading( @@ -905,7 +949,7 @@ def ensure_mac_heading(anchor: str, following: str, heading: str, hdr: str, tabl "Slow consumer is sleep-bound", "#### macOS", f"{mac_intro} Source: Actions [{rid_a_mac}]({run_url(rid_a_mac)}) (`compare-arch`).", - arch_table(mac["arch"], False), + arch_table(mac["arch"], False, cpus=3), ) text = re.sub(r"\nH1-client rows[^\n]*\n", "\n", text) diff --git a/tools/RpsLoadProbe/validate-all-compare-product-arms.ps1 b/tools/RpsLoadProbe/validate-all-compare-product-arms.ps1 index 277c205b1..4acdd5513 100644 --- a/tools/RpsLoadProbe/validate-all-compare-product-arms.ps1 +++ b/tools/RpsLoadProbe/validate-all-compare-product-arms.ps1 @@ -96,6 +96,8 @@ foreach ($os in @('windows-latest', 'ubuntu-latest', 'macos-15')) { if ($null -ne $got -and $got -gt 0) { $peerSustain[$arm] = [double]$got } } + # Windows and macOS product jobs do not run twp-mitm-* (Linux-only MITM). + # A null Lite/Full is that omission, not a missing arm. if ($null -ne $lite) { $lr = $lite / $rev $ok = $lr -ge $MitmLiteGate From 2d6c5a60003406662ac4644c93fa70970a8db3c6 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 23:55:11 +0530 Subject: [PATCH 23/24] Publish the many-connection RPS re-measure so the wiki matches the client peers actually see. HTTP/2 and HTTP/3 now fan out across workers. Three Windows large-body rows sit just under the 0.50 peer floor; that floor stays, and the measured cells are what the tables show. --- tools/RpsLoadProbe/PERF-GATES.md | 1 + wiki/Performance.md | 687 +++++++++--------- wiki/images/rps-practical-heavier-linux.png | Bin 104073 -> 104856 bytes wiki/images/rps-practical-heavier-macos.png | Bin 101686 -> 100399 bytes wiki/images/rps-practical-heavier-windows.png | Bin 98127 -> 96065 bytes wiki/images/rps-practical-linux.png | Bin 92261 -> 92832 bytes wiki/images/rps-practical-macos.png | Bin 91681 -> 94732 bytes wiki/images/rps-practical-windows.png | Bin 91082 -> 91635 bytes 8 files changed, 351 insertions(+), 337 deletions(-) diff --git a/tools/RpsLoadProbe/PERF-GATES.md b/tools/RpsLoadProbe/PERF-GATES.md index b230cf41e..dd064ad77 100644 --- a/tools/RpsLoadProbe/PERF-GATES.md +++ b/tools/RpsLoadProbe/PERF-GATES.md @@ -80,6 +80,7 @@ Terminate smoke (peak RPS; routes unset): TWP H1 TLS win **34273**, ubuntu **241 - [x] **Product (historical @ 0.70 MITM):** `compare-product` median of 3 โ€” GHA [33263425394](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33263425394) @ `3d9aba23` Win+Linux; Mac [33480574506](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33480574506) @ `af6feb9c`. - **Product gates (current):** [`validate-compare-product-gates.ps1`](validate-compare-product-gates.ps1) โ€” **MITM Lite รท Reverse โ‰ฅ 0.25**, **Full รท Reverse โ‰ฅ 0.25**, and **reverse TWP รท closest peer โ‰ฅ 0.50** on **all OS** for **every reverse Clientร—Origin wire** present in the CSV (no Mac carve-outs). Closest peer is the SLO-pass sustain among YARP, nginx, HAProxy, and Envoy nearest to Titanium; a distance tie uses the higher peer sustain. Spot (`run-spot-matrix.ps1`) uses the same floors. - **MITM floor 0.50โ†’0.40 (2026-10-01):** macos-15 Apple Silicon product-smoke [36870117448](https://github.com/justcoding121/titanium-web-proxy/actions/runs/36870117448) @ `39a903f0` failed H3โ†’H1 TLS LiteรทReverse **0.449** and H1 plain FullรทReverse **0.410** (Win+Linux green). Locked โ‰ฅ **0.40** so all-OS product publish matches measured Mac MITM overhead without a Core dig. +- **Connection fan-out (2026-10-04):** full suite @ `482f5984` opens many H2/H3 client connections. Three Windows large-body rows landed under the 0.50 closest-peer floor, and those jobs stayed red: arch H3โ†’H2 TLS slow 256 KiB **0.450** and arch H3โ†’H1 TLS slow 256 KiB **0.464** ([37210530448](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210530448)); bodies H3โ†’H1 TLS 256 KiB **0.443** ([37210521790](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210521790)). The floor stays **0.50**. Wiki cells are the measured numbers. Product, saturation, POST, lossy, TLS cost, gRPC, WebSocket, and editions aggregates were green. - **Heavier / gRPC peer gates (current):** [`validate-heavier-yarp-gates.ps1`](validate-heavier-yarp-gates.ps1) on `compare-bodies` (**body64k** + **body256k**) and `compare-post` (**post64k**); [`validate-grpc-yarp-gates.ps1`](validate-grpc-yarp-gates.ps1) on `compare-grpc` (H2 TLSโ†’H2 TLS + H2 TLSโ†’h2c). Same floor **TWP รท closest peer โ‰ฅ 0.50** @ c=64 median; shard-safe SKIP when no peer has a c=64 SLO. **`compare-lossy` / `compare-arch` hard bar:** [`validate-lossy-arch-gates.ps1`](validate-lossy-arch-gates.ps1) โ€” every TWP arm **> 0**; when any peer sustain/peak **> 0**, TWPรทclosest peer **โ‰ฅ 0.50**. Workflow runs [`smoke-validate-gates.ps1`](smoke-validate-gates.ps1) **before** the saturation ramp so gate-script crashes fail in seconds. - **Peer floor is closest-peer 0.50, MITM floor 0.25 (2026-10-03):** YARP is no longer the only denominator. The macOS product job [37087728656](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37087728656) failed because the ramp step hit 55 minutes, not because of a ratio. That step was raised to 180 minutes, but the full saturation run [37110567901](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37110567901) hit 180 on macOS, so macOS now uses the same step cap as Linux/Windows (345 minutes). - **YARP floor 0.75โ†’0.60 (2026-09-27):** gated suite `wiki-rps-742204d8` Mac-only gate fails โ€” product H3โ†’h2c **0.618** / H3โ†’H2 **0.617** (Win+Linux green). Above **0.50**; Intel-Mac H3 peer noise, not a Core cliff. Locked โ‰ฅ **0.60**. Heavier: missing TWP c=64 SLO while YARP present is now **SKIP** (was FAIL) so Mac body256k H3 early-stop does not hard-fail the job. diff --git a/wiki/Performance.md b/wiki/Performance.md index 848aa25cb..a9f5693ce 100644 --- a/wiki/Performance.md +++ b/wiki/Performance.md @@ -12,13 +12,14 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli - Peers use equivalent TLS/ALPN and streaming-friendly settings on the same loopback shape. HAProxy and Envoy are Linux/macOS only โ€” *Not possible* on Windows, so their columns are omitted there. - MITM (HTTPS decryption with forged certificates) is Titanium-only; peers cannot MITM. The published MITM table is Linux only. It shows Titanium MITM overhead versus its own reverse path on the same wires. - **Tiny keep-alive GET** (~56-byte JSON) is the industry RPS shape (same class as wrk / TechEmpower). It is also real for small JSON APIs and health checks. +- **HTTP/2 and HTTP/3** spread that concurrency across `min(concurrency, max(4 ร— cores, 16))` client connections, the same connection count h2load and wrk fix with `-c`. On these 4 vCPU runners that is 8, 16, 16, and 16 connections at c = 8, 16, 32, 64. - **Same-protocol H2โ†”H2 / H3โ†”H3** on that shape is Titaniumโ€™s **best case**: with interception off, Titanium copies frames instead of decoding and re-encoding headers (peers do a full HTTP decode). Medals there are not the typical reverse-proxy job. -- **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#user-content-heavier-reverse-workloads) (@ `0386b2aa`). +- **Typical reverse** is H1 TLSโ†’H1 or H2โ†’H1 (~1.1ร— YARP on Win/Linux tiny GET). With **larger bodies**, see [Heavier reverse](#user-content-heavier-reverse-workloads) (@ `482f5984`). ## How to read the tables -- Bold RPS is **sustain** (last concurrency that still met error/latency SLOs). When peak differs, it appears in the same cell as `(peak N ยท โ€ฆ)` with RSS/CPU. When sustain equals peak, peak is omitted. -- ๐Ÿฅ‡ = best among OS-possible peers on that row (highest sustain RPS; on a tie, lower memory then lower CPU%). On tiny Reverse that is Titanium / nginx / YARP (plus HAProxy / Envoy on Linux/macOS). The same rule applies to heavier reverse, architecture-sensitive, TLS-cost, gRPC, and WebSocket peer tables. Gold on tiny GET is that frame-copy best case, not โ€œTitanium is 1.7ร— on all reverse.โ€ For larger-body H2โ†’H2, see the [heavier tables](#user-content-heavier-reverse-workloads). +- Bold RPS is **sustain** (last concurrency that still met error/latency SLOs). When peak differs, it appears in the same cell as `(peak N ยท โ€ฆ)` with RSS/CPU. When sustain equals peak, peak is omitted. Footnotes also include microseconds of CPU per request when CPU was sampled. +- ๐Ÿฅ‡ = best among OS-possible peers on that row (highest sustain RPS; on a tie, lower memory then lower CPU%). On 64 KiB and 256 KiB rows the medal follows goodput (sustain RPS ร— request and response bytes). On tiny Reverse that is Titanium / nginx / YARP (plus HAProxy / Envoy on Linux/macOS). The same rule applies to heavier reverse, architecture-sensitive, TLS-cost, gRPC, and WebSocket peer tables. Gold on tiny GET is that frame-copy best case, not โ€œTitanium is 1.7ร— on all reverse.โ€ For larger-body H2โ†’H2, see the [heavier tables](#user-content-heavier-reverse-workloads). - **MITM** is published on Linux only (Titanium-only, no peer medal). **LiteรทReverse** / **FullรทReverse** = Titanium MITM sustain รท Titanium reverse sustain on the same Clientร—Origin pair โ€” the overhead of decrypting and intercepting versus bare reverse, not versus nginx or YARP. - *Not possible* = cannot do that path. *Not measured* = path exists but no published number yet. When every row would be *Not possible* for a peer, that column is omitted and a note above the table explains why. @@ -48,6 +49,16 @@ For pooling knobs and certificate first-visit tuning, see [Performance and pooli All three OS use public-repo GitHub-hosted runners: **Windows / Linux** at **4 vCPU / 16 GiB / 14 GB SSD**, **macOS** at **`macos-15` Apple Silicon (M1) 3-core / 7 GB** (pinned, not `macos-latest`). macOS is Apple Silicon because that is what Mac users run today; the runner sizes differ, which is fine because we compare products within an OS. Same harness knobs: warmup 2s / measure 8s; concurrency 8, 16, 32, 64; median of 3 repeats. Prefer TitaniumรทYARP / Titaniumรทnginx ratios over absolute RPS. +HTTP/2 and HTTP/3 open `min(concurrency, max(4 ร— cores, 16))` client connections, one `SocketsHttpHandler` each. On the 4 vCPU runners that is 8, 16, 16, and 16 connections at c = 8, 16, 32, 64. HTTP/1 stays one connection per in-flight request. The generator is in-process .NET `SocketsHttpHandler` on the same machine as the origin and the proxy. Client, origin, and proxy share those cores, so the proxy's CPU share stays below a full box. + +nginx TCP and TLS `listen` lines use `reuseport`. Linux and Windows keep `worker_processes auto`. macOS stays `worker_processes 1`. HAProxy `nbthread` and Envoy `--concurrency` stay at the processor count. + +Large-body flow control is the same class on every peer: nginx `http2_chunk_size 16k`; HAProxy `tune.bufsize 65536` and `tune.h2.initial-window-size 65536`; Envoy stream window 65535 bytes and connection window 1 MiB. Titanium's defaults stay a 65535-byte connection window and a 16384-byte max frame. + +Cells for 64 KiB and 256 KiB bodies include goodput (MiB/s) and microseconds of CPU per request. Those rows are ranked on goodput. Smaller bodies stay ranked on RPS. + +On the Linux H2 TLSโ†’H1 plain row at c=64 (16 connections, @ `482f5984`), proxy CPU was about **44%** for nginx, **46%** for HAProxy, and **63%** for Envoy. Windows nginx on the same H2 client shape stayed near **25%** (one core). That measured shape is the one published here. + Laptop High-perf / cool-paired Windows numbers live on [Performance Local Lab](Performance-Local-Lab). Do not mix those absolutes into the tables below. ### Windows (GitHub-hosted `windows-latest`) @@ -97,7 +108,7 @@ Use the pinned `macos-15` label (not `macos-latest`) so the image does not chang ### Saturation control -Calibration for the shared 4 vCPU loopback shape: how close client + origin are to saturated before ranking reverse peers. Tiny keep-alive GET. Median of **3** repeats @ `0386b2aa` โ€” [37156912437](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156912437). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Block A **% of origin-HttpClient** uses median **peak** RPS. Blocks B/C use peerรทYARP / รทnginx on median peak (not % of H1 origin). **RPS cells** embed median RSS / CPU for the **proxy child** plus its **full descendant tree** (serve-proxy โ†’ nginx master โ†’ workers); origin-direct samples the **origin** child. Product matrices below use matched `dotnet-httpclient` only (not bombardier). +Calibration for the shared 4 vCPU loopback shape: how close client + origin are to saturated before ranking reverse peers. Tiny keep-alive GET. Median of **3** repeats @ `482f5984` โ€” [37210519205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210519205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Block A **% of origin-HttpClient** uses median **peak** RPS. Blocks B/C use peerรทYARP / รทnginx on median peak (not % of H1 origin). **RPS cells** embed median RSS / CPU for the **proxy child** plus its **full descendant tree** (serve-proxy โ†’ nginx master โ†’ workers); origin-direct samples the **origin** child. Product matrices below use matched `dotnet-httpclient` only (not bombardier). #### Block A โ€” H1 plain @@ -113,39 +124,39 @@ Calibration for the shared 4 vCPU loopback shape: how close client + origin are | Arm | Generator | RPS | % of origin-HttpClient | |---|---|---:|---:| -| origin-direct | dotnet-httpclient | **81,424**
      (55 MiB / 44.9% CPU) | **100.0%** | -| origin-direct-bombardier | bombardier | **62,541**
      (56 MiB / 24.2% CPU) | **76.8%** | -| bare-reverse-http1 | dotnet-httpclient | **40,689**
      (58 MiB / 45.4% CPU) | **50.0%** | -| nginx-reverse-http1 | dotnet-httpclient | **25,102**
      (126 MiB / 24.7% CPU) | **30.8%** | -| yarp-reverse-http1 | dotnet-httpclient | **35,822**
      (88 MiB / 50.3% CPU) | **44.0%** | -| twp-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **42,740**
      (71 MiB / 48.0% CPU) | **52.5%** | +| origin-direct | dotnet-httpclient | **51,094**
      (55 MiB / 40.5% CPU ยท 31.7 ยตs CPU/req) | **100.0%** | +| origin-direct-bombardier | bombardier | **38,568**
      (56 MiB / 21.2% CPU ยท 21.9 ยตs CPU/req) | **75.5%** | +| bare-reverse-http1 | dotnet-httpclient | **25,550**
      (55 MiB / 43.1% CPU ยท 67.6 ยตs CPU/req) | **50.0%** | +| nginx-reverse-http1 | dotnet-httpclient | **13,356**
      (126 MiB / 24.8% CPU ยท 74.2 ยตs CPU/req) | **26.1%** | +| yarp-reverse-http1 | dotnet-httpclient | **21,546**
      (88 MiB / 49.4% CPU ยท 91.7 ยตs CPU/req) | **42.2%** | +| twp-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **25,433**
      (72 MiB / 47.2% CPU ยท 74.3 ยตs CPU/req) | **49.8%** | **Linux** (`ubuntu-latest`) | Arm | Generator | RPS | % of origin-HttpClient | |---|---|---:|---:| -| origin-direct | dotnet-httpclient | **69,231**
      (79 MiB / 42.2% CPU) | **100.0%** | -| origin-direct-bombardier | bombardier | **41,477**
      (80 MiB / 35.1% CPU) | **59.9%** | -| bare-reverse-http1 | dotnet-httpclient | **32,207**
      (72 MiB / 45.1% CPU) | **46.5%** | -| nginx-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **38,745**
      (76 MiB / 41.1% CPU) | **56.0%** | -| yarp-reverse-http1 | dotnet-httpclient | **27,681**
      (114 MiB / 50.5% CPU) | **40.0%** | -| twp-reverse-http1 | dotnet-httpclient | **32,368**
      (85 MiB / 49.3% CPU) | **46.8%** | +| origin-direct | dotnet-httpclient | **70,838**
      (80 MiB / 42.9% CPU ยท 24.2 ยตs CPU/req) | **100.0%** | +| origin-direct-bombardier | bombardier | **41,999**
      (80 MiB / 34.9% CPU ยท 33.2 ยตs CPU/req) | **59.3%** | +| bare-reverse-http1 | dotnet-httpclient | **32,377**
      (67 MiB / 44.4% CPU ยท 54.8 ยตs CPU/req) | **45.7%** | +| nginx-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **39,318**
      (76 MiB / 41.3% CPU ยท 42.0 ยตs CPU/req) | **55.5%** | +| yarp-reverse-http1 | dotnet-httpclient | **27,756**
      (115 MiB / 50.0% CPU ยท 72.1 ยตs CPU/req) | **39.2%** | +| twp-reverse-http1 | dotnet-httpclient | **31,478**
      (83 MiB / 49.5% CPU ยท 62.9 ยตs CPU/req) | **44.4%** | **macOS** (`macos-15`, Apple Silicon) | Arm | Generator | RPS | % of origin-HttpClient | |---|---|---:|---:| -| origin-direct | dotnet-httpclient | **52,539**
      (89 MiB / 31.7% CPU) | **100.0%** | -| origin-direct-bombardier | bombardier | **38,063**
      (89 MiB / 22.4% CPU) | **72.4%** | -| bare-reverse-http1 | dotnet-httpclient | **20,688**
      (91 MiB / 27.7% CPU) | **39.4%** | -| nginx-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **26,334**
      (68 MiB / 20.6% CPU) | **50.1%** | -| yarp-reverse-http1 | dotnet-httpclient | **22,962**
      (147 MiB / 36.7% CPU) | **43.7%** | -| twp-reverse-http1 | dotnet-httpclient | **18,985**
      (114 MiB / 30.5% CPU) | **36.1%** | +| origin-direct | dotnet-httpclient | **85,921**
      (90 MiB / 34.0% CPU ยท 15.8 ยตs CPU/req) | **100.0%** | +| origin-direct-bombardier | bombardier | **63,764**
      (89 MiB / 24.6% CPU ยท 15.4 ยตs CPU/req) | **74.2%** | +| bare-reverse-http1 | dotnet-httpclient | **33,705**
      (92 MiB / 32.5% CPU ยท 38.6 ยตs CPU/req) | **39.2%** | +| nginx-reverse-http1 | dotnet-httpclient | **26,475**
      (68 MiB / 21.2% CPU ยท 32.1 ยตs CPU/req) | **30.8%** | +| yarp-reverse-http1 | dotnet-httpclient | ๐Ÿฅ‡ **29,622**
      (147 MiB / 37.5% CPU ยท 50.6 ยตs CPU/req) | **34.5%** | +| twp-reverse-http1 | dotnet-httpclient | **23,988**
      (117 MiB / 33.2% CPU ยท 55.4 ยตs CPU/req) | **27.9%** | -On this macOS run `origin-direct` was **31.7%** CPU, so the % of origin-HttpClient column is not a ceiling when that CPU is near idle. Rank those Mac peers by RPS. +On this macOS run `origin-direct` was **34.0%** CPU, so the % of origin-HttpClient column is not a ceiling when that CPU is near idle. Rank those Mac peers by RPS. -Reverse peers on Block A @ `0386b2aa`: Windows TWP is **52.5%** of origin-direct and Linux TWP is **46.8%**. Prefer the **%** column over absolute RPS across runs. Bare and origin-direct are controls (not medal peers). +Reverse peers on Block A @ `482f5984`: Windows TWP is **49.8%** of origin-direct and Linux TWP is **44.4%**. Prefer the **%** column over absolute RPS across runs. Bare and origin-direct are controls (not medal peers). #### Block B โ€” H2 TLSโ†’H1 @@ -155,25 +166,25 @@ Peer ratios (รทYARP / รทnginx) on median peak; **RPS cells** embed `(MiB / CPU%) | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| -| nginx-reverse-http2 | dotnet-httpclient | **14,643**
      (142 MiB / 24.4% CPU) | **0.31ร—** | **1.00ร—** | -| yarp-reverse-http2 | dotnet-httpclient | **46,665**
      (92 MiB / 52.2% CPU) | **1.00ร—** | **3.19ร—** | -| twp-reverse-http2-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **54,734**
      (103 MiB / 50.0% CPU) | **1.17ร—** | **3.74ร—** | +| nginx-reverse-http2 | dotnet-httpclient | **7,670**
      (143 MiB / 24.8% CPU ยท 129.2 ยตs CPU/req) | **0.28ร—** | **1.00ร—** | +| yarp-reverse-http2 | dotnet-httpclient | **27,825**
      (105 MiB / 54.6% CPU ยท 78.4 ยตs CPU/req) | **1.00ร—** | **3.63ร—** | +| twp-reverse-http2-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **30,416**
      (135 MiB / 50.7% CPU ยท 66.6 ยตs CPU/req) | **1.09ร—** | **3.97ร—** | **Linux** (`ubuntu-latest`) | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| -| nginx-reverse-http2 | dotnet-httpclient | **15,027**
      (100 MiB / 19.4% CPU) | **0.52ร—** | **1.00ร—** | -| yarp-reverse-http2 | dotnet-httpclient | **29,082**
      (122 MiB / 50.3% CPU) | **1.00ร—** | **1.94ร—** | -| twp-reverse-http2-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **34,243**
      (118 MiB / 51.6% CPU) | **1.18ร—** | **2.28ร—** | +| nginx-reverse-http2 | dotnet-httpclient | **24,784**
      (100 MiB / 44.0% CPU ยท 71.0 ยตs CPU/req) | **0.89ร—** | **1.00ร—** | +| yarp-reverse-http2 | dotnet-httpclient | **27,758**
      (133 MiB / 50.4% CPU ยท 72.7 ยตs CPU/req) | **1.00ร—** | **1.12ร—** | +| twp-reverse-http2-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **31,314**
      (146 MiB / 52.2% CPU ยท 66.7 ยตs CPU/req) | **1.13ร—** | **1.26ร—** | **macOS** (`macos-15`, Apple Silicon) | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| -| nginx-reverse-http2 | dotnet-httpclient | ๐Ÿฅ‡ **32,302**
      (82 MiB / 22.7% CPU) | **1.01ร—** | **1.00ร—** | -| yarp-reverse-http2 | dotnet-httpclient | **31,922**
      (154 MiB / 39.3% CPU) | **1.00ร—** | **0.99ร—** | -| twp-reverse-http2-cleartext | dotnet-httpclient | **29,912**
      (127 MiB / 38.7% CPU) | **0.94ร—** | **0.93ร—** | +| nginx-reverse-http2 | dotnet-httpclient | ๐Ÿฅ‡ **33,612**
      (83 MiB / 25.6% CPU ยท 30.5 ยตs CPU/req) | **1.08ร—** | **1.00ร—** | +| yarp-reverse-http2 | dotnet-httpclient | **31,109**
      (157 MiB / 41.3% CPU ยท 53.1 ยตs CPU/req) | **1.00ร—** | **0.93ร—** | +| twp-reverse-http2-cleartext | dotnet-httpclient | **33,241**
      (171 MiB / 39.8% CPU ยท 47.9 ยตs CPU/req) | **1.07ร—** | **0.99ร—** | #### Block C โ€” H3โ†’H1 Same layout as Block B. Requires QuicListener. nginx needs `http_v3_module` (Windows nginx has no QUIC). HAProxy needs `USE_QUIC` (GHA Linux/macOS require it). Envoy 1.20+ includes HTTP/3. @@ -185,24 +196,24 @@ Medals are nginx / YARP / Titanium only, from the same run as Blocks A and B ([3 | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| | nginx-reverse-http3-cleartext | dotnet-httpclient | *Not possible (no QUIC)* | โ€” | โ€” | -| yarp-reverse-http3-cleartext | dotnet-httpclient | **23,173**
      (171 MiB / 51.9% CPU) | **1.00ร—** | โ€” | -| twp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **26,239**
      (115 MiB / 43.6% CPU) | **1.13ร—** | โ€” | +| yarp-reverse-http3-cleartext | dotnet-httpclient | **8,351**
      (154 MiB / 52.2% CPU ยท 249.9 ยตs CPU/req) | **1.00ร—** | โ€” | +| twp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **9,367**
      (110 MiB / 47.6% CPU ยท 203.1 ยตs CPU/req) | **1.12ร—** | โ€” | **Linux** (`ubuntu-latest`) | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| -| nginx-reverse-http3-cleartext | dotnet-httpclient | **0**
      (peak 15,029 ยท 107 MiB / 22.4% CPU) | **0.80ร—** | **1.00ร—** | -| yarp-reverse-http3-cleartext | dotnet-httpclient | **18,681**
      (182 MiB / 50.7% CPU) | **1.00ร—** | **1.24ร—** | -| twp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **20,402**
      (142 MiB / 50.2% CPU) | **1.09ร—** | **1.36ร—** | +| nginx-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **20,832**
      (104 MiB / 32.3% CPU ยท 61.9 ยตs CPU/req) | **1.40ร—** | **1.00ร—** | +| yarp-reverse-http3-cleartext | dotnet-httpclient | **14,884**
      (194 MiB / 50.8% CPU ยท 136.5 ยตs CPU/req) | **1.00ร—** | **0.71ร—** | +| twp-reverse-http3-cleartext | dotnet-httpclient | **18,094**
      (148 MiB / 52.8% CPU ยท 116.7 ยตs CPU/req) | **1.22ร—** | **0.87ร—** | **macOS** (`macos-15`, Apple Silicon) | Arm | Generator | RPS | รทYARP | รทnginx | |---|---|---:|---:|---:| -| nginx-reverse-http3-cleartext | dotnet-httpclient | **0**
      (peak 26,913 ยท 88 MiB / 19.0% CPU) | **1.24ร—** | **1.00ร—** | -| yarp-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **21,658**
      (229 MiB / 44.6% CPU) | **1.00ร—** | **0.80ร—** | -| twp-reverse-http3-cleartext | dotnet-httpclient | **18,385**
      (140 MiB / 44.6% CPU) | **0.85ร—** | **0.68ร—** | +| nginx-reverse-http3-cleartext | dotnet-httpclient | ๐Ÿฅ‡ **23,761**
      (84 MiB / 21.6% CPU ยท 36.4 ยตs CPU/req) | **1.13ร—** | **1.00ร—** | +| yarp-reverse-http3-cleartext | dotnet-httpclient | **17,661**
      (213 MiB / 43.4% CPU ยท 98.2 ยตs CPU/req) | **1.00ร—** | **0.88ร—** | +| twp-reverse-http3-cleartext | dotnet-httpclient | **15,433**
      (139 MiB / 43.6% CPU ยท 113.1 ยตs CPU/req) | **0.87ร—** | **0.77ร—** | ## Windows โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP @@ -210,75 +221,75 @@ Client / origin: HTTP version and whether TLS is used (`plain` = cleartext, `TLS ### Reverse -Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. nginx terminate peers use `keepalive 256` + streaming buffers. **HAProxy / Envoy are Linux-only peers** (no official Windows port). Laptop High-perf / cool-paired numbers stay on the [local lab](Performance-Local-Lab). Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). +Median of **3 repeats** on `windows-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `482f5984` โ€” `compare-product` [37210516555](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210516555). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. nginx terminate peers use `keepalive 256` + streaming buffers. **HAProxy / Envoy are Linux-only peers** (no official Windows port). Laptop High-perf / cool-paired numbers stay on the [local lab](Performance-Local-Lab). Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). **Load generators:** Reverse inbound H3 arms use **`dotnet-httpclient`** (`http_version=3.0`, `RequestVersionExact`). nginx/Windows is same-OS only (no QUIC). HAProxy/Envoy are Linux-only terminate peers. | Client | Origin | TWP | nginx | YARP | |---|---|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **25,718**
      (73 MiB / 48.6% CPU) | **13,568**
      (125 MiB / 24.7% CPU) | **21,289**
      (88 MiB / 50.3% CPU) | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **63,316**
      (88 MiB / 48.7% CPU) | **27,918**
      (136 MiB / 24.8% CPU) | **60,829**
      (97 MiB / 49.8% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **37,192**
      (109 MiB / 46.6% CPU) | *Not possible (no H2 upstream)* | **32,784**
      (93 MiB / 48.2% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **38,763**
      (117 MiB / 45.1% CPU) | *Not possible (no H2 upstream)* | **36,723**
      (95 MiB / 48.6% CPU) | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **30,111**
      (117 MiB / 50.3% CPU) | *Not possible (no H3 upstream)* | **29,414**
      (128 MiB / 51.4% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **21,006**
      (84 MiB / 48.8% CPU) | **8,717**
      (142 MiB / 24.7% CPU) | **17,968**
      (102 MiB / 48.2% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **28,401**
      (85 MiB / 48.3% CPU) | **12,590**
      (144 MiB / 24.8% CPU) | **24,927**
      (102 MiB / 48.2% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **28,111**
      (111 MiB / 45.8% CPU) | *Not possible (no H2 upstream)* | **26,458**
      (103 MiB / 47% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **24,680**
      (114 MiB / 42.6% CPU) | *Not possible (no H2 upstream)* | **23,968**
      (112 MiB / 45.3% CPU) | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,100**
      (105 MiB / 49% CPU) | *Not possible (no H3 upstream)* | **15,440**
      (128 MiB / 50.2% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **36,931**
      (88 MiB / 52.9% CPU) | **9,197**
      (127 MiB / 24.8% CPU) | **32,084**
      (89 MiB / 54.6% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **31,632**
      (101 MiB / 53% CPU) | **6,653**
      (139 MiB / 24.8% CPU) | **27,576**
      (97 MiB / 51.8% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **111,921**
      (59 MiB / 29.2% CPU) | *Not possible (no H2 upstream)* | **66,064**
      (93 MiB / 51.5% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **89,109**
      (63 MiB / 29.6% CPU) | *Not possible (no H2 upstream)* | **56,161**
      (100 MiB / 48.5% CPU) | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **45,242**
      (139 MiB / 54.2% CPU) | *Not possible (no H3 upstream)* | **41,353**
      (139 MiB / 52.4% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **35,150**
      (97 MiB / 51.8% CPU) | **8,094**
      (141 MiB / 24.5% CPU) | **28,547**
      (95 MiB / 52.3% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **45,544**
      (108 MiB / 49.7% CPU) | **11,455**
      (144 MiB / 24.4% CPU) | **39,826**
      (98 MiB / 49.6% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **106,542**
      (77 MiB / 29.9% CPU) | *Not possible (no H2 upstream)* | **59,502**
      (102 MiB / 52.6% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **111,358**
      (78 MiB / 30.6% CPU) | *Not possible (no H2 upstream)* | **65,776**
      (97 MiB / 49% CPU) | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **43,671**
      (141 MiB / 52.9% CPU) | *Not possible (no H3 upstream)* | **37,298**
      (136 MiB / 53% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **15,288**
      (103 MiB / 45.6% CPU) | *Not possible (no QUIC)* | **14,486**
      (158 MiB / 51.2% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **13,559**
      (112 MiB / 45.6% CPU) | *Not possible (no QUIC)* | **13,225**
      (145 MiB / 51.2% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | ๐Ÿฅ‡ **35,201**
      (129 MiB / 45.2% CPU) | *Not possible (no H2 upstream)* | **23,716**
      (172 MiB / 48.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **31,884**
      (131 MiB / 45.7% CPU) | *Not possible (no H2 upstream)* | **21,920**
      (151 MiB / 47.7% CPU) | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,882**
      (117 MiB / 47.2% CPU) | *Not possible (no H3 upstream)* | **12,348**
      (150 MiB / 49.9% CPU) | +| HTTP/1 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **41,064**
      (73 MiB / 49.7% CPU ยท 48.4 ยตs CPU/req) | **25,199**
      (126 MiB / 24.9% CPU ยท 39.5 ยตs CPU/req) | **34,970**
      (90 MiB / 50.1% CPU ยท 57.3 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **21,793**
      (88 MiB / 52.7% CPU ยท 96.8 ยตs CPU/req) | **8,735**
      (136 MiB / 24.9% CPU ยท 113.9 ยตs CPU/req) | **19,712**
      (100 MiB / 51.6% CPU ยท 104.8 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **100,939**
      (113 MiB / 46.5% CPU ยท 18.4 ยตs CPU/req) | *Not possible (no H2 upstream)* | **96,552**
      (103 MiB / 51.5% CPU ยท 21.3 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **32,512**
      (118 MiB / 45.7% CPU ยท 56.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **30,037**
      (104 MiB / 47.3% CPU ยท 63.0 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **18,652**
      (105 MiB / 49.8% CPU ยท 106.8 ยตs CPU/req) | *Not possible (no H3 upstream)* | **18,139**
      (118 MiB / 50.6% CPU ยท 111.6 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **19,964**
      (84 MiB / 51.6% CPU ยท 103.3 ยตs CPU/req) | **8,536**
      (142 MiB / 24.7% CPU ยท 115.7 ยตs CPU/req) | **17,826**
      (101 MiB / 50.8% CPU ยท 114.0 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **18,995**
      (85 MiB / 47.5% CPU ยท 100.0 ยตs CPU/req) | **6,769**
      (144 MiB / 24.8% CPU ยท 146.2 ยตs CPU/req) | **16,718**
      (105 MiB / 47.6% CPU ยท 113.9 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **78,921**
      (132 MiB / 46.6% CPU ยท 23.6 ยตs CPU/req) | *Not possible (no H2 upstream)* | **73,677**
      (110 MiB / 48.6% CPU ยท 26.4 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **25,246**
      (118 MiB / 43.4% CPU ยท 68.7 ยตs CPU/req) | *Not possible (no H2 upstream)* | **24,295**
      (108 MiB / 45.7% CPU ยท 75.3 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,278**
      (109 MiB / 50.2% CPU ยท 123.3 ยตs CPU/req) | *Not possible (no H3 upstream)* | **15,554**
      (124 MiB / 47.8% CPU ยท 122.9 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **33,712**
      (120 MiB / 51.6% CPU ยท 61.3 ยตs CPU/req) | **9,207**
      (127 MiB / 24.7% CPU ยท 107.4 ยตs CPU/req) | **30,048**
      (92 MiB / 53.3% CPU ยท 70.9 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **29,159**
      (121 MiB / 52.8% CPU ยท 72.4 ยตs CPU/req) | **6,709**
      (138 MiB / 24.8% CPU ยท 147.6 ยตs CPU/req) | **26,307**
      (104 MiB / 53.5% CPU ยท 81.3 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **101,074**
      (101 MiB / 34.1% CPU ยท 13.5 ยตs CPU/req) | *Not possible (no H2 upstream)* | **73,374**
      (109 MiB / 54.1% CPU ยท 29.5 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **85,259**
      (117 MiB / 37.5% CPU ยท 17.6 ยตs CPU/req) | *Not possible (no H2 upstream)* | **64,463**
      (105 MiB / 49.6% CPU ยท 30.7 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **26,252**
      (150 MiB / 49.6% CPU ยท 75.6 ยตs CPU/req) | *Not possible (no H3 upstream)* | **24,448**
      (124 MiB / 53.8% CPU ยท 88.1 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **30,535**
      (116 MiB / 52.3% CPU ยท 68.5 ยตs CPU/req) | **7,738**
      (142 MiB / 24.8% CPU ยท 128.2 ยตs CPU/req) | **27,544**
      (105 MiB / 54.7% CPU ยท 79.4 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **27,044**
      (114 MiB / 51.6% CPU ยท 76.3 ยตs CPU/req) | **6,205**
      (144 MiB / 24.8% CPU ยท 160.1 ยตs CPU/req) | **25,109**
      (106 MiB / 53% CPU ยท 84.5 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **67,582**
      (127 MiB / 37.1% CPU ยท 21.9 ยตs CPU/req) | *Not possible (no H2 upstream)* | **50,109**
      (109 MiB / 50.1% CPU ยท 40.0 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **54,470**
      (125 MiB / 38.1% CPU ยท 28.0 ยตs CPU/req) | *Not possible (no H2 upstream)* | **40,097**
      (110 MiB / 45.8% CPU ยท 45.7 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **24,806**
      (158 MiB / 50.1% CPU ยท 80.8 ยตs CPU/req) | *Not possible (no H3 upstream)* | **22,946**
      (127 MiB / 50.7% CPU ยท 88.4 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **9,045**
      (115 MiB / 47.6% CPU ยท 210.6 ยตs CPU/req) | *Not possible (no QUIC)* | **7,808**
      (154 MiB / 50% CPU ยท 256.1 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **8,169**
      (114 MiB / 48.9% CPU ยท 239.2 ยตs CPU/req) | *Not possible (no QUIC)* | **7,295**
      (162 MiB / 51.2% CPU ยท 281.0 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท plain | ๐Ÿฅ‡ **11,590**
      (114 MiB / 48.5% CPU ยท 167.5 ยตs CPU/req) | *Not possible (no H2 upstream)* | **9,980**
      (162 MiB / 50.6% CPU ยท 202.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **12,365**
      (112 MiB / 49.5% CPU ยท 160.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **9,597**
      (161 MiB / 48.7% CPU ยท 203.0 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **12,979**
      (118 MiB / 44.5% CPU ยท 137.1 ยตs CPU/req) | *Not possible (no H3 upstream)* | **11,229**
      (167 MiB / 49.6% CPU ยท 176.8 ยตs CPU/req) | ## Linux โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse -Median of **3 repeats** on `ubuntu-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. **Linux nginx is the authoritative nginx baseline.** HAProxy (3.2 `USE_QUIC`) and Envoy (GitHub release, HTTP/3 compiled in) run on the same loopback shape as nginx/YARP. nginx terminate peers use `keepalive 256` + streaming buffers. The RPS workflow installs nginx.org mainline (`http_v3_module`), a QUIC-enabled HAProxy, Envoy, and `libmsquic`. Prefer ratios over absolute RPS. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). +Median of **3 repeats** on `ubuntu-latest` (4 vCPU / 16 GiB). Bare reverse 5ร—5 @ `482f5984` โ€” `compare-product` [37210516555](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210516555). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. **Linux nginx is the authoritative nginx baseline.** HAProxy (3.2 `USE_QUIC`) and Envoy (GitHub release, HTTP/3 compiled in) run on the same loopback shape as nginx/YARP. nginx terminate peers use `keepalive 256` + streaming buffers. The RPS workflow installs nginx.org mainline (`http_v3_module`), a QUIC-enabled HAProxy, Envoy, and `libmsquic`. Prefer ratios over absolute RPS. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | **32,632**
      (84 MiB / 50.1% CPU) | ๐Ÿฅ‡ **39,708**
      (76 MiB / 41.3% CPU) | **36,675**
      (66 MiB / 43.6% CPU) | **20,251**
      (115 MiB / 62.5% CPU) | **28,589**
      (115 MiB / 50.3% CPU) | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | **24,764**
      (102 MiB / 49.8% CPU) | ๐Ÿฅ‡ **28,840**
      (92 MiB / 42.5% CPU) | **27,741**
      (68 MiB / 44.5% CPU) | **17,414**
      (117 MiB / 58.4% CPU) | **21,704**
      (132 MiB / 50.6% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **80,883**
      (133 MiB / 49.8% CPU) | *Not possible (no H2 upstream)* | **49,902**
      (66 MiB / 41.3% CPU) | **57,690**
      (116 MiB / 53.8% CPU) | **71,970**
      (129 MiB / 47.5% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **70,384**
      (155 MiB / 48.8% CPU) | *Not possible (no H2 upstream)* | **65,133**
      (66 MiB / 42.6% CPU) | **55,862**
      (117 MiB / 53.6% CPU) | **64,060**
      (129 MiB / 45.9% CPU) | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **53,655**
      (159 MiB / 54.8% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **29,207**
      (121 MiB / 47.6% CPU) | **45,267**
      (170 MiB / 47.2% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **37,443**
      (108 MiB / 49.1% CPU) | ๐Ÿฅ‡ **43,780**
      (102 MiB / 41.4% CPU) | **43,464**
      (83 MiB / 43.8% CPU) | **27,932**
      (127 MiB / 57.3% CPU) | **32,652**
      (133 MiB / 50.2% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **20,479**
      (111 MiB / 48.3% CPU) | **22,614**
      (103 MiB / 41.6% CPU) | ๐Ÿฅ‡ **22,867**
      (86 MiB / 42.8% CPU) | **15,496**
      (127 MiB / 56.4% CPU) | **17,542**
      (142 MiB / 50.1% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **53,639**
      (157 MiB / 48.2% CPU) | *Not possible (no H2 upstream)* | **45,206**
      (85 MiB / 39.2% CPU) | **40,719**
      (125 MiB / 56.7% CPU) | **48,562**
      (146 MiB / 49% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **47,125**
      (162 MiB / 47% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **52,892**
      (85 MiB / 40.4% CPU) | **38,120**
      (127 MiB / 55.7% CPU) | **43,703**
      (146 MiB / 48% CPU) | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **18,332**
      (142 MiB / 52.3% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **9,524**
      (130 MiB / 55.4% CPU) | **16,417**
      (158 MiB / 49.8% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **38,451**
      (114 MiB / 52.8% CPU) | **16,655**
      (79 MiB / 19% CPU) | **23,689**
      (67 MiB / 24.6% CPU) | **14,151**
      (118 MiB / 23.3% CPU) | **34,302**
      (114 MiB / 50.5% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **53,871**
      (132 MiB / 45.3% CPU) | **36,494**
      (102 MiB / 19.6% CPU) | **45,460**
      (70 MiB / 24.6% CPU) | **28,035**
      (119 MiB / 23.2% CPU) | **51,217**
      (124 MiB / 46.4% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **93,213**
      (87 MiB / 39% CPU) | *Not possible (no H2 upstream)* | **29,683**
      (66 MiB / 24.3% CPU) | **25,025**
      (116 MiB / 21.7% CPU) | **54,957**
      (122 MiB / 46.7% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **58,499**
      (92 MiB / 36.4% CPU) | *Not possible (no H2 upstream)* | **19,745**
      (69 MiB / 24.4% CPU) | **16,269**
      (117 MiB / 21.4% CPU) | **39,312**
      (131 MiB / 46.2% CPU) | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **28,699**
      (139 MiB / 50.6% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **4,384**
      (121 MiB / 24.7% CPU) | **26,459**
      (152 MiB / 47.4% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **34,790**
      (117 MiB / 51.8% CPU) | **15,027**
      (100 MiB / 19.2% CPU) | **20,595**
      (82 MiB / 24.6% CPU) | **14,224**
      (128 MiB / 22.9% CPU) | **29,235**
      (121 MiB / 50.3% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **27,313**
      (127 MiB / 49.9% CPU) | **12,471**
      (110 MiB / 19.9% CPU) | **17,008**
      (83 MiB / 24.3% CPU) | **12,882**
      (129 MiB / 23.2% CPU) | **23,308**
      (126 MiB / 50.2% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **83,894**
      (104 MiB / 33.6% CPU) | *Not possible (no H2 upstream)* | **34,166**
      (83 MiB / 24.1% CPU) | **19,477**
      (128 MiB / 21.4% CPU) | **45,281**
      (131 MiB / 45.6% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **105,834**
      (101 MiB / 33.8% CPU) | *Not possible (no H2 upstream)* | **49,401**
      (83 MiB / 24.2% CPU) | **28,708**
      (127 MiB / 21% CPU) | **60,670**
      (136 MiB / 43.9% CPU) | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **26,506**
      (152 MiB / 49.3% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **4,391**
      (129 MiB / 24.8% CPU) | **23,067**
      (162 MiB / 47.3% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **21,432**
      (142 MiB / 50.4% CPU) | **0**
      (peak 15,402 ยท 105 MiB / 22.5% CPU) | ๐Ÿฅ‡ **23,096**
      (87 MiB / 27.1% CPU) | **3,855**
      (134 MiB / 24.6% CPU) | **18,435**
      (182 MiB / 50.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **24,920**
      (159 MiB / 48.3% CPU) | **0**
      (peak 19,115 ยท 120 MiB / 22.4% CPU) | ๐Ÿฅ‡ **27,176**
      (91 MiB / 28.7% CPU) | **1,058**
      (138 MiB / 4.6% CPU) | **22,554**
      (201 MiB / 49% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | ๐Ÿฅ‡ **29,202**
      (157 MiB / 52.8% CPU) | *Not possible (no H2 upstream)* | **25,453**
      (86 MiB / 26% CPU) | **422**
      (130 MiB / 2.3% CPU) | **23,989**
      (197 MiB / 48.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **25,256**
      (155 MiB / 50% CPU) | *Not possible (no H2 upstream)* | **21,256**
      (85 MiB / 26.6% CPU) | **514**
      (133 MiB / 2.8% CPU) | **21,430**
      (196 MiB / 47.6% CPU) | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **42,187**
      (208 MiB / 49.3% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **157**
      (129 MiB / 0.5% CPU) | **31,146**
      (233 MiB / 46.3% CPU) | +| HTTP/1 ยท plain | HTTP/1 ยท plain | **31,368**
      (84 MiB / 49.9% CPU ยท 63.6 ยตs CPU/req) | ๐Ÿฅ‡ **39,240**
      (76 MiB / 39.6% CPU ยท 40.4 ยตs CPU/req) | **33,736**
      (64 MiB / 43.1% CPU ยท 51.1 ยตs CPU/req) | **22,017**
      (115 MiB / 58.4% CPU ยท 106.2 ยตs CPU/req) | **28,120**
      (115 MiB / 49.1% CPU ยท 69.9 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/1 ยท TLS | **44,998**
      (104 MiB / 45.4% CPU ยท 40.4 ยตs CPU/req) | ๐Ÿฅ‡ **60,927**
      (93 MiB / 39.5% CPU ยท 25.9 ยตs CPU/req) | **54,443**
      (71 MiB / 42.7% CPU ยท 31.4 ยตs CPU/req) | **36,352**
      (118 MiB / 56% CPU ยท 61.6 ยตs CPU/req) | **41,324**
      (127 MiB / 47.8% CPU ยท 46.2 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **60,291**
      (135 MiB / 50.9% CPU ยท 33.8 ยตs CPU/req) | *Not possible (no H2 upstream)* | **36,999**
      (65 MiB / 42.1% CPU ยท 45.5 ยตs CPU/req) | **35,073**
      (116 MiB / 60% CPU ยท 68.5 ยตs CPU/req) | **52,826**
      (128 MiB / 48.8% CPU ยท 36.9 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **60,446**
      (164 MiB / 48.4% CPU ยท 32.0 ยตs CPU/req) | *Not possible (no H2 upstream)* | **54,142**
      (68 MiB / 44.3% CPU ยท 32.7 ยตs CPU/req) | **42,351**
      (117 MiB / 57.8% CPU ยท 54.6 ยตs CPU/req) | **54,565**
      (129 MiB / 48% CPU ยท 35.2 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **34,726**
      (153 MiB / 54.3% CPU ยท 62.5 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **15,311**
      (121 MiB / 55.7% CPU ยท 145.4 ยตs CPU/req) | **30,783**
      (162 MiB / 48.7% CPU ยท 63.3 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **40,461**
      (108 MiB / 48% CPU ยท 47.4 ยตs CPU/req) | ๐Ÿฅ‡ **51,258**
      (100 MiB / 39.6% CPU ยท 30.9 ยตs CPU/req) | **48,775**
      (83 MiB / 43.7% CPU ยท 35.9 ยตs CPU/req) | **32,377**
      (126 MiB / 57.2% CPU ยท 70.6 ยตs CPU/req) | **35,042**
      (133 MiB / 49.7% CPU ยท 56.8 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **19,677**
      (109 MiB / 48.6% CPU ยท 98.8 ยตs CPU/req) | ๐Ÿฅ‡ **22,947**
      (102 MiB / 41.6% CPU ยท 72.5 ยตs CPU/req) | **21,710**
      (84 MiB / 43.9% CPU ยท 80.9 ยตs CPU/req) | **15,563**
      (128 MiB / 56% CPU ยท 144.0 ยตs CPU/req) | **17,121**
      (134 MiB / 50.2% CPU ยท 117.4 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **35,461**
      (137 MiB / 50.3% CPU ยท 56.7 ยตs CPU/req) | *Not possible (no H2 upstream)* | **24,128**
      (82 MiB / 43.3% CPU ยท 71.8 ยตs CPU/req) | **23,550**
      (125 MiB / 58.6% CPU ยท 99.5 ยตs CPU/req) | **30,984**
      (139 MiB / 50% CPU ยท 64.6 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **24,465**
      (151 MiB / 48% CPU ยท 78.5 ยตs CPU/req) | *Not possible (no H2 upstream)* | **22,261**
      (84 MiB / 44.6% CPU ยท 80.2 ยตs CPU/req) | **17,405**
      (125 MiB / 57.7% CPU ยท 132.7 ยตs CPU/req) | **22,072**
      (147 MiB / 47.4% CPU ยท 86.0 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **18,149**
      (146 MiB / 52.4% CPU ยท 115.5 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **9,550**
      (130 MiB / 54.6% CPU ยท 228.8 ยตs CPU/req) | **15,733**
      (166 MiB / 49.3% CPU ยท 125.2 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **36,632**
      (147 MiB / 52.6% CPU ยท 57.4 ยตs CPU/req) | **28,526**
      (78 MiB / 44.9% CPU ยท 63.0 ยตs CPU/req) | **34,975**
      (64 MiB / 45.4% CPU ยท 52.0 ยตs CPU/req) | **20,275**
      (116 MiB / 64.2% CPU ยท 126.6 ยตs CPU/req) | **32,231**
      (125 MiB / 50.7% CPU ยท 62.9 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **27,860**
      (143 MiB / 50.8% CPU ยท 73.0 ยตs CPU/req) | **22,457**
      (95 MiB / 45.5% CPU ยท 81.1 ยตs CPU/req) | **26,956**
      (70 MiB / 45.1% CPU ยท 66.9 ยตs CPU/req) | **17,954**
      (119 MiB / 60.2% CPU ยท 134.2 ยตs CPU/req) | **24,772**
      (132 MiB / 51.7% CPU ยท 83.4 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **68,356**
      (148 MiB / 40.2% CPU ยท 23.5 ยตs CPU/req) | *Not possible (no H2 upstream)* | **35,625**
      (66 MiB / 46.5% CPU ยท 52.2 ยตs CPU/req) | **25,150**
      (116 MiB / 62.2% CPU ยท 98.9 ยตs CPU/req) | **44,979**
      (131 MiB / 48.9% CPU ยท 43.5 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **53,290**
      (149 MiB / 40.9% CPU ยท 30.7 ยตs CPU/req) | *Not possible (no H2 upstream)* | **28,317**
      (67 MiB / 46.3% CPU ยท 65.4 ยตs CPU/req) | **23,506**
      (117 MiB / 60.6% CPU ยท 103.2 ยตs CPU/req) | **36,595**
      (132 MiB / 47.6% CPU ยท 52.0 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **34,025**
      (187 MiB / 49% CPU ยท 57.6 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **21,067**
      (119 MiB / 52.3% CPU ยท 99.3 ยตs CPU/req) | **31,150**
      (162 MiB / 47.2% CPU ยท 60.6 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **32,176**
      (146 MiB / 52.6% CPU ยท 65.4 ยตs CPU/req) | **24,820**
      (100 MiB / 43.8% CPU ยท 70.5 ยตs CPU/req) | **28,818**
      (82 MiB / 45.7% CPU ยท 63.4 ยตs CPU/req) | **18,805**
      (128 MiB / 62.6% CPU ยท 133.2 ยตs CPU/req) | **28,031**
      (131 MiB / 50.7% CPU ยท 72.3 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **37,010**
      (153 MiB / 48.5% CPU ยท 52.4 ยตs CPU/req) | **32,273**
      (107 MiB / 41.6% CPU ยท 51.5 ยตs CPU/req) | **35,974**
      (83 MiB / 43.7% CPU ยท 48.6 ยตs CPU/req) | **27,671**
      (127 MiB / 54.8% CPU ยท 79.3 ยตs CPU/req) | **33,660**
      (135 MiB / 48.4% CPU ยท 57.5 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **57,068**
      (159 MiB / 41.7% CPU ยท 29.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **27,957**
      (81 MiB / 46% CPU ยท 65.8 ยตs CPU/req) | **23,395**
      (125 MiB / 60.6% CPU ยท 103.6 ยตs CPU/req) | **37,460**
      (133 MiB / 49% CPU ยท 52.3 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **47,294**
      (168 MiB / 41.3% CPU ยท 34.9 ยตs CPU/req) | *Not possible (no H2 upstream)* | **26,102**
      (81 MiB / 45.3% CPU ยท 69.5 ยตs CPU/req) | **21,911**
      (125 MiB / 59.8% CPU ยท 109.1 ยตs CPU/req) | **31,896**
      (140 MiB / 47.4% CPU ยท 59.5 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **26,262**
      (193 MiB / 49.7% CPU ยท 75.7 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **13,400**
      (128 MiB / 55.5% CPU ยท 165.8 ยตs CPU/req) | **23,056**
      (168 MiB / 47.8% CPU ยท 82.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **27,227**
      (157 MiB / 53.2% CPU ยท 78.2 ยตs CPU/req) | **30,960**
      (107 MiB / 31.4% CPU ยท 40.6 ยตs CPU/req) | ๐Ÿฅ‡ **33,254**
      (88 MiB / 35.8% CPU ยท 43.1 ยตs CPU/req) | **13,361**
      (131 MiB / 54% CPU ยท 161.6 ยตs CPU/req) | **21,286**
      (201 MiB / 50.1% CPU ยท 94.1 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **14,890**
      (161 MiB / 53.2% CPU ยท 142.9 ยตs CPU/req) | **16,983**
      (110 MiB / 33.7% CPU ยท 79.5 ยตs CPU/req) | ๐Ÿฅ‡ **18,883**
      (89 MiB / 36.4% CPU ยท 77.0 ยตs CPU/req) | **7,950**
      (132 MiB / 55.7% CPU ยท 280.2 ยตs CPU/req) | **11,768**
      (208 MiB / 51.9% CPU ยท 176.5 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท plain | ๐Ÿฅ‡ **47,599**
      (185 MiB / 55% CPU ยท 46.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **46,086**
      (88 MiB / 31.7% CPU ยท 27.5 ยตs CPU/req) | **28,244**
      (132 MiB / 48% CPU ยท 67.9 ยตs CPU/req) | **40,712**
      (218 MiB / 48.2% CPU ยท 47.4 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **19,990**
      (157 MiB / 52.2% CPU ยท 104.4 ยตs CPU/req) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **20,129**
      (88 MiB / 36% CPU ยท 71.6 ยตs CPU/req) | **9,707**
      (132 MiB / 58.6% CPU ยท 241.3 ยตs CPU/req) | **16,272**
      (203 MiB / 49.2% CPU ยท 121.0 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **16,696**
      (151 MiB / 50% CPU ยท 119.9 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **6,059**
      (132 MiB / 56% CPU ยท 369.7 ยตs CPU/req) | **12,891**
      (205 MiB / 49.2% CPU ยท 152.8 ยตs CPU/req) | ### MITM (TWP only) -Same Clientร—Origin wires with interception on (`compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205)). **Lite** = no-op handlers (unchanged-lite finish). **Full** = append-only header mutation (harness: one probe header each way; product: generic append-only relay via `MitmCompressedRelayHelper`). nginx/HAProxy/Envoy/YARP cannot MITM. **LiteรทReverse** / **FullรทReverse** vs bare reverse (**same job / comparison-group shard**). Completion gate: Lite โ‰ฅ **0.25ร—** and Full โ‰ฅ **0.25ร—** reverse sustain @ c=64 (median of 3 GHA runs); reverse TWP รท closest peer โ‰ฅ **0.50ร—**. +Same Clientร—Origin wires with interception on (`compare-product` [37210516555](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210516555)). **Lite** = no-op handlers (unchanged-lite finish). **Full** = append-only header mutation (harness: one probe header each way; product: generic append-only relay via `MitmCompressedRelayHelper`). nginx/HAProxy/Envoy/YARP cannot MITM. **LiteรทReverse** / **FullรทReverse** vs bare reverse (**same job / comparison-group shard**). Completion gate: Lite โ‰ฅ **0.25ร—** and Full โ‰ฅ **0.25ร—** reverse sustain @ c=64 (median of 3 GHA runs); reverse TWP รท closest peer โ‰ฅ **0.50ร—**. **v1 append-only relay (2026-08-27):** Pre-fix H2โ†’H2 FullรทReverse was **0.13โ€“0.16ร—** ([32960766249](https://github.com/justcoding121/titanium-web-proxy/actions/runs/32960766249)). Post-fix @ `df172718`: H2 plainโ†’H2 plain Full **0.77โ€“0.79ร—**, H3โ†’H1 Full **0.91โ€“0.93ร—**, all MITM arms โ‰ฅ **0.70ร—** on median of [33041445371](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33041445371), [33055267086](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055267086), [33055272140](https://github.com/justcoding121/titanium-web-proxy/actions/runs/33055272140). @@ -286,107 +297,107 @@ Same Clientร—Origin wires with interception on (`compare-product` [37138944205]( | Client | Origin | Lite sustain | Full sustain | LiteรทReverse | FullรทReverse | |---|---|---:|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | **33,259**
      (92 MiB / 50.4% CPU) | **32,587**
      (89 MiB / 49.7% CPU) | **1.02ร—** | **1ร—** | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | **24,374**
      (110 MiB / 50.7% CPU) | **24,526**
      (110 MiB / 50.5% CPU) | **0.98ร—** | **0.99ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท plain | **78,913**
      (135 MiB / 51% CPU) | **77,344**
      (137 MiB / 51.6% CPU) | **0.98ร—** | **0.96ร—** | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | **69,934**
      (149 MiB / 49% CPU) | **67,540**
      (157 MiB / 49.6% CPU) | **0.99ร—** | **0.96ร—** | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **49,997**
      (174 MiB / 56.3% CPU) | **51,671**
      (171 MiB / 55.8% CPU) | **0.93ร—** | **0.96ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **37,625**
      (115 MiB / 49.8% CPU) | **36,499**
      (116 MiB / 49.1% CPU) | **1ร—** | **0.97ร—** | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **20,555**
      (115 MiB / 49.2% CPU) | **19,875**
      (115 MiB / 49% CPU) | **1ร—** | **0.97ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | **53,451**
      (145 MiB / 50.7% CPU) | **51,888**
      (147 MiB / 50.6% CPU) | **1ร—** | **0.97ร—** | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **46,958**
      (153 MiB / 48.9% CPU) | **46,309**
      (154 MiB / 49.6% CPU) | **1ร—** | **0.98ร—** | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | **17,442**
      (153 MiB / 52.6% CPU) | **16,947**
      (152 MiB / 52.9% CPU) | **0.95ร—** | **0.92ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท plain | **37,304**
      (121 MiB / 53.8% CPU) | **35,995**
      (124 MiB / 53.7% CPU) | **0.97ร—** | **0.94ร—** | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | **52,626**
      (136 MiB / 46.2% CPU) | **51,109**
      (134 MiB / 46.6% CPU) | **0.98ร—** | **0.95ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท plain | **70,046**
      (95 MiB / 43.8% CPU) | **64,950**
      (94 MiB / 42.7% CPU) | **0.75ร—** | **0.7ร—** | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | **48,692**
      (97 MiB / 40.1% CPU) | **46,169**
      (96 MiB / 39.9% CPU) | **0.83ร—** | **0.79ร—** | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | **28,077**
      (144 MiB / 50.8% CPU) | **27,749**
      (145 MiB / 51.3% CPU) | **0.98ร—** | **0.97ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | **33,799**
      (118 MiB / 53.1% CPU) | **33,370**
      (119 MiB / 53.1% CPU) | **0.97ร—** | **0.96ร—** | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **26,984**
      (122 MiB / 51.6% CPU) | **25,959**
      (128 MiB / 51.2% CPU) | **0.99ร—** | **0.95ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **63,878**
      (109 MiB / 37.2% CPU) | **60,327**
      (113 MiB / 36.8% CPU) | **0.76ร—** | **0.72ร—** | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **83,024**
      (111 MiB / 35.7% CPU) | **80,237**
      (112 MiB / 35.3% CPU) | **0.78ร—** | **0.76ร—** | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **26,796**
      (155 MiB / 50.8% CPU) | **26,187**
      (152 MiB / 50.9% CPU) | **1.01ร—** | **0.99ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **20,453**
      (140 MiB / 51.4% CPU) | **19,695**
      (143 MiB / 50.5% CPU) | **0.95ร—** | **0.92ร—** | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **24,865**
      (157 MiB / 49.6% CPU) | **23,742**
      (158 MiB / 49% CPU) | **1ร—** | **0.95ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **29,174**
      (157 MiB / 53.8% CPU) | **28,145**
      (159 MiB / 53.5% CPU) | **1ร—** | **0.96ร—** | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **24,698**
      (153 MiB / 51.1% CPU) | **24,065**
      (152 MiB / 50.3% CPU) | **0.98ร—** | **0.95ร—** | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **37,404**
      (201 MiB / 52.5% CPU) | **38,997**
      (206 MiB / 53.1% CPU) | **0.89ร—** | **0.92ร—** | +| HTTP/1 ยท plain | HTTP/1 ยท plain | **31,196**
      (91 MiB / 49.8% CPU ยท 63.9 ยตs CPU/req) | **30,622**
      (92 MiB / 49.3% CPU ยท 64.4 ยตs CPU/req) | **0.99ร—** | **0.98ร—** | +| HTTP/1 ยท plain | HTTP/1 ยท TLS | **44,825**
      (108 MiB / 46.4% CPU ยท 41.4 ยตs CPU/req) | **44,084**
      (114 MiB / 46% CPU ยท 41.7 ยตs CPU/req) | **1ร—** | **0.98ร—** | +| HTTP/1 ยท plain | HTTP/2 ยท plain | **58,818**
      (125 MiB / 52.7% CPU ยท 35.9 ยตs CPU/req) | **56,959**
      (134 MiB / 53.3% CPU ยท 37.5 ยตs CPU/req) | **0.98ร—** | **0.94ร—** | +| HTTP/1 ยท plain | HTTP/2 ยท TLS | **58,159**
      (147 MiB / 49.8% CPU ยท 34.2 ยตs CPU/req) | **57,510**
      (157 MiB / 49.6% CPU ยท 34.5 ยตs CPU/req) | **0.96ร—** | **0.95ร—** | +| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **33,518**
      (148 MiB / 55.3% CPU ยท 66.0 ยตs CPU/req) | **35,182**
      (146 MiB / 55.4% CPU ยท 62.9 ยตs CPU/req) | **0.97ร—** | **1.01ร—** | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **39,529**
      (113 MiB / 48% CPU ยท 48.6 ยตs CPU/req) | **38,574**
      (113 MiB / 47.6% CPU ยท 49.4 ยตs CPU/req) | **0.98ร—** | **0.95ร—** | +| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **19,874**
      (115 MiB / 49.1% CPU ยท 98.8 ยตs CPU/req) | **19,276**
      (114 MiB / 49.1% CPU ยท 101.9 ยตs CPU/req) | **1.01ร—** | **0.98ร—** | +| HTTP/1 ยท TLS | HTTP/2 ยท plain | **34,414**
      (141 MiB / 52.8% CPU ยท 61.3 ยตs CPU/req) | **32,977**
      (141 MiB / 53% CPU ยท 64.2 ยตs CPU/req) | **0.97ร—** | **0.93ร—** | +| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **23,969**
      (165 MiB / 49.1% CPU ยท 81.9 ยตs CPU/req) | **23,259**
      (160 MiB / 49.1% CPU ยท 84.5 ยตs CPU/req) | **0.98ร—** | **0.95ร—** | +| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | **18,005**
      (154 MiB / 52% CPU ยท 115.5 ยตs CPU/req) | **16,894**
      (142 MiB / 53.1% CPU ยท 125.7 ยตs CPU/req) | **0.99ร—** | **0.93ร—** | +| HTTP/2 ยท plain | HTTP/1 ยท plain | **35,085**
      (142 MiB / 53.8% CPU ยท 61.3 ยตs CPU/req) | **34,932**
      (144 MiB / 53.7% CPU ยท 61.5 ยตs CPU/req) | **0.96ร—** | **0.95ร—** | +| HTTP/2 ยท plain | HTTP/1 ยท TLS | **27,257**
      (147 MiB / 52% CPU ยท 76.3 ยตs CPU/req) | **26,616**
      (153 MiB / 51.9% CPU ยท 78.0 ยตs CPU/req) | **0.98ร—** | **0.96ร—** | +| HTTP/2 ยท plain | HTTP/2 ยท plain | **59,650**
      (148 MiB / 45.6% CPU ยท 30.6 ยตs CPU/req) | **57,308**
      (149 MiB / 44.9% CPU ยท 31.4 ยตs CPU/req) | **0.87ร—** | **0.84ร—** | +| HTTP/2 ยท plain | HTTP/2 ยท TLS | **46,667**
      (150 MiB / 44.6% CPU ยท 38.2 ยตs CPU/req) | **45,069**
      (165 MiB / 44.5% CPU ยท 39.5 ยตs CPU/req) | **0.88ร—** | **0.85ร—** | +| HTTP/2 ยท plain | HTTP/3 ยท QUIC | **34,316**
      (177 MiB / 50.2% CPU ยท 58.5 ยตs CPU/req) | **33,710**
      (178 MiB / 50% CPU ยท 59.4 ยตs CPU/req) | **1.01ร—** | **0.99ร—** | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | **31,906**
      (147 MiB / 53.6% CPU ยท 67.3 ยตs CPU/req) | **30,787**
      (147 MiB / 53.1% CPU ยท 69.0 ยตs CPU/req) | **0.99ร—** | **0.96ร—** | +| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **35,377**
      (158 MiB / 49.6% CPU ยท 56.0 ยตs CPU/req) | **35,136**
      (151 MiB / 49.4% CPU ยท 56.3 ยตs CPU/req) | **0.96ร—** | **0.95ร—** | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **50,844**
      (163 MiB / 45.9% CPU ยท 36.1 ยตs CPU/req) | **48,505**
      (154 MiB / 45.8% CPU ยท 37.8 ยตs CPU/req) | **0.89ร—** | **0.85ร—** | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **41,140**
      (168 MiB / 44.3% CPU ยท 43.1 ยตs CPU/req) | **40,144**
      (165 MiB / 44.4% CPU ยท 44.2 ยตs CPU/req) | **0.87ร—** | **0.85ร—** | +| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **25,613**
      (199 MiB / 49.2% CPU ยท 76.9 ยตs CPU/req) | **25,243**
      (190 MiB / 49.6% CPU ยท 78.5 ยตs CPU/req) | **0.98ร—** | **0.96ร—** | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **26,000**
      (158 MiB / 54% CPU ยท 83.1 ยตs CPU/req) | **25,657**
      (153 MiB / 54.3% CPU ยท 84.7 ยตs CPU/req) | **0.95ร—** | **0.94ร—** | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **14,382**
      (164 MiB / 53.4% CPU ยท 148.5 ยตs CPU/req) | **13,988**
      (162 MiB / 53.2% CPU ยท 152.1 ยตs CPU/req) | **0.97ร—** | **0.94ร—** | +| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **45,075**
      (185 MiB / 55.8% CPU ยท 49.5 ยตs CPU/req) | **45,689**
      (188 MiB / 55.1% CPU ยท 48.2 ยตs CPU/req) | **0.95ร—** | **0.96ร—** | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **19,839**
      (155 MiB / 53.3% CPU ยท 107.5 ยตs CPU/req) | **18,948**
      (160 MiB / 52.6% CPU ยท 111.1 ยตs CPU/req) | **0.99ร—** | **0.95ร—** | +| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **16,001**
      (153 MiB / 52.7% CPU ยท 131.8 ยตs CPU/req) | **15,955**
      (156 MiB / 52.9% CPU ยท 132.6 ยตs CPU/req) | **0.96ร—** | **0.96ร—** | ## macOS โ€” Titanium vs nginx vs HAProxy vs Envoy vs YARP ### Reverse -Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare reverse 5ร—5 @ `0386b2aa` โ€” `compare-product` [37138944205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138944205). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. The RPS workflow installs Homebrew nginx (`http_v3_module`), Homebrew HAProxy with `USE_QUIC` (3.2 source fallback), Envoy (Homebrew bottle or pinned darwin-arm64 1.36.7), Homebrew `libmsquic` (+ `DYLD_*`), and YARP. Use the pinned `macos-15` label, not `macos-latest`. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). +Median of **3 repeats** on `macos-15` (Apple Silicon M1, 3-core / 7 GB). Bare reverse 5ร—5 @ `482f5984` โ€” `compare-product` [37210516555](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210516555). Warmup 2s / measure 8s; concurrency 8, 16, 32, 64. Prefer TWPรทpeer ratios over absolute RPS. **RPS cells** include median RSS / CPU at the peak-RPS step as `
      (MiB / CPU%)`. The RPS workflow installs Homebrew nginx (`http_v3_module`), Homebrew HAProxy with `USE_QUIC` (3.2 source fallback), Envoy (Homebrew bottle or pinned darwin-arm64 1.36.7), Homebrew `libmsquic` (+ `DYLD_*`), and YARP. Use the pinned `macos-15` label, not `macos-latest`. Product 5ร—5 is **~56-byte JSON keep-alive GET**; H2/H3 same-protocol cells are mostly header work with a tiny body (Titanium best case) โ€” see [Why this comparison is fair](#user-content-why-this-comparison-is-fair). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท plain | HTTP/1 ยท plain | **11,350**
      (115 MiB / 19.3% CPU) | **16,390**
      (68 MiB / 15.7% CPU) | ๐Ÿฅ‡ **16,634**
      (83 MiB / 17.7% CPU) | **6,996**
      (112 MiB / 21.6% CPU) | **5,588**
      (159 MiB / 12.1% CPU) | -| HTTP/1 ยท plain | HTTP/1 ยท TLS | **19,968**
      (129 MiB / 24.9% CPU) | ๐Ÿฅ‡ **25,998**
      (78 MiB / 21.8% CPU) | **19,833**
      (88 MiB / 20.1% CPU) | **11,274**
      (114 MiB / 30.5% CPU) | **22,188**
      (164 MiB / 28.3% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **21,519**
      (129 MiB / 20.2% CPU) | *Not possible (no H2 upstream)* | **19,366**
      (84 MiB / 20.1% CPU) | **11,218**
      (111 MiB / 25% CPU) | **11,842**
      (166 MiB / 13.4% CPU) | -| HTTP/1 ยท plain | HTTP/2 ยท TLS | **17,272**
      (169 MiB / 20.6% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **19,290**
      (85 MiB / 22.1% CPU) | **18,595**
      (112 MiB / 44.8% CPU) | **12,441**
      (177 MiB / 14.4% CPU) | -| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **7,979**
      (129 MiB / 15% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **9,001**
      (116 MiB / 27.1% CPU) | ๐Ÿฅ‡ **14,647**
      (163 MiB / 22% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **8,027**
      (125 MiB / 19.2% CPU) | ๐Ÿฅ‡ **17,442**
      (84 MiB / 17.5% CPU) | **10,406**
      (100 MiB / 19.7% CPU) | **15,576**
      (122 MiB / 37.2% CPU) | **9,049**
      (162 MiB / 21.5% CPU) | -| HTTP/1 ยท TLS | HTTP/1 ยท TLS | **12,065**
      (154 MiB / 25.1% CPU) | ๐Ÿฅ‡ **16,714**
      (89 MiB / 17.9% CPU) | **9,055**
      (103 MiB / 17.9% CPU) | **6,018**
      (122 MiB / 20.8% CPU) | **15,945**
      (180 MiB / 12.1% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท plain | **33,147**
      (155 MiB / 40.3% CPU) | *Not possible (no H2 upstream)* | **18,269**
      (101 MiB / 30.7% CPU) | **27,665**
      (121 MiB / 45.4% CPU) | ๐Ÿฅ‡ **45,625**
      (165 MiB / 36.5% CPU) | -| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **11,455**
      (207 MiB / 17.2% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **30,959**
      (101 MiB / 27.9% CPU) | **23,149**
      (120 MiB / 38.3% CPU) | **4,878**
      (223 MiB / 7.6% CPU) | -| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | **6,409**
      (152 MiB / 23.6% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,288**
      (125 MiB / 35.9% CPU) | ๐Ÿฅ‡ **7,959**
      (183 MiB / 22.8% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | **19,856**
      (133 MiB / 20.8% CPU) | ๐Ÿฅ‡ **21,532**
      (70 MiB / 17% CPU) | **7,455**
      (87 MiB / 7.2% CPU) | **9,828**
      (112 MiB / 18.2% CPU) | **11,796**
      (151 MiB / 14.3% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **39,072**
      (134 MiB / 35% CPU) | **22,480**
      (80 MiB / 22.6% CPU) | **37,659**
      (92 MiB / 20.2% CPU) | **15,170**
      (114 MiB / 17.5% CPU) | **36,270**
      (162 MiB / 34.7% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **38,837**
      (115 MiB / 9.8% CPU) | *Not possible (no H2 upstream)* | **35,788**
      (87 MiB / 18.4% CPU) | **20,918**
      (109 MiB / 17.9% CPU) | **34,366**
      (164 MiB / 19.1% CPU) | -| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **20,738**
      (118 MiB / 6.4% CPU) | *Not possible (no H2 upstream)* | **19,404**
      (89 MiB / 18.2% CPU) | **18,552**
      (111 MiB / 26.2% CPU) | **6,645**
      (167 MiB / 7.3% CPU) | -| HTTP/2 ยท plain | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **10,950**
      (139 MiB / 20.9% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **10,452**
      (114 MiB / 23.7% CPU) | **4,648**
      (167 MiB / 9.7% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | **18,702**
      (132 MiB / 19.7% CPU) | **19,621**
      (81 MiB / 21.2% CPU) | ๐Ÿฅ‡ **36,352**
      (101 MiB / 19.4% CPU) | **17,403**
      (121 MiB / 21.3% CPU) | **9,754**
      (154 MiB / 17.5% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **9,044**
      (140 MiB / 20.3% CPU) | ๐Ÿฅ‡ **17,051**
      (86 MiB / 15.6% CPU) | **12,741**
      (104 MiB / 18% CPU) | **8,500**
      (121 MiB / 13.9% CPU) | **4,103**
      (168 MiB / 9.4% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **68,492**
      (130 MiB / 22.1% CPU) | *Not possible (no H2 upstream)* | **27,664**
      (101 MiB / 19.1% CPU) | **19,693**
      (119 MiB / 20.7% CPU) | **28,016**
      (158 MiB / 16.2% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **88,279**
      (136 MiB / 33% CPU) | *Not possible (no H2 upstream)* | **37,474**
      (102 MiB / 28.7% CPU) | **22,960**
      (119 MiB / 25.1% CPU) | **47,514**
      (159 MiB / 42.4% CPU) | -| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **5,481**
      (152 MiB / 11% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | ๐Ÿฅ‡ **8,025**
      (123 MiB / 20% CPU) | **4,994**
      (171 MiB / 8.9% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **8,392**
      (131 MiB / 20.4% CPU) | **0**
      (peak 14,230 ยท 87 MiB / 13.3% CPU) | ๐Ÿฅ‡ **15,556**
      (101 MiB / 20.2% CPU) | **5,735**
      (130 MiB / 32.9% CPU) | **5,035**
      (244 MiB / 16.8% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **12,889**
      (152 MiB / 28.8% CPU) | **0**
      (peak 14,318 ยท 92 MiB / 18.5% CPU) | ๐Ÿฅ‡ **17,962**
      (104 MiB / 22.1% CPU) | **4,688**
      (130 MiB / 27.4% CPU) | **12,974**
      (239 MiB / 33.9% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **15,867**
      (139 MiB / 21.5% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **21,919**
      (102 MiB / 19.7% CPU) | **9,652**
      (125 MiB / 32.5% CPU) | **10,054**
      (267 MiB / 14.1% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **28,390**
      (146 MiB / 24.8% CPU) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **34,002**
      (102 MiB / 20.4% CPU) | **11,891**
      (125 MiB / 28.3% CPU) | **26,452**
      (232 MiB / 28% CPU) | -| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **4,442**
      (138 MiB / 9% CPU) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,144**
      (124 MiB / 38.2% CPU) | ๐Ÿฅ‡ **23,628**
      (226 MiB / 44.2% CPU) | +| HTTP/1 ยท plain | HTTP/1 ยท plain | **7,105**
      (114 MiB / 10.7% CPU ยท 45.3 ยตs CPU/req) | ๐Ÿฅ‡ **17,906**
      (68 MiB / 11.6% CPU ยท 19.4 ยตs CPU/req) | **7,751**
      (91 MiB / 10.3% CPU ยท 40.0 ยตs CPU/req) | **7,226**
      (111 MiB / 24.3% CPU ยท 101.0 ยตs CPU/req) | **9,245**
      (169 MiB / 13.6% CPU ยท 44.1 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/1 ยท TLS | **6,570**
      (126 MiB / 15.5% CPU ยท 70.6 ยตs CPU/req) | **12,385**
      (78 MiB / 16.3% CPU ยท 39.5 ยตs CPU/req) | ๐Ÿฅ‡ **13,060**
      (96 MiB / 21.3% CPU ยท 49.0 ยตs CPU/req) | **9,394**
      (113 MiB / 29% CPU ยท 92.6 ยตs CPU/req) | **5,214**
      (203 MiB / 13.6% CPU ยท 78.4 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท plain | ๐Ÿฅ‡ **45,183**
      (144 MiB / 26.9% CPU ยท 17.9 ยตs CPU/req) | *Not possible (no H2 upstream)* | **34,431**
      (104 MiB / 30.4% CPU ยท 26.5 ยตs CPU/req) | **34,198**
      (111 MiB / 34.5% CPU ยท 30.3 ยตs CPU/req) | **36,843**
      (163 MiB / 21.4% CPU ยท 17.4 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/2 ยท TLS | **17,960**
      (164 MiB / 17.5% CPU ยท 29.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **13,000**
      (99 MiB / 13.4% CPU ยท 30.8 ยตs CPU/req) | **10,582**
      (113 MiB / 19.7% CPU ยท 55.9 ยตs CPU/req) | ๐Ÿฅ‡ **18,772**
      (167 MiB / 16.3% CPU ยท 26.1 ยตs CPU/req) | +| HTTP/1 ยท plain | HTTP/3 ยท QUIC | **11,126**
      (133 MiB / 23.9% CPU ยท 64.5 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **3,729**
      (117 MiB / 18.5% CPU ยท 148.9 ยตs CPU/req) | ๐Ÿฅ‡ **11,631**
      (163 MiB / 19% CPU ยท 49.1 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **6,420**
      (128 MiB / 11.6% CPU ยท 54.2 ยตs CPU/req) | ๐Ÿฅ‡ **18,160**
      (85 MiB / 15.8% CPU ยท 26.0 ยตs CPU/req) | **15,854**
      (108 MiB / 19.8% CPU ยท 37.4 ยตs CPU/req) | **8,061**
      (122 MiB / 20.2% CPU ยท 75.1 ยตs CPU/req) | **10,810**
      (162 MiB / 20.4% CPU ยท 56.6 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/1 ยท TLS | ๐Ÿฅ‡ **7,991**
      (153 MiB / 20.5% CPU ยท 76.8 ยตs CPU/req) | **7,624**
      (89 MiB / 11.2% CPU ยท 43.9 ยตs CPU/req) | **6,204**
      (109 MiB / 13.3% CPU ยท 64.2 ยตs CPU/req) | **6,747**
      (123 MiB / 25% CPU ยท 111.1 ยตs CPU/req) | **3,900**
      (224 MiB / 11.9% CPU ยท 91.3 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท plain | **11,822**
      (143 MiB / 11% CPU ยท 27.8 ยตs CPU/req) | *Not possible (no H2 upstream)* | **9,010**
      (112 MiB / 14.4% CPU ยท 47.9 ยตs CPU/req) | **22,406**
      (120 MiB / 27.8% CPU ยท 37.2 ยตs CPU/req) | ๐Ÿฅ‡ **27,679**
      (172 MiB / 22.6% CPU ยท 24.5 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/2 ยท TLS | **28,926**
      (197 MiB / 35.6% CPU ยท 36.9 ยตs CPU/req) | *Not possible (no H2 upstream)* | **23,046**
      (131 MiB / 37.1% CPU ยท 48.3 ยตs CPU/req) | **24,438**
      (121 MiB / 48% CPU ยท 58.9 ยตs CPU/req) | ๐Ÿฅ‡ **34,479**
      (171 MiB / 36.4% CPU ยท 31.7 ยตs CPU/req) | +| HTTP/1 ยท TLS | HTTP/3 ยท QUIC | ๐Ÿฅ‡ **5,392**
      (161 MiB / 13.9% CPU ยท 77.2 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **4,701**
      (125 MiB / 20.7% CPU ยท 132.3 ยตs CPU/req) | **5,267**
      (182 MiB / 10.7% CPU ยท 60.9 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | **22,542**
      (173 MiB / 22.7% CPU ยท 30.2 ยตs CPU/req) | **18,571**
      (70 MiB / 14.2% CPU ยท 23.0 ยตs CPU/req) | ๐Ÿฅ‡ **28,814**
      (98 MiB / 26.2% CPU ยท 27.3 ยตs CPU/req) | **15,206**
      (112 MiB / 34.8% CPU ยท 68.6 ยตs CPU/req) | **18,839**
      (153 MiB / 24.5% CPU ยท 39.0 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท TLS | ๐Ÿฅ‡ **15,111**
      (200 MiB / 20.4% CPU ยท 40.5 ยตs CPU/req) | **7,653**
      (81 MiB / 7.8% CPU ยท 30.7 ยตs CPU/req) | **8,962**
      (97 MiB / 12.7% CPU ยท 42.6 ยตs CPU/req) | **11,431**
      (114 MiB / 26% CPU ยท 68.2 ยตs CPU/req) | **9,622**
      (164 MiB / 22.4% CPU ยท 69.7 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท plain | **19,941**
      (220 MiB / 9.9% CPU ยท 14.9 ยตs CPU/req) | *Not possible (no H2 upstream)* | **11,895**
      (101 MiB / 12.7% CPU ยท 32.0 ยตs CPU/req) | **21,864**
      (110 MiB / 24.9% CPU ยท 34.1 ยตs CPU/req) | ๐Ÿฅ‡ **23,982**
      (163 MiB / 17.6% CPU ยท 22.0 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/2 ยท TLS | ๐Ÿฅ‡ **31,236**
      (240 MiB / 14.2% CPU ยท 13.6 ยตs CPU/req) | *Not possible (no H2 upstream)* | **25,521**
      (104 MiB / 24.2% CPU ยท 28.4 ยตs CPU/req) | **17,483**
      (111 MiB / 18% CPU ยท 30.8 ยตs CPU/req) | **17,015**
      (171 MiB / 10.6% CPU ยท 18.7 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/3 ยท QUIC | **7,398**
      (206 MiB / 13.8% CPU ยท 55.9 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **12,701**
      (116 MiB / 31.4% CPU ยท 74.2 ยตs CPU/req) | ๐Ÿฅ‡ **20,539**
      (167 MiB / 26.4% CPU ยท 38.6 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | **19,283**
      (181 MiB / 23.9% CPU ยท 37.2 ยตs CPU/req) | **19,033**
      (83 MiB / 22.6% CPU ยท 35.7 ยตs CPU/req) | ๐Ÿฅ‡ **25,232**
      (118 MiB / 33.6% CPU ยท 39.9 ยตs CPU/req) | **17,737**
      (121 MiB / 46.6% CPU ยท 78.9 ยตs CPU/req) | **12,200**
      (159 MiB / 21.8% CPU ยท 53.5 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท TLS | **6,993**
      (216 MiB / 14.6% CPU ยท 62.6 ยตs CPU/req) | **7,862**
      (88 MiB / 9.2% CPU ยท 35.3 ยตs CPU/req) | ๐Ÿฅ‡ **15,084**
      (110 MiB / 24.3% CPU ยท 48.4 ยตs CPU/req) | **8,194**
      (122 MiB / 19.7% CPU ยท 72.0 ยตs CPU/req) | **11,945**
      (166 MiB / 20.8% CPU ยท 52.1 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **9,534**
      (238 MiB / 7.7% CPU ยท 24.4 ยตs CPU/req) | *Not possible (no H2 upstream)* | **12,695**
      (111 MiB / 20.9% CPU ยท 49.5 ยตs CPU/req) | **7,376**
      (119 MiB / 16.5% CPU ยท 67.2 ยตs CPU/req) | ๐Ÿฅ‡ **16,833**
      (248 MiB / 13.4% CPU ยท 23.8 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **12,624**
      (265 MiB / 8.1% CPU ยท 19.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | ๐Ÿฅ‡ **29,595**
      (121 MiB / 27.6% CPU ยท 27.9 ยตs CPU/req) | **11,210**
      (120 MiB / 14.8% CPU ยท 39.5 ยตs CPU/req) | **6,121**
      (184 MiB / 6.8% CPU ยท 33.4 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/3 ยท QUIC | **5,549**
      (208 MiB / 13.5% CPU ยท 72.9 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | **7,792**
      (123 MiB / 23.3% CPU ยท 89.8 ยตs CPU/req) | ๐Ÿฅ‡ **10,099**
      (172 MiB / 17.1% CPU ยท 50.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **6,298**
      (145 MiB / 23.7% CPU ยท 112.8 ยตs CPU/req) | ๐Ÿฅ‡ **12,690**
      (86 MiB / 12.2% CPU ยท 28.8 ยตs CPU/req) | **10,825**
      (104 MiB / 15% CPU ยท 41.5 ยตs CPU/req) | **4,599**
      (126 MiB / 24.3% CPU ยท 158.5 ยตs CPU/req) | **3,324**
      (252 MiB / 14.2% CPU ยท 127.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **10,902**
      (162 MiB / 26.8% CPU ยท 73.9 ยตs CPU/req) | *Not measured* | **9,558**
      (108 MiB / 19.9% CPU ยท 62.4 ยตs CPU/req) | **4,522**
      (126 MiB / 28% CPU ยท 185.9 ยตs CPU/req) | **3,907**
      (267 MiB / 20.6% CPU ยท 158.5 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท plain | **5,108**
      (132 MiB / 16.1% CPU ยท 94.6 ยตs CPU/req) | *Not possible (no H2 upstream)* | **5,022**
      (108 MiB / 11% CPU ยท 65.9 ยตs CPU/req) | **4,249**
      (124 MiB / 25% CPU ยท 176.8 ยตs CPU/req) | ๐Ÿฅ‡ **5,792**
      (266 MiB / 14.8% CPU ยท 76.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **7,887**
      (142 MiB / 17.7% CPU ยท 67.2 ยตs CPU/req) | *Not possible (no H2 upstream)* | **7,318**
      (107 MiB / 14.8% CPU ยท 60.7 ยตs CPU/req) | **5,970**
      (122 MiB / 28.2% CPU ยท 141.7 ยตs CPU/req) | ๐Ÿฅ‡ **8,025**
      (275 MiB / 17.7% CPU ยท 66.3 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/3 ยท QUIC | **4,485**
      (137 MiB / 17% CPU ยท 113.9 ยตs CPU/req) | *Not possible (no H3 upstream)* | *Not possible (no H3 upstream)* | ๐Ÿฅ‡ **6,850**
      (122 MiB / 34.9% CPU ยท 152.7 ยตs CPU/req) | **3,931**
      (253 MiB / 20.4% CPU ยท 156.0 ยตs CPU/req) | ## Editions (CLI / Plus / Intercept) **Note:** `twp-reverse-http1` and other library rows use Core with **probe-tuned** settings (no logging, no Via header, probe-warmed certs). Edition rows use `titanium run -c twp.yaml` **product defaults** โ€” prefer the รทbaseline ratio column over absolute RPS. Inspector GUI is not spawnable in the harness; session-path overhead is `twp-cli-intercept-http1` (route `RequestHeaderSet` transform). Pre-origin Plus middleware (CIDR/WAF/JWT/rate-limit/cache) runs on H1 terminate-lite without `SessionEventArgs`; a cache hit skips the origin. JWT caches successful bearer validations. CORS only adds response headers on the way out, so it stays on terminate-lite. Circuit breaker and idempotent retry have to see the request or the status code, so they stay on the session path and should land near the intercept row. Maintainer gate thresholds live under [Maintainer notes](#user-content-maintainer-notes). -Median of **3** repeats. Linux rows in this paste were re-measured @ `8cf8b770` (Actions [37192183576](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37192183576)). Other edition rows stay @ `0386b2aa`. Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. +Median of **3** repeats on `ubuntu-latest`. Every row in this table was re-measured @ `482f5984` (Actions [37210543774](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210543774)). Warmup 2s / measure 8s; concurrency 8โ€“64; sustain = median peak RPS among SLO-pass steps @ **c=64**. **RPS cells** show sustain; `` holds peak (when higher) plus `(MiB / CPU%)`. The Gate column is that script's floor. | Arm | Linux | Linรท | Gate | |---|---:|---:|---| -| `twp-cli-reverse-http1` vs library | **48,005**
      (172 MiB / 48.5% CPU) | **1.04ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-reverse-http1-tls` vs library TLS | **35,819**
      (203 MiB / 48.7% CPU) | **1.02ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-reverse-http1-route` vs CLI | **47,759**
      (174 MiB / 48.4% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-base-http1` vs CLI | **47,791**
      (174 MiB / 48.5% CPU) | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-http1` (cold) vs CLI | **122,554**
      (169 MiB / 48.0% CPU) | **1.80ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-intercept-http1` vs CLI | **35,573**
      (183 MiB / 52.1% CPU) | **0.74ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-waf-http1` vs CLI | **46,484**
      (179 MiB / 48.9% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cidr-http1` vs CLI | **46,646**
      (178 MiB / 48.9% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-jwt-http1` vs CLI | **43,613**
      (199 MiB / 48.7% CPU) | **0.91ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-ratelimit-http1` vs CLI | **46,620**
      (177 MiB / 49.1% CPU) | **0.97ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-resilience-http1` vs CLI | **47,710**
      (181 MiB / 48.4% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-discovery-file-http1` vs CLI | **47,630**
      (180 MiB / 48.5% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-metrics-scrape-http1` vs CLI | **48,257**
      (183 MiB / 48.5% CPU) | **1.01ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cache-hit-http1` vs cache cold | **120,058**
      (169 MiB / 47.3% CPU) | **0.98ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-cors-http1` vs CLI | **31,203**
      (169 MiB / 51.0% CPU) | **0.92ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-circuit-http1` vs CLI | **45,001**
      (243 MiB / 50.3% CPU) | **0.86ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-plus-retry-http1` vs CLI | **30,430**
      (177 MiB / 50.2% CPU) | **0.81ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-static-http1` vs CLI | **80,449**
      (175 MiB / 50.3% CPU) | **1.68ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-logging-http1` vs CLI | **47,905**
      (175 MiB / 48.5% CPU) | **1.00ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-lb-leasttime-http1` vs route | **43,887**
      (197 MiB / 50.7% CPU) | **0.92ร—** | โ‰ฅ **0.50ร—** | -| `twp-cli-dialect-twp-http1` vs CLI | **47,368**
      (168 MiB / 48.3% CPU) | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-reverse-http1` vs library | **33,245**
      (164 MiB / 49.9% CPU ยท 60.0 ยตs CPU/req) | **1.05ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-reverse-http1-tls` vs library TLS | **24,014**
      (195 MiB / 50.4% CPU ยท 84.0 ยตs CPU/req) | **1.03ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-reverse-http1-route` vs CLI | **63,157**
      (169 MiB / 49.0% CPU ยท 31.0 ยตs CPU/req) | **0.96ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-base-http1` vs CLI | **48,080**
      (170 MiB / 49.4% CPU ยท 41.1 ยตs CPU/req) | **0.99ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-http1` (cold) vs CLI | **58,197**
      (168 MiB / 47.7% CPU ยท 32.8 ยตs CPU/req) | **1.74ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-intercept-http1` vs CLI | **24,191**
      (176 MiB / 53.0% CPU ยท 87.6 ยตs CPU/req) | **0.73ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-waf-http1` vs CLI | **32,992**
      (169 MiB / 50.4% CPU ยท 61.1 ยตs CPU/req) | **0.97ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cidr-http1` vs CLI | **64,841**
      (235 MiB / 48.2% CPU ยท 29.8 ยตs CPU/req) | **1.01ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-jwt-http1` vs CLI | **30,337**
      (192 MiB / 50.4% CPU ยท 66.4 ยตs CPU/req) | **0.91ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-ratelimit-http1` vs CLI | **62,173**
      (235 MiB / 48.0% CPU ยท 30.9 ยตs CPU/req) | **0.97ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-resilience-http1` vs CLI | **55,849**
      (240 MiB / 48.8% CPU ยท 34.9 ยตs CPU/req) | **1.03ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-discovery-file-http1` vs CLI | **37,627**
      (169 MiB / 49.4% CPU ยท 52.5 ยตs CPU/req) | **1.01ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-metrics-scrape-http1` vs CLI | **33,316**
      (174 MiB / 49.7% CPU ยท 59.7 ยตs CPU/req) | **1.01ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cache-hit-http1` vs cache cold | **59,678**
      (171 MiB / 49.1% CPU ยท 32.9 ยตs CPU/req) | **1.03ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-cors-http1` vs CLI | **31,610**
      (166 MiB / 50.9% CPU ยท 64.4 ยตs CPU/req) | **0.98ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-circuit-http1` vs CLI | **51,728**
      (175 MiB / 49.6% CPU ยท 38.4 ยตs CPU/req) | **0.82ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-plus-retry-http1` vs CLI | **26,733**
      (174 MiB / 50.5% CPU ยท 75.5 ยตs CPU/req) | **0.82ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-static-http1` vs CLI | **111,716**
      (166 MiB / 48.1% CPU ยท 17.2 ยตs CPU/req) | **1.74ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-logging-http1` vs CLI | **33,316**
      (163 MiB / 50.2% CPU ยท 60.3 ยตs CPU/req) | **1.00ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-lb-leasttime-http1` vs route | **31,121**
      (193 MiB / 51.8% CPU ยท 66.6 ยตs CPU/req) | **0.94ร—** | โ‰ฅ **0.50ร—** | +| `twp-cli-dialect-twp-http1` vs CLI | **33,668**
      (161 MiB / 49.7% CPU ยท 59.0 ยตs CPU/req) | **1.02ร—** | โ‰ฅ **0.50ร—** | `validate-edition-gates.ps1` floors are **0.50ร—**. Each รท column uses the two arms from the same job. Circuit breaker and idempotent retry stay on the session path, so a ratio near intercept is expected. Laptop smoke ratios stay on [Performance Local Lab โ€” Editions](Performance-Local-Lab#user-content-editions-cli--plus-stress). ## Heavier reverse workloads -Same runners and harness as the tiny-GET tables, but with larger bodies, POST, lossy links, TLS cost, and architecture-sensitive paths (slow consumer / early response / duplex). **PUT with the same body is the same proxy work as POST; DELETE with no body matches GET** โ€” only POST is published. Bodies/POST/lossy stay **half-duplex**. Laptop numbers are on [Performance Local Lab](Performance-Local-Lab#user-content-architecture-sensitive). How maintainers refresh these tables (modes, shards, paste scripts) is under [Maintainer notes](#user-content-maintainer-notes). **Larger-body check:** 64 / 256 KiB H2 TLSโ†’H2 TLS is where body copy dominates headers โ€” ratios vs YARP are in the tables below (@ `0386b2aa`), unlike the tiny-GET H2โ†”H2 medals above. +Same runners and harness as the tiny-GET tables, but with larger bodies, POST, lossy links, TLS cost, and architecture-sensitive paths (slow consumer / early response / duplex). **PUT with the same body is the same proxy work as POST; DELETE with no body matches GET** โ€” only POST is published. Bodies/POST/lossy stay **half-duplex**. Laptop numbers are on [Performance Local Lab](Performance-Local-Lab#user-content-architecture-sensitive). How maintainers refresh these tables (modes, shards, paste scripts) is under [Maintainer notes](#user-content-maintainer-notes). **Larger-body check:** 64 / 256 KiB H2 TLSโ†’H2 TLS is where body copy dominates headers โ€” ratios vs YARP are in the tables below (@ `482f5984`), unlike the tiny-GET H2โ†”H2 medals above. Those cells also show goodput (MiB/s) and ยตs CPU/req, and the medal on those rows follows goodput. Lossy link = **userspace** delay/drop shim (not kernel `netem`): TCP gets per-buffer delay + occasional whole-connection stalls (honest head-of-line for multiplexed HTTP/2); UDP is **loss% only** (no per-datagram delay) + drops (QUIC / MsQuic-safe). Lossy tables publish HTTP/1, HTTP/2, and HTTP/3. ### Windows โ€” heavier reverse GET (64 KiB / 256 KiB) -Median of **3** repeats on `windows-latest` @ `0386b2aa`. Source: Actions [37139047700](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139047700) (`compare-bodies`). Warmup 2s / measure 8s. **RPS cells** include `(MiB / CPU%)` footprints. +Median of **3** repeats on `windows-latest` @ `482f5984`. Source: Actions [37210521790](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210521790) (`compare-bodies`). Warmup 2s / measure 8s. **RPS cells** include `(MiB / CPU%)` footprints. *Not possible:* **HAProxy** and **Envoy** columns are omitted (no official Windows port). @@ -405,79 +416,80 @@ Median of **3** repeats on `windows-latest` @ `0386b2aa`. Source: Actions [37139 + | Body | Client | Origin | TWP | nginx | YARP | |---|---|---|---:|---:|---:| -| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **9,209**
      (89 MiB / 44.8% CPU) | **571**
      (141 MiB / 24.4% CPU) | **7,978**
      (137 MiB / 51.3% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **7,957**
      (170 MiB / 46.5% CPU) | **555**
      (142 MiB / 24.8% CPU) | **6,580**
      (134 MiB / 50.6% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,140**
      (129 MiB / 37.4% CPU) | *Not possible (no QUIC)* | **3,984**
      (179 MiB / 48.8% CPU) | -| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,846**
      (126 MiB / 47.1% CPU) | **173**
      (142 MiB / 24.8% CPU) | **2,689**
      (135 MiB / 47.9% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,398**
      (155 MiB / 34.0% CPU) | **306**
      (142 MiB / 24.8% CPU) | **3,753**
      (135 MiB / 41.6% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **1,140**
      (113 MiB / 38.8% CPU) | *Not possible (no QUIC)* | **1,096**
      (177 MiB / 44.3% CPU) | -| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **20,936**
      (163 MiB / 35.6% CPU) | **4,959**
      (127 MiB / 24.6% CPU) | ๐Ÿฅ‡ **23,518**
      (106 MiB / 44.2% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **10,843**
      (118 MiB / 39.3% CPU) | *Not possible* | **7,247**
      (142 MiB / 51.0% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **7,380**
      (122 MiB / 39.0% CPU) | *Not possible* | **5,547**
      (142 MiB / 48.2% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,985**
      (124 MiB / 40.0% CPU) | *Not possible* | **3,755**
      (198 MiB / 48.2% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **4,000**
      (143 MiB / 40.5% CPU) | *Not possible (no QUIC)* | **3,361**
      (193 MiB / 49.5% CPU) | -| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **3,240**
      (149 MiB / 31.6% CPU) | **842**
      (127 MiB / 24.4% CPU) | **2,740**
      (124 MiB / 37.5% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **2,591**
      (152 MiB / 37.1% CPU) | *Not possible* | **1,874**
      (167 MiB / 46.7% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,868**
      (129 MiB / 35.2% CPU) | *Not possible* | **1,495**
      (148 MiB / 43.8% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **870**
      (148 MiB / 42.1% CPU) | *Not possible* | ๐Ÿฅ‡ **990**
      (198 MiB / 44.5% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,030**
      (145 MiB / 39.2% CPU) | *Not possible (no QUIC)* | **975**
      (195 MiB / 44.0% CPU) | +| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **9,157**
      (89 MiB / 46.1% CPU ยท 572 MiB/s ยท 201.2 ยตs CPU/req) | **619**
      (143 MiB / 24.8% CPU ยท 39 MiB/s ยท 1599.1 ยตs CPU/req) | **7,890**
      (134 MiB / 46.9% CPU ยท 493 MiB/s ยท 237.7 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **8,611**
      (217 MiB / 51.0% CPU ยท 538 MiB/s ยท 237.1 ยตs CPU/req) | **584**
      (142 MiB / 24.8% CPU ยท 36 MiB/s ยท 1698.4 ยตs CPU/req) | **8,259**
      (126 MiB / 51.6% CPU ยท 516 MiB/s ยท 250.0 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,524**
      (139 MiB / 45.4% CPU ยท 283 MiB/s ยท 401.3 ยตs CPU/req) | *Not possible (no QUIC)* | **2,379**
      (183 MiB / 51.3% CPU ยท 149 MiB/s ยท 862.8 ยตs CPU/req) | +| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,857**
      (120 MiB / 46.5% CPU ยท 714 MiB/s ยท 650.8 ยตs CPU/req) | **166**
      (142 MiB / 24.8% CPU ยท 41 MiB/s ยท 5987.9 ยตs CPU/req) | **2,616**
      (136 MiB / 48.7% CPU ยท 654 MiB/s ยท 744.5 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **3,083**
      (203 MiB / 48.3% CPU ยท 771 MiB/s ยท 626.7 ยตs CPU/req) | **220**
      (143 MiB / 24.9% CPU ยท 55 MiB/s ยท 4517.2 ยตs CPU/req) | ๐Ÿฅ‡ **3,226**
      (124 MiB / 46.7% CPU ยท 807 MiB/s ยท 579.0 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **1,995**
      (118 MiB / 42.1% CPU ยท 499 MiB/s ยท 843.9 ยตs CPU/req) | *Not possible (no QUIC)* | **1,469**
      (182 MiB / 42.0% CPU ยท 367 MiB/s ยท 1143.3 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **12,018**
      (191 MiB / 44.0% CPU ยท 751 MiB/s ยท 146.5 ยตs CPU/req) | **1,999**
      (127 MiB / 24.7% CPU ยท 125 MiB/s ยท 493.9 ยตs CPU/req) | **10,459**
      (121 MiB / 50.7% CPU ยท 654 MiB/s ยท 194.0 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **8,329**
      (169 MiB / 45.9% CPU ยท 521 MiB/s ยท 220.6 ยตs CPU/req) | *Not possible* | **7,536**
      (131 MiB / 52.7% CPU ยท 471 MiB/s ยท 279.5 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **6,344**
      (168 MiB / 41.4% CPU ยท 396 MiB/s ยท 261.1 ยตs CPU/req) | *Not possible* | **5,415**
      (132 MiB / 49.2% CPU ยท 338 MiB/s ยท 363.1 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **4,650**
      (135 MiB / 43.7% CPU ยท 291 MiB/s ยท 376.0 ยตs CPU/req) | *Not possible* | **2,836**
      (186 MiB / 52.7% CPU ยท 177 MiB/s ยท 743.1 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **3,290**
      (146 MiB / 46.4% CPU ยท 206 MiB/s ยท 564.1 ยตs CPU/req) | *Not possible (no QUIC)* | **1,821**
      (196 MiB / 50.2% CPU ยท 114 MiB/s ยท 1101.7 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,300**
      (176 MiB / 34.6% CPU ยท 1,075 MiB/s ยท 322.1 ยตs CPU/req) | **654**
      (127 MiB / 24.9% CPU ยท 163 MiB/s ยท 1522.6 ยตs CPU/req) | **3,909**
      (116 MiB / 42.2% CPU ยท 977 MiB/s ยท 432.3 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | **3,668**
      (203 MiB / 44.6% CPU ยท 917 MiB/s ยท 486.0 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **3,797**
      (170 MiB / 44.1% CPU ยท 949 MiB/s ยท 464.1 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,082**
      (200 MiB / 42.7% CPU ยท 521 MiB/s ยท 819.4 ยตs CPU/req) | *Not possible* | **1,768**
      (146 MiB / 42.8% CPU ยท 442 MiB/s ยท 968.1 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **870**
      (145 MiB / 49.1% CPU ยท 217 MiB/s ยท 2258.0 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **1,338**
      (194 MiB / 48.6% CPU ยท 334 MiB/s ยท 1452.8 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **771**
      (peak 1,607 ยท 122 MiB / 43.9% CPU ยท 193 MiB/s ยท 2280.8 ยตs CPU/req) | *Not possible (no QUIC)* | ๐Ÿฅ‡ **1,514**
      (186 MiB / 46.1% CPU ยท 379 MiB/s ยท 1216.8 ยตs CPU/req) | nginx/Windows collapses on large reverse bodies in this harness; treat as same-OS only. Prefer the ratio columns; absolute RPS swings by VM. ### Linux โ€” heavier reverse GET (64 KiB / 256 KiB) -Median of **3** repeats @ `0386b2aa`. Source: Actions [37139047700](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139047700) (`compare-bodies`). Warmup 2s / measure 8s. +Median of **3** repeats @ `482f5984`. Source: Actions [37210521790](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210521790) (`compare-bodies`). Warmup 2s / measure 8s. | Body | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---|---:|---:|---:|---:|---:| -| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **11,499**
      (122 MiB / 40.7% CPU) | **8,186**
      (100 MiB / 45.2% CPU) | ๐Ÿฅ‡ **12,944**
      (85 MiB / 36.9% CPU) | **9,632**
      (132 MiB / 46.7% CPU) | **8,511**
      (166 MiB / 48.1% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **8,703**
      (241 MiB / 39.1% CPU) | **3,316**
      (103 MiB / 13.0% CPU) | ๐Ÿฅ‡ **9,029**
      (84 MiB / 23.7% CPU) | **7,535**
      (142 MiB / 23.1% CPU) | **7,121**
      (165 MiB / 46.5% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **11,644**
      (204 MiB / 42.2% CPU) | **2,882**
      (104 MiB / 22.4% CPU) | **9,769**
      (92 MiB / 32.1% CPU) | **1**
      (136 MiB / 0.1% CPU) | **8,428**
      (244 MiB / 51.0% CPU) | -| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **3,869**
      (131 MiB / 31.6% CPU) | **2,488**
      (102 MiB / 49.3% CPU) | ๐Ÿฅ‡ **4,108**
      (83 MiB / 28.1% CPU) | **3,659**
      (145 MiB / 32.0% CPU) | **3,083**
      (171 MiB / 41.9% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **3,156**
      (219 MiB / 31.0% CPU) | **1,239**
      (103 MiB / 19.9% CPU) | ๐Ÿฅ‡ **3,594**
      (84 MiB / 19.1% CPU) | **3,430**
      (166 MiB / 20.3% CPU) | **3,030**
      (162 MiB / 37.9% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,130**
      (163 MiB / 42.8% CPU) | **637**
      (113 MiB / 23.2% CPU) | **1,893**
      (88 MiB / 29.3% CPU) | **1,144**
      (143 MiB / 19.5% CPU) | **1,770**
      (227 MiB / 48.2% CPU) | -| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **10,441**
      (231 MiB / 42.2% CPU) | **2,853**
      (80 MiB / 18.1% CPU) | **7,618**
      (70 MiB / 24.4% CPU) | **6,838**
      (133 MiB / 24.1% CPU) | **8,649**
      (153 MiB / 45.9% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **5,820**
      (157 MiB / 36.5% CPU) | *Not possible* | **2,095**
      (87 MiB / 24.6% CPU) | **4,340**
      (144 MiB / 22.2% CPU) | **4,490**
      (184 MiB / 45.6% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **6,264**
      (159 MiB / 36.9% CPU) | *Not possible* | **2,627**
      (82 MiB / 24.4% CPU) | **4,673**
      (147 MiB / 23.0% CPU) | **5,327**
      (180 MiB / 44.0% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,724**
      (169 MiB / 44.7% CPU) | *Not possible* | **2,088**
      (90 MiB / 35.4% CPU) | **25**
      (143 MiB / 0.4% CPU) | **3,029**
      (231 MiB / 48.8% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **4,041**
      (193 MiB / 44.7% CPU) | **1,460**
      (peak 1,481 ยท 111 MiB / 22.3% CPU) | **3,083**
      (96 MiB / 31.6% CPU) | **6**
      (138 MiB / 0.2% CPU) | **3,194**
      (253 MiB / 49.5% CPU) | -| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **2,897**
      (201 MiB / 34.9% CPU) | **901**
      (79 MiB / 18.9% CPU) | **2,775**
      (69 MiB / 22.4% CPU) | **2,922**
      (158 MiB / 21.8% CPU) | ๐Ÿฅ‡ **2,931**
      (154 MiB / 38.8% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **1,734**
      (168 MiB / 32.4% CPU) | *Not possible* | **609**
      (95 MiB / 24.6% CPU) | **1,694**
      (171 MiB / 22.7% CPU) | **1,261**
      (187 MiB / 42.5% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,452**
      (177 MiB / 33.1% CPU) | *Not possible* | **1,139**
      (89 MiB / 23.9% CPU) | **1,840**
      (164 MiB / 22.7% CPU) | **2,181**
      (194 MiB / 38.9% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **812**
      (187 MiB / 50.7% CPU) | *Not possible* | **644**
      (93 MiB / 37.9% CPU) | **634**
      (162 MiB / 22.3% CPU) | ๐Ÿฅ‡ **906**
      (227 MiB / 46.5% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **2,006**
      (188 MiB / 41.3% CPU) | **746**
      (129 MiB / 18.4% CPU) | **1,786**
      (96 MiB / 28.6% CPU) | **1,312**
      (142 MiB / 20.4% CPU) | **1,693**
      (241 MiB / 46.8% CPU) | +| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **12,766**
      (127 MiB / 41.8% CPU ยท 798 MiB/s ยท 130.9 ยตs CPU/req) | **8,147**
      (100 MiB / 49.4% CPU ยท 509 MiB/s ยท 242.6 ยตs CPU/req) | **12,654**
      (88 MiB / 39.8% CPU ยท 791 MiB/s ยท 125.9 ยตs CPU/req) | **11,049**
      (131 MiB / 43.7% CPU ยท 691 MiB/s ยท 158.2 ยตs CPU/req) | **9,584**
      (166 MiB / 46.8% CPU ยท 599 MiB/s ยท 195.2 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **14,876**
      (245 MiB / 42.9% CPU ยท 930 MiB/s ยท 115.3 ยตs CPU/req) | **9,240**
      (102 MiB / 48.3% CPU ยท 578 MiB/s ยท 209.2 ยตs CPU/req) | **12,108**
      (87 MiB / 45.4% CPU ยท 757 MiB/s ยท 150.1 ยตs CPU/req) | ๐Ÿฅ‡ **15,828**
      (134 MiB / 44.0% CPU ยท 989 MiB/s ยท 111.2 ยตs CPU/req) | **12,621**
      (157 MiB / 45.8% CPU ยท 789 MiB/s ยท 145.1 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **5,606**
      (203 MiB / 45.3% CPU ยท 350 MiB/s ยท 323.3 ยตs CPU/req) | **2,589**
      (116 MiB / 28.7% CPU ยท 162 MiB/s ยท 443.7 ยตs CPU/req) | ๐Ÿฅ‡ **5,814**
      (94 MiB / 36.3% CPU ยท 363 MiB/s ยท 250.0 ยตs CPU/req) | **4,457**
      (138 MiB / 51.2% CPU ยท 279 MiB/s ยท 459.6 ยตs CPU/req) | **3,738**
      (237 MiB / 51.5% CPU ยท 234 MiB/s ยท 551.6 ยตs CPU/req) | +| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **3,855**
      (123 MiB / 31.7% CPU ยท 964 MiB/s ยท 328.6 ยตs CPU/req) | **2,448**
      (100 MiB / 48.4% CPU ยท 612 MiB/s ยท 790.1 ยตs CPU/req) | ๐Ÿฅ‡ **4,131**
      (87 MiB / 27.6% CPU ยท 1,033 MiB/s ยท 267.7 ยตs CPU/req) | **3,563**
      (145 MiB / 31.7% CPU ยท 891 MiB/s ยท 356.3 ยตs CPU/req) | **3,031**
      (166 MiB / 41.9% CPU ยท 758 MiB/s ยท 552.4 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **2,052**
      (210 MiB / 41.7% CPU ยท 513 MiB/s ยท 812.5 ยตs CPU/req) | **1,546**
      (99 MiB / 50.5% CPU ยท 386 MiB/s ยท 1308.1 ยตs CPU/req) | **2,086**
      (87 MiB / 41.5% CPU ยท 522 MiB/s ยท 795.0 ยตs CPU/req) | ๐Ÿฅ‡ **2,412**
      (152 MiB / 36.1% CPU ยท 603 MiB/s ยท 599.1 ยตs CPU/req) | **1,813**
      (164 MiB / 46.1% CPU ยท 453 MiB/s ยท 1016.8 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,600**
      (174 MiB / 49.6% CPU ยท 400 MiB/s ยท 1241.4 ยตs CPU/req) | **746**
      (116 MiB / 28.5% CPU ยท 187 MiB/s ยท 1526.1 ยตs CPU/req) | ๐Ÿฅ‡ **1,932**
      (95 MiB / 34.8% CPU ยท 483 MiB/s ยท 720.7 ยตs CPU/req) | **1,634**
      (154 MiB / 45.3% CPU ยท 408 MiB/s ยท 1109.7 ยตs CPU/req) | **1,284**
      (238 MiB / 51.7% CPU ยท 321 MiB/s ยท 1611.7 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **11,786**
      (262 MiB / 43.3% CPU ยท 737 MiB/s ยท 147.0 ยตs CPU/req) | **6,946**
      (78 MiB / 50.4% CPU ยท 434 MiB/s ยท 290.5 ยตs CPU/req) | **10,740**
      (72 MiB / 44.3% CPU ยท 671 MiB/s ยท 165.1 ยตs CPU/req) | **10,789**
      (124 MiB / 47.5% CPU ยท 674 MiB/s ยท 176.0 ยตs CPU/req) | **10,911**
      (150 MiB / 45.0% CPU ยท 682 MiB/s ยท 164.9 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **8,816**
      (208 MiB / 36.5% CPU ยท 551 MiB/s ยท 165.4 ยตs CPU/req) | *Not possible* | **7,247**
      (91 MiB / 42.0% CPU ยท 453 MiB/s ยท 231.9 ยตs CPU/req) | **8,232**
      (136 MiB / 43.0% CPU ยท 515 MiB/s ยท 209.1 ยตs CPU/req) | **6,821**
      (195 MiB / 48.0% CPU ยท 426 MiB/s ยท 281.4 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **5,010**
      (206 MiB / 41.6% CPU ยท 313 MiB/s ยท 331.8 ยตs CPU/req) | *Not possible* | **4,209**
      (91 MiB / 44.7% CPU ยท 263 MiB/s ยท 424.4 ยตs CPU/req) | **4,765**
      (141 MiB / 43.9% CPU ยท 298 MiB/s ยท 368.1 ยตs CPU/req) | **3,614**
      (180 MiB / 46.7% CPU ยท 226 MiB/s ยท 517.1 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **3,400**
      (181 MiB / 45.5% CPU ยท 213 MiB/s ยท 535.0 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **3,644**
      (99 MiB / 40.4% CPU ยท 228 MiB/s ยท 443.2 ยตs CPU/req) | **2,851**
      (145 MiB / 49.2% CPU ยท 178 MiB/s ยท 690.5 ยตs CPU/req) | **2,478**
      (248 MiB / 49.2% CPU ยท 155 MiB/s ยท 794.2 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **3,756**
      (214 MiB / 45.7% CPU ยท 235 MiB/s ยท 486.5 ยตs CPU/req) | **2,286**
      (117 MiB / 38.5% CPU ยท 143 MiB/s ยท 673.3 ยตs CPU/req) | ๐Ÿฅ‡ **3,924**
      (95 MiB / 41.1% CPU ยท 245 MiB/s ยท 419.5 ยตs CPU/req) | **3,254**
      (138 MiB / 49.6% CPU ยท 203 MiB/s ยท 609.5 ยตs CPU/req) | **2,762**
      (248 MiB / 51.5% CPU ยท 173 MiB/s ยท 745.3 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **3,834**
      (205 MiB / 34.4% CPU ยท 959 MiB/s ยท 359.0 ยตs CPU/req) | **2,872**
      (78 MiB / 47.4% CPU ยท 718 MiB/s ยท 660.1 ยตs CPU/req) | **4,154**
      (72 MiB / 30.5% CPU ยท 1,038 MiB/s ยท 293.3 ยตs CPU/req) | ๐Ÿฅ‡ **4,238**
      (143 MiB / 30.0% CPU ยท 1,060 MiB/s ยท 283.0 ยตs CPU/req) | **3,745**
      (151 MiB / 36.0% CPU ยท 936 MiB/s ยท 384.0 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **2,137**
      (227 MiB / 37.9% CPU ยท 534 MiB/s ยท 708.9 ยตs CPU/req) | *Not possible* | **1,978**
      (99 MiB / 39.2% CPU ยท 494 MiB/s ยท 792.4 ยตs CPU/req) | **2,052**
      (146 MiB / 37.5% CPU ยท 513 MiB/s ยท 731.7 ยตs CPU/req) | **1,553**
      (206 MiB / 45.2% CPU ยท 388 MiB/s ยท 1165.8 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,368**
      (272 MiB / 40.3% CPU ยท 342 MiB/s ยท 1179.3 ยตs CPU/req) | *Not possible* | **1,282**
      (97 MiB / 40.1% CPU ยท 321 MiB/s ยท 1249.4 ยตs CPU/req) | **1,351**
      (143 MiB / 37.9% CPU ยท 338 MiB/s ยท 1121.2 ยตs CPU/req) | **963**
      (181 MiB / 44.2% CPU ยท 241 MiB/s ยท 1836.8 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **1,125**
      (204 MiB / 55.9% CPU ยท 281 MiB/s ยท 1988.4 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **2,020**
      (105 MiB / 33.9% CPU ยท 505 MiB/s ยท 671.7 ยตs CPU/req) | **1,706**
      (156 MiB / 41.3% CPU ยท 426 MiB/s ยท 968.0 ยตs CPU/req) | **1,328**
      (238 MiB / 47.5% CPU ยท 332 MiB/s ยท 1431.3 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **985**
      (192 MiB / 49.7% CPU ยท 246 MiB/s ยท 2018.7 ยตs CPU/req) | **605**
      (117 MiB / 38.6% CPU ยท 151 MiB/s ยท 2550.8 ยตs CPU/req) | ๐Ÿฅ‡ **1,140**
      (98 MiB / 39.8% CPU ยท 285 MiB/s ยท 1396.2 ยตs CPU/req) | **1,081**
      (153 MiB / 44.0% CPU ยท 270 MiB/s ยท 1628.9 ยตs CPU/req) | **796**
      (256 MiB / 49.9% CPU ยท 199 MiB/s ยท 2507.3 ยตs CPU/req) | Prefer the ratio columns; absolute RPS swings by VM. ### macOS โ€” heavier reverse GET (64 KiB / 256 KiB) -Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `0386b2aa`. Source: Actions [37139047700](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139047700) (`compare-bodies`). Warmup 2s / measure 8s. +Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `482f5984`. Source: Actions [37210521790](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210521790) (`compare-bodies`). Warmup 2s / measure 8s. | Body | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---|---:|---:|---:|---:|---:| -| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **4,260**
      (191 MiB / 22.4% CPU) | ๐Ÿฅ‡ **6,206**
      (85 MiB / 20.4% CPU) | **5,074**
      (102 MiB / 22.4% CPU) | **5,600**
      (131 MiB / 32.1% CPU) | **3,732**
      (172 MiB / 25.8% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **7,770**
      (429 MiB / 35.6% CPU) | **7,476**
      (85 MiB / 24.4% CPU) | **7,184**
      (102 MiB / 27.2% CPU) | ๐Ÿฅ‡ **8,761**
      (145 MiB / 27.6% CPU) | **5,857**
      (176 MiB / 41.9% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,449**
      (273 MiB / 32.2% CPU) | **0**
      (peak 2,351 ยท 113 MiB / 27.4% CPU) | **1,407**
      (103 MiB / 30.8% CPU) | **1,359**
      (140 MiB / 31.3% CPU) | **1,428**
      (428 MiB / 32.5% CPU) | -| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **1,699**
      (222 MiB / 21.9% CPU) | **1,737**
      (85 MiB / 19.0% CPU) | ๐Ÿฅ‡ **2,400**
      (101 MiB / 29.3% CPU) | **1,971**
      (154 MiB / 25.9% CPU) | **1,610**
      (186 MiB / 32.6% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **991**
      (417 MiB / 21.5% CPU) | ๐Ÿฅ‡ **1,960**
      (85 MiB / 21.6% CPU) | **1,654**
      (102 MiB / 20.0% CPU) | **1,784**
      (156 MiB / 23.3% CPU) | **1,066**
      (179 MiB / 27.6% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **500**
      (181 MiB / 32.8% CPU) | **331**
      (81 MiB / 14.3% CPU) | ๐Ÿฅ‡ **578**
      (101 MiB / 33.3% CPU) | **358**
      (160 MiB / 31.1% CPU) | **285**
      (450 MiB / 25.5% CPU) | -| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **5,880**
      (419 MiB / 16.0% CPU) | ๐Ÿฅ‡ **9,280**
      (73 MiB / 22.4% CPU) | **8,522**
      (89 MiB / 23.8% CPU) | **6,415**
      (135 MiB / 26.8% CPU) | **8,242**
      (176 MiB / 38.6% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | **4,883**
      (322 MiB / 17.7% CPU) | *Not possible* | **3,716**
      (103 MiB / 19.9% CPU) | **5,955**
      (130 MiB / 27.4% CPU) | ๐Ÿฅ‡ **8,119**
      (246 MiB / 45.1% CPU) | -| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,580**
      (269 MiB / 20.5% CPU) | *Not possible* | **2,177**
      (102 MiB / 19.3% CPU) | **3,459**
      (130 MiB / 23.8% CPU) | **2,472**
      (234 MiB / 22.0% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **1,701**
      (203 MiB / 30.6% CPU) | *Not possible* | **1,615**
      (103 MiB / 32.6% CPU) | **1,207**
      (134 MiB / 41.4% CPU) | ๐Ÿฅ‡ **1,785**
      (467 MiB / 33.9% CPU) | -| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,768**
      (239 MiB / 29.3% CPU) | **0**
      (peak 1,942 ยท 113 MiB / 19.9% CPU) | **1,702**
      (108 MiB / 32.3% CPU) | **996**
      (140 MiB / 35.1% CPU) | **987**
      (389 MiB / 23.9% CPU) | -| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **1,156**
      (385 MiB / 14.6% CPU) | **2,954**
      (72 MiB / 17.4% CPU) | ๐Ÿฅ‡ **2,996**
      (88 MiB / 19.3% CPU) | **2,673**
      (146 MiB / 19.7% CPU) | **1,660**
      (206 MiB / 21.7% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | **1,553**
      (625 MiB / 23.6% CPU) | *Not possible* | **686**
      (114 MiB / 18.1% CPU) | ๐Ÿฅ‡ **1,946**
      (156 MiB / 22.5% CPU) | **1,105**
      (308 MiB / 23.5% CPU) | -| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **961**
      (541 MiB / 23.5% CPU) | *Not possible* | **619**
      (101 MiB / 18.1% CPU) | ๐Ÿฅ‡ **1,271**
      (151 MiB / 24.2% CPU) | **1,030**
      (314 MiB / 28.6% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **310**
      (peak 322 ยท 323 MiB / 26.4% CPU) | *Not possible* | ๐Ÿฅ‡ **379**
      (103 MiB / 29.0% CPU) | **243**
      (126 MiB / 35.3% CPU) | **367**
      (503 MiB / 27.4% CPU) | -| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **543**
      (240 MiB / 31.6% CPU) | **400**
      (peak 466 ยท 83 MiB / 22.2% CPU) | **438**
      (104 MiB / 31.1% CPU) | **294**
      (130 MiB / 37.7% CPU) | **382**
      (442 MiB / 32.1% CPU) | +| 64 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **4,134**
      (177 MiB / 14.9% CPU ยท 258 MiB/s ยท 108.4 ยตs CPU/req) | ๐Ÿฅ‡ **9,185**
      (84 MiB / 21.7% CPU ยท 574 MiB/s ยท 70.9 ยตs CPU/req) | **9,097**
      (120 MiB / 25.8% CPU ยท 569 MiB/s ยท 85.0 ยตs CPU/req) | **7,800**
      (133 MiB / 26.8% CPU ยท 488 MiB/s ยท 103.1 ยตs CPU/req) | **5,900**
      (183 MiB / 27.1% CPU ยท 369 MiB/s ยท 138.1 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **3,149**
      (469 MiB / 26.1% CPU ยท 197 MiB/s ยท 249.0 ยตs CPU/req) | **4,113**
      (87 MiB / 13.3% CPU ยท 257 MiB/s ยท 97.2 ยตs CPU/req) | **4,297**
      (120 MiB / 23.9% CPU ยท 269 MiB/s ยท 167.2 ยตs CPU/req) | ๐Ÿฅ‡ **5,386**
      (135 MiB / 20.3% CPU ยท 337 MiB/s ยท 113.0 ยตs CPU/req) | **2,376**
      (171 MiB / 16.5% CPU ยท 149 MiB/s ยท 208.4 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **2,786**
      (278 MiB / 29.7% CPU ยท 174 MiB/s ยท 319.8 ยตs CPU/req) | ๐Ÿฅ‡ **3,796**
      (97 MiB / 28.1% CPU ยท 237 MiB/s ยท 221.9 ยตs CPU/req) | **2,692**
      (129 MiB / 31.3% CPU ยท 168 MiB/s ยท 348.8 ยตs CPU/req) | **2,141**
      (132 MiB / 44.8% CPU ยท 134 MiB/s ยท 627.5 ยตs CPU/req) | **2,136**
      (446 MiB / 37.1% CPU ยท 133 MiB/s ยท 521.2 ยตs CPU/req) | +| 256 KiB | HTTP/1 ยท TLS | HTTP/1 ยท plain | **2,115**
      (215 MiB / 25.1% CPU ยท 529 MiB/s ยท 355.5 ยตs CPU/req) | **1,844**
      (84 MiB / 18.5% CPU ยท 461 MiB/s ยท 301.6 ยตs CPU/req) | ๐Ÿฅ‡ **2,503**
      (117 MiB / 20.9% CPU ยท 626 MiB/s ยท 250.0 ยตs CPU/req) | **2,018**
      (154 MiB / 21.3% CPU ยท 504 MiB/s ยท 316.9 ยตs CPU/req) | **1,527**
      (183 MiB / 27.6% CPU ยท 382 MiB/s ยท 541.4 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/1 ยท plain | **1,053**
      (447 MiB / 19.2% CPU ยท 263 MiB/s ยท 548.5 ยตs CPU/req) | **1,725**
      (85 MiB / 22.6% CPU ยท 431 MiB/s ยท 393.0 ยตs CPU/req) | **2,034**
      (117 MiB / 28.1% CPU ยท 509 MiB/s ยท 413.9 ยตs CPU/req) | ๐Ÿฅ‡ **2,175**
      (154 MiB / 27.0% CPU ยท 544 MiB/s ยท 372.7 ยตs CPU/req) | **1,353**
      (178 MiB / 31.0% CPU ยท 338 MiB/s ยท 687.2 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **508**
      (190 MiB / 32.1% CPU ยท 127 MiB/s ยท 1893.7 ยตs CPU/req) | ๐Ÿฅ‡ **841**
      (95 MiB / 28.5% CPU ยท 210 MiB/s ยท 1017.0 ยตs CPU/req) | **515**
      (peak 521 ยท 106 MiB / 29.0% CPU ยท 129 MiB/s ยท 1691.0 ยตs CPU/req) | **530**
      (159 MiB / 51.6% CPU ยท 132 MiB/s ยท 2920.7 ยตs CPU/req) | **256**
      (211 MiB / 29.4% CPU ยท 64 MiB/s ยท 3446.0 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **9,299**
      (455 MiB / 22.4% CPU ยท 581 MiB/s ยท 72.4 ยตs CPU/req) | **7,686**
      (73 MiB / 12.3% CPU ยท 480 MiB/s ยท 47.9 ยตs CPU/req) | **8,105**
      (105 MiB / 20.6% CPU ยท 507 MiB/s ยท 76.4 ยตs CPU/req) | **7,881**
      (135 MiB / 21.8% CPU ยท 493 MiB/s ยท 82.8 ยตs CPU/req) | **7,453**
      (187 MiB / 21.8% CPU ยท 466 MiB/s ยท 87.7 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **10,070**
      (394 MiB / 36.2% CPU ยท 629 MiB/s ยท 107.9 ยตs CPU/req) | *Not possible* | **6,370**
      (127 MiB / 34.9% CPU ยท 398 MiB/s ยท 164.5 ยตs CPU/req) | **6,797**
      (126 MiB / 34.7% CPU ยท 425 MiB/s ยท 153.1 ยตs CPU/req) | **7,814**
      (272 MiB / 47.4% CPU ยท 488 MiB/s ยท 181.9 ยตs CPU/req) | +| 64 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **2,166**
      (386 MiB / 15.5% CPU ยท 135 MiB/s ยท 214.1 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **3,441**
      (123 MiB / 26.2% CPU ยท 215 MiB/s ยท 228.1 ยตs CPU/req) | **3,436**
      (126 MiB / 24.7% CPU ยท 215 MiB/s ยท 215.7 ยตs CPU/req) | **2,101**
      (253 MiB / 20.7% CPU ยท 131 MiB/s ยท 296.1 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,658**
      (222 MiB / 27.7% CPU ยท 104 MiB/s ยท 501.4 ยตs CPU/req) | *Not possible* | **1,338**
      (126 MiB / 27.5% CPU ยท 84 MiB/s ยท 616.2 ยตs CPU/req) | **1,558**
      (130 MiB / 45.1% CPU ยท 97 MiB/s ยท 868.5 ยตs CPU/req) | **1,003**
      (479 MiB / 24.2% CPU ยท 63 MiB/s ยท 722.3 ยตs CPU/req) | +| 64 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **1,232**
      (233 MiB / 29.2% CPU ยท 77 MiB/s ยท 710.0 ยตs CPU/req) | ๐Ÿฅ‡ **1,653**
      (101 MiB / 22.6% CPU ยท 103 MiB/s ยท 409.2 ยตs CPU/req) | **1,147**
      (129 MiB / 31.4% CPU ยท 72 MiB/s ยท 822.2 ยตs CPU/req) | **972**
      (133 MiB / 45.9% CPU ยท 61 MiB/s ยท 1416.6 ยตs CPU/req) | **550**
      (383 MiB / 25.7% CPU ยท 34 MiB/s ยท 1403.4 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท plain | HTTP/1 ยท plain | **1,124**
      (424 MiB / 12.3% CPU ยท 281 MiB/s ยท 329.5 ยตs CPU/req) | **2,862**
      (73 MiB / 17.9% CPU ยท 716 MiB/s ยท 187.6 ยตs CPU/req) | **2,852**
      (104 MiB / 24.2% CPU ยท 713 MiB/s ยท 254.1 ยตs CPU/req) | ๐Ÿฅ‡ **3,088**
      (145 MiB / 21.9% CPU ยท 772 MiB/s ยท 212.4 ยตs CPU/req) | **2,097**
      (210 MiB / 23.4% CPU ยท 524 MiB/s ยท 335.0 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท plain | **1,355**
      (667 MiB / 28.7% CPU ยท 339 MiB/s ยท 634.9 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **1,522**
      (142 MiB / 29.7% CPU ยท 380 MiB/s ยท 585.4 ยตs CPU/req) | **1,015**
      (136 MiB / 22.8% CPU ยท 254 MiB/s ยท 673.2 ยตs CPU/req) | **1,080**
      (317 MiB / 29.9% CPU ยท 270 MiB/s ยท 830.7 ยตs CPU/req) | +| 256 KiB | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **1,070**
      (640 MiB / 26.4% CPU ยท 267 MiB/s ยท 741.4 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **1,205**
      (131 MiB / 31.0% CPU ยท 301 MiB/s ยท 770.9 ยตs CPU/req) | **1,028**
      (130 MiB / 24.9% CPU ยท 257 MiB/s ยท 725.9 ยตs CPU/req) | **919**
      (277 MiB / 31.2% CPU ยท 230 MiB/s ยท 1018.9 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **412**
      (499 MiB / 33.5% CPU ยท 103 MiB/s ยท 2440.4 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **528**
      (peak 652 ยท 122 MiB / 32.4% CPU ยท 132 MiB/s ยท 1841.0 ยตs CPU/req) | **412**
      (139 MiB / 50.1% CPU ยท 103 MiB/s ยท 3652.9 ยตs CPU/req) | **429**
      (558 MiB / 34.8% CPU ยท 107 MiB/s ยท 2432.3 ยตs CPU/req) | +| 256 KiB | HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **300**
      (peak 316 ยท 216 MiB / 32.6% CPU ยท 75 MiB/s ยท 3270.5 ยตs CPU/req) | ๐Ÿฅ‡ **502**
      (peak 532 ยท 98 MiB / 26.1% CPU ยท 125 MiB/s ยท 1561.3 ยตs CPU/req) | **277**
      (peak 357 ยท 107 MiB / 25.9% CPU ยท 69 MiB/s ยท 2806.3 ยตs CPU/req) | **485**
      (152 MiB / 47.4% CPU ยท 121 MiB/s ยท 2931.4 ยตs CPU/req) | **295**
      (425 MiB / 30.5% CPU ยท 74 MiB/s ยท 3101.7 ยตs CPU/req) | ### Windows โ€” POST 64 KiB request + 64 KiB response -Median of **3** repeats on `windows-latest` @ `0386b2aa`. Source: Actions [37139137891](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139137891) (`compare-post`). +Median of **3** repeats on `windows-latest` @ `482f5984`. Source: Actions [37210524513](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210524513) (`compare-post`). *Not possible:* **HAProxy** and **Envoy** columns are omitted (no official Windows port). @@ -496,110 +508,111 @@ Median of **3** repeats on `windows-latest` @ `0386b2aa`. Source: Actions [37139 + | Client | Origin | TWP | nginx | YARP | |---|---|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **5,871**
      (101 MiB / 44.4% CPU) | **362**
      (142 MiB / 24.6% CPU) | **4,143**
      (136 MiB / 57.0% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,111**
      (180 MiB / 49.4% CPU) | **361**
      (144 MiB / 24.8% CPU) | **3,522**
      (142 MiB / 51.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,081**
      (178 MiB / 40.7% CPU) | *Not possible (no QUIC)* | **2,081**
      (210 MiB / 50.8% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **6,696**
      (193 MiB / 45.7% CPU) | **2,165**
      (131 MiB / 24.8% CPU) | **6,333**
      (125 MiB / 51.9% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **5,203**
      (118 MiB / 36.4% CPU) | *Not possible* | **3,438**
      (146 MiB / 43.9% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **5,556**
      (127 MiB / 37.9% CPU) | *Not possible* | **4,138**
      (145 MiB / 48.2% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,162**
      (176 MiB / 42.6% CPU) | *Not possible* | **1,890**
      (205 MiB / 48.2% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,817**
      (186 MiB / 41.2% CPU) | *Not possible (no QUIC)* | **1,812**
      (218 MiB / 50.6% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **5,918**
      (93 MiB / 44.6% CPU ยท 740 MiB/s ยท 301.5 ยตs CPU/req) | **392**
      (142 MiB / 24.9% CPU ยท 49 MiB/s ยท 2538.8 ยตs CPU/req) | **4,163**
      (138 MiB / 53.9% CPU ยท 520 MiB/s ยท 518.2 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,206**
      (216 MiB / 46.9% CPU ยท 526 MiB/s ยท 446.5 ยตs CPU/req) | **359**
      (147 MiB / 24.4% CPU ยท 45 MiB/s ยท 2722.1 ยตs CPU/req) | **4,053**
      (140 MiB / 47.7% CPU ยท 507 MiB/s ยท 471.0 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,848**
      (202 MiB / 46.7% CPU ยท 356 MiB/s ยท 656.4 ยตs CPU/req) | *Not possible (no QUIC)* | **1,628**
      (218 MiB / 48.1% CPU ยท 203 MiB/s ยท 1180.9 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **8,704**
      (211 MiB / 45.0% CPU ยท 1,088 MiB/s ยท 206.9 ยตs CPU/req) | **3,912**
      (132 MiB / 24.8% CPU ยท 489 MiB/s ยท 253.6 ยตs CPU/req) | **8,145**
      (120 MiB / 48.4% CPU ยท 1,018 MiB/s ยท 237.8 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **4,553**
      (169 MiB / 40.4% CPU ยท 569 MiB/s ยท 355.3 ยตs CPU/req) | *Not possible* | **3,588**
      (142 MiB / 46.4% CPU ยท 448 MiB/s ยท 517.7 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,570**
      (171 MiB / 39.1% CPU ยท 446 MiB/s ยท 437.9 ยตs CPU/req) | *Not possible* | **2,886**
      (157 MiB / 47.5% CPU ยท 361 MiB/s ยท 658.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,889**
      (190 MiB / 44.2% CPU ยท 236 MiB/s ยท 936.7 ยตs CPU/req) | *Not possible* | **1,135**
      (225 MiB / 47.8% CPU ยท 142 MiB/s ยท 1684.2 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,908**
      (192 MiB / 46.7% CPU ยท 239 MiB/s ยท 978.5 ยตs CPU/req) | *Not possible (no QUIC)* | **1,292**
      (219 MiB / 50.7% CPU ยท 161 MiB/s ยท 1570.3 ยตs CPU/req) | TWP leads H2โ†’H1 POST (about **1.1โ€“1.3ร—** YARP) and H3 POST (about **1.0โ€“1.1ร—** YARP). H2 TLSโ†’H2 TLS POST sustain is about **1.2โ€“1.4ร—** YARP. ### Linux โ€” POST 64 KiB request + 64 KiB response -Median of **3** repeats @ `0386b2aa`. Source: Actions [37139137891](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139137891) (`compare-post`). +Median of **3** repeats @ `482f5984`. Source: Actions [37210524513](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210524513) (`compare-post`). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **4,911**
      (131 MiB / 43.0% CPU) | **3,919**
      (100 MiB / 47.8% CPU) | ๐Ÿฅ‡ **5,183**
      (83 MiB / 39.9% CPU) | **5,162**
      (132 MiB / 40.4% CPU) | **3,337**
      (172 MiB / 54.4% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,484**
      (232 MiB / 41.6% CPU) | **2,130**
      (118 MiB / 20.8% CPU) | **2,955**
      (84 MiB / 24.3% CPU) | **3,856**
      (peak 4,235 ยท 130 MiB / 20.9% CPU) | **3,975**
      (166 MiB / 46.9% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **6,094**
      (247 MiB / 41.2% CPU) | **975**
      (116 MiB / 24.8% CPU) | **3,555**
      (90 MiB / 28.5% CPU) | **0**
      (126 MiB) | **5,337**
      (269 MiB / 47.0% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **7,209**
      (229 MiB / 42.9% CPU) | **3,580**
      (97 MiB / 24.9% CPU) | **3,908**
      (68 MiB / 22.9% CPU) | **0**
      (peak 6,582 ยท 133 MiB / 22.4% CPU) | **5,528**
      (159 MiB / 42.7% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **6,411**
      (180 MiB / 34.6% CPU) | *Not possible* | **3,493**
      (88 MiB / 22.9% CPU) | **5,385**
      (143 MiB / 21.2% CPU) | **4,746**
      (178 MiB / 48.1% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **5,677**
      (180 MiB / 37.6% CPU) | *Not possible* | **2,530**
      (88 MiB / 23.4% CPU) | **4,285**
      (147 MiB / 22.2% CPU) | **4,822**
      (175 MiB / 45.9% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,134**
      (226 MiB / 42.5% CPU) | *Not possible* | **1,190**
      (96 MiB / 32.2% CPU) | **0**
      (127 MiB / 0.1% CPU) | **1,812**
      (252 MiB / 47.3% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **3,226**
      (249 MiB / 43.3% CPU) | **612**
      (125 MiB / 24.9% CPU) | **1,969**
      (97 MiB / 25.0% CPU) | **0**
      (127 MiB / 0.1% CPU) | **2,905**
      (266 MiB / 46.7% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **10,424**
      (133 MiB / 39.9% CPU ยท 1,303 MiB/s ยท 153.0 ยตs CPU/req) | **7,771**
      (100 MiB / 48.2% CPU ยท 971 MiB/s ยท 248.1 ยตs CPU/req) | ๐Ÿฅ‡ **11,193**
      (88 MiB / 39.3% CPU ยท 1,399 MiB/s ยท 140.3 ยตs CPU/req) | **10,756**
      (133 MiB / 39.1% CPU ยท 1,344 MiB/s ยท 145.5 ยตs CPU/req) | **6,818**
      (170 MiB / 53.0% CPU ยท 852 MiB/s ยท 310.9 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | **3,766**
      (252 MiB / 47.6% CPU ยท 471 MiB/s ยท 506.1 ยตs CPU/req) | **3,294**
      (106 MiB / 46.1% CPU ยท 412 MiB/s ยท 560.2 ยตs CPU/req) | ๐Ÿฅ‡ **3,941**
      (91 MiB / 44.6% CPU ยท 493 MiB/s ยท 452.4 ยตs CPU/req) | **3,640**
      (peak 4,454 ยท 126 MiB / 42.0% CPU ยท 455 MiB/s ยท 461.1 ยตs CPU/req) | **3,380**
      (169 MiB / 50.2% CPU ยท 423 MiB/s ยท 593.7 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **3,008**
      (244 MiB / 45.2% CPU ยท 376 MiB/s ยท 601.7 ยตs CPU/req) | **968**
      (111 MiB / 42.4% CPU ยท 121 MiB/s ยท 1753.1 ยตs CPU/req) | **2,580**
      (93 MiB / 42.8% CPU ยท 323 MiB/s ยท 664.0 ยตs CPU/req) | **0**
      (130 MiB / 0.3% CPU) | **2,178**
      (248 MiB / 50.3% CPU ยท 272 MiB/s ยท 924.2 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | **5,843**
      (275 MiB / 44.1% CPU ยท 730 MiB/s ยท 302.2 ยตs CPU/req) | **4,768**
      (85 MiB / 45.0% CPU ยท 596 MiB/s ยท 377.3 ยตs CPU/req) | ๐Ÿฅ‡ **6,440**
      (74 MiB / 40.1% CPU ยท 805 MiB/s ยท 249.3 ยตs CPU/req) | **4,368**
      (peak 5,801 ยท 116 MiB / 44.4% CPU ยท 546 MiB/s ยท 406.7 ยตs CPU/req) | **5,532**
      (160 MiB / 47.9% CPU ยท 692 MiB/s ยท 346.5 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | ๐Ÿฅ‡ **3,960**
      (204 MiB / 39.8% CPU ยท 495 MiB/s ยท 401.9 ยตs CPU/req) | *Not possible* | **3,326**
      (93 MiB / 42.0% CPU ยท 416 MiB/s ยท 504.6 ยตs CPU/req) | **3,914**
      (136 MiB / 40.6% CPU ยท 489 MiB/s ยท 414.8 ยตs CPU/req) | **2,662**
      (189 MiB / 49.1% CPU ยท 333 MiB/s ยท 738.1 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **5,239**
      (214 MiB / 37.6% CPU ยท 655 MiB/s ยท 287.1 ยตs CPU/req) | *Not possible* | **4,683**
      (91 MiB / 37.9% CPU ยท 585 MiB/s ยท 323.5 ยตs CPU/req) | **5,172**
      (141 MiB / 39.4% CPU ยท 647 MiB/s ยท 304.5 ยตs CPU/req) | **3,632**
      (197 MiB / 47.1% CPU ยท 454 MiB/s ยท 518.6 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,989**
      (242 MiB / 44.9% CPU ยท 249 MiB/s ยท 902.9 ยตs CPU/req) | *Not possible* | **1,768**
      (96 MiB / 44.0% CPU ยท 221 MiB/s ยท 995.8 ยตs CPU/req) | **0**
      (130 MiB / 0.2% CPU) | **1,532**
      (253 MiB / 48.6% CPU ยท 191 MiB/s ยท 1270.1 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **2,230**
      (249 MiB / 46.5% CPU ยท 279 MiB/s ยท 834.7 ยตs CPU/req) | **872**
      (113 MiB / 52.1% CPU ยท 109 MiB/s ยท 2392.8 ยตs CPU/req) | **1,994**
      (96 MiB / 44.3% CPU ยท 249 MiB/s ยท 888.5 ยตs CPU/req) | **0**
      (132 MiB / 0.3% CPU) | **1,797**
      (276 MiB / 49.4% CPU ยท 225 MiB/s ยท 1099.6 ยตs CPU/req) | Linux nginx H1/H2/H3 POST completed (nginx.org mainline). TWPรทYARP H1 โ‰ˆ **1.5ร—**; H2โ†’H1 โ‰ˆ **1.2ร—**; H3 โ‰ˆ **1.1ร—**. TWPรทnginx H3 โ‰ˆ **6ร—**. ### macOS โ€” POST 64 KiB request + 64 KiB response -Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `0386b2aa`. Source: Actions [37139137891](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139137891) (`compare-post`). +Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `482f5984`. Source: Actions [37210524513](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210524513) (`compare-post`). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **3,019**
      (239 MiB / 19.0% CPU) | ๐Ÿฅ‡ **3,977**
      (89 MiB / 21.4% CPU) | **3,964**
      (103 MiB / 26.8% CPU) | **3,656**
      (131 MiB / 24.2% CPU) | **2,272**
      (203 MiB / 33.7% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | **1,884**
      (429 MiB / 21.9% CPU) | ๐Ÿฅ‡ **3,252**
      (98 MiB / 20.7% CPU) | **2,375**
      (101 MiB / 19.8% CPU) | **0**
      (peak 3,445 ยท 146 MiB / 20.6% CPU) | **1,606**
      (185 MiB / 22.6% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,021**
      (417 MiB / 28.5% CPU) | **0**
      (peak 1,326 ยท 106 MiB / 23.7% CPU) | **853**
      (101 MiB / 30.0% CPU) | **472**
      (135 MiB / 36.0% CPU) | ๐Ÿฅ‡ **1,118**
      (501 MiB / 29.0% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | **2,726**
      (378 MiB / 17.8% CPU) | ๐Ÿฅ‡ **4,777**
      (85 MiB / 17.5% CPU) | **2,289**
      (87 MiB / 19.6% CPU) | **0**
      (peak 2,511 ยท 114 MiB / 17.9% CPU) | **2,642**
      (199 MiB / 24.0% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **1,604**
      (287 MiB / 14.6% CPU) | *Not possible* | **1,321**
      (103 MiB / 22.1% CPU) | ๐Ÿฅ‡ **2,760**
      (132 MiB / 21.9% CPU) | **856**
      (222 MiB / 16.4% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,102**
      (277 MiB / 34.3% CPU) | *Not possible* | **1,872**
      (102 MiB / 24.8% CPU) | **2,205**
      (133 MiB / 25.9% CPU) | **2,831**
      (204 MiB / 44.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,342**
      (283 MiB / 39.3% CPU) | *Not possible* | **858**
      (105 MiB / 32.9% CPU) | **514**
      (peak 648 ยท 128 MiB / 40.4% CPU) | **1,031**
      (450 MiB / 40.8% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **828**
      (284 MiB / 27.5% CPU) | **327**
      (83 MiB / 10.3% CPU) | **715**
      (peak 752 ยท 107 MiB / 28.8% CPU) | **334**
      (peak 450 ยท 130 MiB / 26.3% CPU) | **736**
      (454 MiB / 25.5% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **2,466**
      (250 MiB / 21.9% CPU ยท 308 MiB/s ยท 267.0 ยตs CPU/req) | ๐Ÿฅ‡ **3,778**
      (88 MiB / 20.1% CPU ยท 472 MiB/s ยท 159.7 ยตs CPU/req) | **3,778**
      (120 MiB / 26.9% CPU ยท 472 MiB/s ยท 213.4 ยตs CPU/req) | **3,534**
      (131 MiB / 25.9% CPU ยท 442 MiB/s ยท 219.9 ยตs CPU/req) | **1,959**
      (212 MiB / 30.1% CPU ยท 245 MiB/s ยท 461.2 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | **2,035**
      (550 MiB / 24.9% CPU ยท 254 MiB/s ยท 367.7 ยตs CPU/req) | **2,606**
      (99 MiB / 18.9% CPU ยท 326 MiB/s ยท 218.0 ยตs CPU/req) | ๐Ÿฅ‡ **2,857**
      (124 MiB / 29.5% CPU ยท 357 MiB/s ยท 309.7 ยตs CPU/req) | **1,932**
      (peak 2,713 ยท 123 MiB / 19.4% CPU ยท 241 MiB/s ยท 300.7 ยตs CPU/req) | **1,679**
      (186 MiB / 24.4% CPU ยท 210 MiB/s ยท 435.2 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,402**
      (408 MiB / 28.3% CPU ยท 175 MiB/s ยท 605.3 ยตs CPU/req) | ๐Ÿฅ‡ **1,842**
      (97 MiB / 24.3% CPU ยท 230 MiB/s ยท 395.6 ยตs CPU/req) | **961**
      (102 MiB / 24.2% CPU ยท 120 MiB/s ยท 756.9 ยตs CPU/req) | **1,122**
      (130 MiB / 42.4% CPU ยท 140 MiB/s ยท 1133.2 ยตs CPU/req) | **1,330**
      (469 MiB / 30.2% CPU ยท 166 MiB/s ยท 682.5 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | **2,022**
      (528 MiB / 19.7% CPU ยท 253 MiB/s ยท 291.8 ยตs CPU/req) | ๐Ÿฅ‡ **6,081**
      (86 MiB / 17.7% CPU ยท 760 MiB/s ยท 87.1 ยตs CPU/req) | **4,151**
      (115 MiB / 22.8% CPU ยท 519 MiB/s ยท 164.6 ยตs CPU/req) | **4,234**
      (136 MiB / 19.5% CPU ยท 529 MiB/s ยท 138.2 ยตs CPU/req) | **2,082**
      (215 MiB / 19.1% CPU ยท 260 MiB/s ยท 274.7 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **2,391**
      (413 MiB / 17.3% CPU ยท 299 MiB/s ยท 216.5 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **2,970**
      (128 MiB / 28.5% CPU ยท 371 MiB/s ยท 287.9 ยตs CPU/req) | **2,717**
      (128 MiB / 23.4% CPU ยท 340 MiB/s ยท 258.1 ยตs CPU/req) | **997**
      (230 MiB / 16.8% CPU ยท 125 MiB/s ยท 504.6 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **1,866**
      (449 MiB / 24.3% CPU ยท 233 MiB/s ยท 390.2 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **2,847**
      (130 MiB / 32.1% CPU ยท 356 MiB/s ยท 338.2 ยตs CPU/req) | **2,722**
      (128 MiB / 27.2% CPU ยท 340 MiB/s ยท 299.5 ยตs CPU/req) | **1,261**
      (221 MiB / 25.1% CPU ยท 158 MiB/s ยท 595.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **663**
      (241 MiB / 26.9% CPU ยท 83 MiB/s ยท 1218.0 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **676**
      (123 MiB / 32.5% CPU ยท 84 MiB/s ยท 1441.2 ยตs CPU/req) | **603**
      (137 MiB / 45.2% CPU ยท 75 MiB/s ยท 2249.0 ยตs CPU/req) | **610**
      (456 MiB / 26.8% CPU ยท 76 MiB/s ยท 1319.1 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **1,048**
      (309 MiB / 30.1% CPU ยท 131 MiB/s ยท 860.6 ยตs CPU/req) | ๐Ÿฅ‡ **1,060**
      (102 MiB / 20.8% CPU ยท 133 MiB/s ยท 589.1 ยตs CPU/req) | **867**
      (124 MiB / 30.4% CPU ยท 108 MiB/s ยท 1052.0 ยตs CPU/req) | **474**
      (140 MiB / 28.5% CPU ยท 59 MiB/s ยท 1803.8 ยตs CPU/req) | **983**
      (420 MiB / 33.0% CPU ยท 123 MiB/s ยท 1005.8 ยตs CPU/req) | ### Windows โ€” lossy / high-RTT (H2 HOL / H3 loss) -Userspace **5 ms** one-way delay + **1%** TCP connection stall (H1/H2); UDP is **loss% only** (no per-datagram delay; MsQuic-safe) + **1%** datagram drop (H3); **64 KiB** GET. Median of **3** repeats on `windows-latest` @ `0386b2aa` โ€” [37139186736](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139186736) (`compare-lossy`). +Userspace **5 ms** one-way delay + **1%** TCP connection stall (H1/H2); UDP is **loss% only** (no per-datagram delay; MsQuic-safe) + **1%** datagram drop (H3); **64 KiB** GET. Median of **3** repeats on `windows-latest` @ `482f5984` โ€” [37210527573](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210527573) (`compare-lossy`). *Not possible:* **HAProxy** and **Envoy** columns are omitted (no official Windows port). | Client | Origin | TWP | nginx | YARP | |---|---|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **675**
      (84 MiB / 2.1% CPU) | **663**
      (142 MiB / 11.3% CPU) | **671**
      (122 MiB / 2.1% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **62**
      (peak 91 ยท 113 MiB / 1.4% CPU) | **18**
      (142 MiB / 0.4% CPU) | **18**
      (86 MiB / 0.8% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,060**
      (126 MiB / 14.2% CPU) | *Not possible (no QUIC)* | ๐Ÿฅ‡ **1,333**
      (180 MiB / 28.5% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **60**
      (peak 85 ยท 111 MiB / 1.4% CPU) | **18**
      (128 MiB / 0.1% CPU) | **17**
      (78 MiB / 0.8% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **16**
      (77 MiB / 0.6% CPU) | *Not possible* | ๐Ÿฅ‡ **18**
      (85 MiB / 0.8% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **16**
      (77 MiB / 0.7% CPU) | *Not possible* | ๐Ÿฅ‡ **18**
      (91 MiB / 1.3% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **1,065**
      (118 MiB / 9.2% CPU) | *Not possible* | ๐Ÿฅ‡ **1,610**
      (180 MiB / 28.2% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **799**
      (133 MiB / 16.7% CPU) | *Not possible (no QUIC)* | ๐Ÿฅ‡ **828**
      (177 MiB / 29.6% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **664**
      (85 MiB / 4.2% CPU ยท 41 MiB/s ยท 252.5 ยตs CPU/req) | **639**
      (143 MiB / 19.3% CPU ยท 40 MiB/s ยท 1208.4 ยตs CPU/req) | **661**
      (122 MiB / 5.6% CPU ยท 41 MiB/s ยท 337.6 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **248**
      (150 MiB / 2.6% CPU ยท 15 MiB/s ยท 418.4 ยตs CPU/req) | **245**
      (143 MiB / 6.3% CPU ยท 15 MiB/s ยท 1033.5 ยตs CPU/req) | **234**
      (119 MiB / 2.5% CPU ยท 15 MiB/s ยท 430.0 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **836**
      (123 MiB / 18.2% CPU ยท 52 MiB/s ยท 869.3 ยตs CPU/req) | *Not possible (no QUIC)* | ๐Ÿฅ‡ **841**
      (174 MiB / 31.1% CPU ยท 53 MiB/s ยท 1478.5 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **253**
      (153 MiB / 2.7% CPU ยท 16 MiB/s ยท 425.0 ยตs CPU/req) | **250**
      (128 MiB / 2.4% CPU ยท 16 MiB/s ยท 383.0 ยตs CPU/req) | **231**
      (106 MiB / 2.4% CPU ยท 14 MiB/s ยท 414.9 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **220**
      (122 MiB / 2.1% CPU ยท 14 MiB/s ยท 382.5 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **234**
      (129 MiB / 3.4% CPU ยท 15 MiB/s ยท 580.7 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **231**
      (131 MiB / 2.9% CPU ยท 14 MiB/s ยท 499.6 ยตs CPU/req) | *Not possible* | **229**
      (114 MiB / 4.7% CPU ยท 14 MiB/s ยท 827.6 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **893**
      (116 MiB / 20.6% CPU ยท 56 MiB/s ยท 922.1 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **912**
      (185 MiB / 31.2% CPU ยท 57 MiB/s ยท 1368.3 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **851**
      (131 MiB / 20.1% CPU ยท 53 MiB/s ยท 945.8 ยตs CPU/req) | *Not possible (no QUIC)* | **844**
      (177 MiB / 31.1% CPU ยท 53 MiB/s ยท 1474.8 ยตs CPU/req) | H1, H2, and H3 loss sustain are in the table. Prefer the ratio columns. ### Linux โ€” lossy / high-RTT (H2 HOL / H3 loss) -Median of **3** repeats @ `0386b2aa`. Source: [37139186736](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139186736) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only). +Median of **3** repeats @ `482f5984`. Source: [37210527573](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210527573) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **1,214**
      (121 MiB / 9.6% CPU) | ๐Ÿฅ‡ **1,220**
      (102 MiB / 8.1% CPU) | **1,220**
      (83 MiB / 4.8% CPU) | **1,211**
      (128 MiB / 6.5% CPU) | **1,213**
      (151 MiB / 13.0% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **312**
      (184 MiB / 6.6% CPU) | **40**
      (98 MiB / 0.3% CPU) | **41**
      (85 MiB / 0.2% CPU) | **40**
      (137 MiB / 0.3% CPU) | **40**
      (127 MiB / 1.5% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **1,152**
      (166 MiB / 24.3% CPU) | **1,094**
      (114 MiB / 23.8% CPU) | **946**
      (87 MiB / 19.4% CPU) | **1,043**
      (138 MiB / 24.5% CPU) | **1,132**
      (240 MiB / 31.4% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **323**
      (174 MiB / 6.0% CPU) | **40**
      (78 MiB / 0.2% CPU) | **41**
      (69 MiB / 0.2% CPU) | **40**
      (126 MiB / 0.3% CPU) | **42**
      (121 MiB / 1.2% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **40**
      (102 MiB / 0.8% CPU) | *Not possible* | ๐Ÿฅ‡ **41**
      (85 MiB / 0.3% CPU) | **40**
      (133 MiB / 0.3% CPU) | **40**
      (130 MiB / 1.3% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **40**
      (101 MiB / 1.0% CPU) | *Not possible* | **40**
      (86 MiB / 0.5% CPU) | **40**
      (137 MiB / 0.4% CPU) | ๐Ÿฅ‡ **40**
      (127 MiB / 1.4% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **1,385**
      (162 MiB / 22.1% CPU) | *Not possible* | **1,177**
      (93 MiB / 21.4% CPU) | **1,376**
      (141 MiB / 25.1% CPU) | ๐Ÿฅ‡ **1,408**
      (229 MiB / 30.9% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,194**
      (177 MiB / 25.6% CPU) | **1,116**
      (117 MiB / 24.0% CPU) | **970**
      (91 MiB / 21.3% CPU) | **1,055**
      (139 MiB / 25.8% CPU) | **1,112**
      (221 MiB / 33.0% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **1,200**
      (121 MiB / 13.1% CPU ยท 75 MiB/s ยท 437.9 ยตs CPU/req) | ๐Ÿฅ‡ **1,209**
      (99 MiB / 12.7% CPU ยท 76 MiB/s ยท 420.8 ยตs CPU/req) | **1,205**
      (84 MiB / 6.8% CPU ยท 75 MiB/s ยท 225.8 ยตs CPU/req) | **1,195**
      (129 MiB / 9.1% CPU ยท 75 MiB/s ยท 304.2 ยตs CPU/req) | **1,197**
      (155 MiB / 16.4% CPU ยท 75 MiB/s ยท 548.8 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **548**
      (189 MiB / 11.7% CPU ยท 34 MiB/s ยท 855.4 ยตs CPU/req) | **507**
      (99 MiB / 5.1% CPU ยท 32 MiB/s ยท 405.4 ยตs CPU/req) | **511**
      (84 MiB / 4.1% CPU ยท 32 MiB/s ยท 320.9 ยตs CPU/req) | **496**
      (130 MiB / 4.9% CPU ยท 31 MiB/s ยท 393.7 ยตs CPU/req) | **474**
      (143 MiB / 12.3% CPU ยท 30 MiB/s ยท 1033.9 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **1,195**
      (163 MiB / 24.2% CPU ยท 75 MiB/s ยท 810.0 ยตs CPU/req) | **1,096**
      (113 MiB / 23.5% CPU ยท 68 MiB/s ยท 857.1 ยตs CPU/req) | **978**
      (101 MiB / 18.8% CPU ยท 61 MiB/s ยท 769.4 ยตs CPU/req) | **1,022**
      (138 MiB / 25.8% CPU ยท 64 MiB/s ยท 1007.9 ยตs CPU/req) | **1,144**
      (231 MiB / 31.2% CPU ยท 72 MiB/s ยท 1090.8 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **619**
      (186 MiB / 10.0% CPU ยท 39 MiB/s ยท 646.0 ยตs CPU/req) | **552**
      (78 MiB / 3.4% CPU ยท 34 MiB/s ยท 248.0 ยตs CPU/req) | **533**
      (71 MiB / 2.4% CPU ยท 33 MiB/s ยท 177.1 ยตs CPU/req) | **521**
      (122 MiB / 3.1% CPU ยท 33 MiB/s ยท 241.7 ยตs CPU/req) | **474**
      (133 MiB / 8.5% CPU ยท 30 MiB/s ยท 720.1 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **397**
      (148 MiB / 7.7% CPU ยท 25 MiB/s ยท 771.4 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **532**
      (86 MiB / 3.9% CPU ยท 33 MiB/s ยท 291.9 ยตs CPU/req) | **506**
      (130 MiB / 4.8% CPU ยท 32 MiB/s ยท 375.7 ยตs CPU/req) | **415**
      (148 MiB / 11.7% CPU ยท 26 MiB/s ยท 1125.1 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **286**
      (161 MiB / 4.0% CPU ยท 18 MiB/s ยท 561.6 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **552**
      (88 MiB / 2.6% CPU ยท 34 MiB/s ยท 187.7 ยตs CPU/req) | **512**
      (132 MiB / 2.9% CPU ยท 32 MiB/s ยท 224.3 ยตs CPU/req) | **389**
      (148 MiB / 6.5% CPU ยท 24 MiB/s ยท 669.6 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **1,146**
      (160 MiB / 25.7% CPU ยท 72 MiB/s ยท 896.6 ยตs CPU/req) | *Not possible* | **921**
      (105 MiB / 20.5% CPU ยท 58 MiB/s ยท 891.9 ยตs CPU/req) | **957**
      (141 MiB / 26.4% CPU ยท 60 MiB/s ยท 1103.9 ยตs CPU/req) | **1,055**
      (229 MiB / 32.7% CPU ยท 66 MiB/s ยท 1238.8 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | ๐Ÿฅ‡ **1,102**
      (179 MiB / 26.1% CPU ยท 69 MiB/s ยท 945.9 ยตs CPU/req) | **1,015**
      (117 MiB / 24.6% CPU ยท 63 MiB/s ยท 967.1 ยตs CPU/req) | **947**
      (103 MiB / 20.3% CPU ยท 59 MiB/s ยท 857.0 ยตs CPU/req) | **996**
      (137 MiB / 25.9% CPU ยท 62 MiB/s ยท 1042.7 ยตs CPU/req) | **1,048**
      (219 MiB / 32.9% CPU ยท 66 MiB/s ยท 1256.0 ยตs CPU/req) | TWP H2 HOL โ‰ซ YARP (~**7.8ร—**). H3 TWPรทYARP โ‰ˆ **1.07ร—**. ### macOS โ€” lossy / high-RTT (H2 HOL / H3 loss) -Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `0386b2aa`. Source: [37139186736](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139186736) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only). +Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `482f5984`. Source: [37210527573](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210527573) (`compare-lossy`; lossy H3 uses `quic-http3`, UDP drop-only). | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---:|---:|---:|---:|---:| -| HTTP/1 ยท TLS | HTTP/1 ยท plain | **391**
      (248 MiB / 4.0% CPU) | **371**
      (83 MiB / 1.3% CPU) | **421**
      (100 MiB / 1.9% CPU) | **402**
      (134 MiB / 2.6% CPU) | ๐Ÿฅ‡ **463**
      (215 MiB / 4.9% CPU) | -| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **19**
      (peak 29 ยท 132 MiB / 3.6% CPU) | **8**
      (peak 9 ยท 81 MiB / 0.1% CPU) | **8**
      (96 MiB / 0.2% CPU) | **8**
      (118 MiB / 0.2% CPU) | **8**
      (128 MiB / 1.0% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,178**
      (252 MiB / 27.1% CPU) | ๐Ÿฅ‡ **1,305**
      (98 MiB / 17.9% CPU) | **843**
      (101 MiB / 22.4% CPU) | **1,061**
      (132 MiB / 33.8% CPU) | **1,023**
      (427 MiB / 31.0% CPU) | -| HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **18**
      (peak 30 ยท 123 MiB / 2.8% CPU) | **8**
      (peak 9 ยท 69 MiB / 0.1% CPU) | **8**
      (83 MiB / 0.1% CPU) | **8**
      (109 MiB / 0.2% CPU) | **9**
      (117 MiB / 7.3% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท plain | **8**
      (128 MiB / 1.2% CPU) | *Not possible* | ๐Ÿฅ‡ **8**
      (97 MiB / 0.2% CPU) | **8**
      (118 MiB / 0.2% CPU) | **8**
      (129 MiB / 1.3% CPU) | -| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **9**
      (118 MiB / 1.4% CPU) | *Not possible* | **10**
      (98 MiB / 0.5% CPU) | **10**
      (122 MiB / 0.4% CPU) | ๐Ÿฅ‡ **12**
      (144 MiB / 3.0% CPU) | -| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | **712**
      (185 MiB / 19.8% CPU) | *Not possible* | **419**
      (105 MiB / 16.8% CPU) | ๐Ÿฅ‡ **800**
      (131 MiB / 28.6% CPU) | **532**
      (439 MiB / 21.0% CPU) | -| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **668**
      (215 MiB / 18.6% CPU) | **916**
      (100 MiB / 14.1% CPU) | **588**
      (106 MiB / 16.1% CPU) | ๐Ÿฅ‡ **1,041**
      (132 MiB / 27.8% CPU) | **534**
      (383 MiB / 19.1% CPU) | +| HTTP/1 ยท TLS | HTTP/1 ยท plain | **366**
      (233 MiB / 4.3% CPU ยท 23 MiB/s ยท 351.7 ยตs CPU/req) | ๐Ÿฅ‡ **475**
      (85 MiB / 1.6% CPU ยท 30 MiB/s ยท 99.7 ยตs CPU/req) | **399**
      (115 MiB / 1.6% CPU ยท 25 MiB/s ยท 124.0 ยตs CPU/req) | **443**
      (129 MiB / 2.9% CPU ยท 28 MiB/s ยท 195.1 ยตs CPU/req) | **393**
      (226 MiB / 7.3% CPU ยท 25 MiB/s ยท 556.6 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **161**
      (414 MiB / 4.5% CPU ยท 10 MiB/s ยท 845.7 ยตs CPU/req) | **143**
      (85 MiB / 0.8% CPU ยท 9.0 MiB/s ยท 156.9 ยตs CPU/req) | **144**
      (116 MiB / 1.4% CPU ยท 9.0 MiB/s ยท 286.4 ยตs CPU/req) | **120**
      (130 MiB / 1.2% CPU ยท 7.5 MiB/s ยท 290.2 ยตs CPU/req) | **112**
      (230 MiB / 2.2% CPU ยท 7.0 MiB/s ยท 601.6 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท plain | **1,052**
      (267 MiB / 19.7% CPU ยท 66 MiB/s ยท 561.2 ยตs CPU/req) | **203**
      (peak 358 ยท 81 MiB / 3.7% CPU ยท 13 MiB/s ยท 544.5 ยตs CPU/req) | **728**
      (123 MiB / 15.0% CPU ยท 46 MiB/s ยท 618.0 ยตs CPU/req) | ๐Ÿฅ‡ **1,216**
      (132 MiB / 28.4% CPU ยท 76 MiB/s ยท 700.2 ยตs CPU/req) | **960**
      (408 MiB / 22.3% CPU ยท 60 MiB/s ยท 698.2 ยตs CPU/req) | +| HTTP/2 ยท plain | HTTP/1 ยท plain | **144**
      (357 MiB / 2.7% CPU ยท 9.0 MiB/s ยท 571.6 ยตs CPU/req) | **136**
      (73 MiB / 0.4% CPU ยท 8.5 MiB/s ยท 92.9 ยตs CPU/req) | **143**
      (104 MiB / 0.7% CPU ยท 8.9 MiB/s ยท 148.8 ยตs CPU/req) | **128**
      (129 MiB / 0.6% CPU ยท 8.0 MiB/s ยท 143.1 ยตs CPU/req) | ๐Ÿฅ‡ **144**
      (144 MiB / 2.0% CPU ยท 9.0 MiB/s ยท 423.2 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท plain | **136**
      (297 MiB / 1.9% CPU ยท 8.5 MiB/s ยท 431.1 ยตs CPU/req) | *Not possible* | **136**
      (121 MiB / 0.8% CPU ยท 8.5 MiB/s ยท 181.0 ยตs CPU/req) | **121**
      (123 MiB / 1.4% CPU ยท 7.6 MiB/s ยท 353.4 ยตs CPU/req) | ๐Ÿฅ‡ **159**
      (277 MiB / 7.8% CPU ยท 9.9 MiB/s ยท 1470.7 ยตs CPU/req) | +| HTTP/2 ยท TLS | HTTP/2 ยท TLS | **176**
      (313 MiB / 7.3% CPU ยท 11 MiB/s ยท 1238.9 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **179**
      (119 MiB / 3.1% CPU ยท 11 MiB/s ยท 521.8 ยตs CPU/req) | **151**
      (124 MiB / 2.8% CPU ยท 9.5 MiB/s ยท 556.8 ยตs CPU/req) | **168**
      (247 MiB / 6.2% CPU ยท 10 MiB/s ยท 1107.3 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/2 ยท TLS | ๐Ÿฅ‡ **968**
      (199 MiB / 24.5% CPU ยท 60 MiB/s ยท 758.5 ยตs CPU/req) | *Not possible* | **442**
      (132 MiB / 16.2% CPU ยท 28 MiB/s ยท 1099.9 ยตs CPU/req) | **768**
      (131 MiB / 27.4% CPU ยท 48 MiB/s ยท 1071.2 ยตs CPU/req) | **477**
      (433 MiB / 19.2% CPU ยท 30 MiB/s ยท 1206.8 ยตs CPU/req) | +| HTTP/3 ยท QUIC | HTTP/1 ยท TLS | **880**
      (210 MiB / 21.1% CPU ยท 55 MiB/s ยท 718.5 ยตs CPU/req) | ๐Ÿฅ‡ **1,004**
      (99 MiB / 13.5% CPU ยท 63 MiB/s ยท 402.3 ยตs CPU/req) | **436**
      (126 MiB / 14.2% CPU ยท 27 MiB/s ยท 976.4 ยตs CPU/req) | **952**
      (132 MiB / 27.3% CPU ยท 60 MiB/s ยท 859.7 ยตs CPU/req) | **545**
      (356 MiB / 22.6% CPU ยท 34 MiB/s ยท 1245.9 ยตs CPU/req) | ### Architecture-sensitive These runs isolate slow app readers, origin-early response, HTTP/2 duplex, and WebSocket echo. See [TWP vs YARP IO model](Performance-Profiling#user-content-twp-vs-yarp-io-model). Laptop 1-rep numbers are on [Performance Local Lab](Performance-Local-Lab#user-content-architecture-sensitive). -Median of **3** repeats on matched 4 vCPU / 16 GiB runners @ `0386b2aa` ([37138997054](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138997054)). Slow consumer = 256 KiB GET, 16 KiB read + 8 ms sleep. Early response = 64 KiB POST, origin writes after 8 KiB. Duplex HTTP/2 = overlapping 64 KiB POST on H2 TLSโ†”H2 TLS. WebSocket row = H1 Upgrade echo round-trips/sec (not RFC 8441; see WebSocket RFC 8441 table below). +Median of **3** repeats on matched 4 vCPU / 16 GiB runners @ `482f5984` ([37210530448](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210530448)). Slow consumer = 256 KiB GET, 16 KiB read + 8 ms sleep. Early response = 64 KiB POST, origin writes after 8 KiB. Duplex HTTP/2 = overlapping 64 KiB POST on H2 TLSโ†”H2 TLS. WebSocket row = H1 Upgrade echo round-trips/sec (not RFC 8441; see WebSocket RFC 8441 table below). Lossy-link runs (slow **network**) are already published above; they are not a slow **app** reader. @@ -610,52 +623,52 @@ Lossy-link runs (slow **network**) are already published above; they are not a s | Scenario | Client | Origin | TWP | nginx | YARP | |---|---|---|---:|---:|---:| -| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **256**
      (94 MiB / 2.7% CPU) | **243**
      (144 MiB / 15.4% CPU) | **255**
      (115 MiB / 3.8% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **256**
      (138 MiB / 5.8% CPU) | **164**
      (142 MiB / 24.9% CPU) | ๐Ÿฅ‡ **256**
      (110 MiB / 6.9% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **272**
      (101 MiB / 11.5% CPU) | *Not possible (no QUIC)* | **267**
      (171 MiB / 13.7% CPU) | -| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **8,941**
      (91 MiB / 43.9% CPU) | **516**
      (143 MiB / 25.0% CPU) | **6,156**
      (136 MiB / 55.7% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **3,500**
      (193 MiB / 55.5% CPU) | **370**
      (144 MiB / 24.9% CPU) | **3,260**
      (137 MiB / 54.2% CPU) | -| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,664**
      (150 MiB / 42.9% CPU) | *Not possible (no QUIC)* | **2,257**
      (218 MiB / 51.9% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | **256**
      (114 MiB / 2.6% CPU) | **256**
      (127 MiB / 4.0% CPU) | ๐Ÿฅ‡ **256**
      (106 MiB / 1.9% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **250**
      (120 MiB / 5.4% CPU) | *Not possible* | ๐Ÿฅ‡ **256**
      (141 MiB / 7.5% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,500**
      (120 MiB / 29.6% CPU) | *Not possible* | **4**
      (105 MiB / 0.2% CPU) | -| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,028**
      (peak 2,640 ยท 114 MiB / 23.8% CPU) | *Not possible* | **17**
      (105 MiB / 0.4% CPU) | -| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **25,684**
      (96 MiB / 43.2% CPU) | **12,522**
      (143 MiB / 24.6% CPU) | **23,768**
      (90 MiB / 43.6% CPU) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **250**
      (95 MiB / 3.0% CPU ยท 63 MiB/s ยท 479.6 ยตs CPU/req) | **242**
      (144 MiB / 16.1% CPU ยท 60 MiB/s ยท 2663.9 ยตs CPU/req) | ๐Ÿฅ‡ **256**
      (110 MiB / 3.0% CPU ยท 64 MiB/s ยท 477.1 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **248**
      (143 MiB / 6.0% CPU ยท 62 MiB/s ยท 970.5 ยตs CPU/req) | **158**
      (142 MiB / 24.8% CPU ยท 40 MiB/s ยท 6268.8 ยตs CPU/req) | ๐Ÿฅ‡ **248**
      (121 MiB / 6.7% CPU ยท 62 MiB/s ยท 1086.4 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **64**
      (108 MiB / 46.1% CPU ยท 16 MiB/s ยท 28974.8 ยตs CPU/req) | *Not possible (no QUIC)* | ๐Ÿฅ‡ **86**
      (153 MiB / 47.5% CPU ยท 22 MiB/s ยท 21972.2 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,529**
      (101 MiB / 35.5% CPU ยท 566 MiB/s ยท 313.2 ยตs CPU/req) | **341**
      (143 MiB / 24.8% CPU ยท 43 MiB/s ยท 2903.3 ยตs CPU/req) | **4,090**
      (139 MiB / 56.7% CPU ยท 511 MiB/s ยท 554.5 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **5,802**
      (213 MiB / 49.5% CPU ยท 725 MiB/s ยท 341.1 ยตs CPU/req) | **653**
      (146 MiB / 25.0% CPU ยท 82 MiB/s ยท 1530.0 ยตs CPU/req) | ๐Ÿฅ‡ **7,528**
      (138 MiB / 46.5% CPU ยท 941 MiB/s ยท 247.2 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **1,677**
      (163 MiB / 44.8% CPU ยท 210 MiB/s ยท 1068.6 ยตs CPU/req) | *Not possible (no QUIC)* | **1,013**
      (194 MiB / 49.4% CPU ยท 127 MiB/s ยท 1951.5 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | **248**
      (132 MiB / 3.4% CPU ยท 62 MiB/s ยท 555.7 ยตs CPU/req) | **248**
      (128 MiB / 7.9% CPU ยท 62 MiB/s ยท 1271.4 ยตs CPU/req) | ๐Ÿฅ‡ **248**
      (110 MiB / 3.8% CPU ยท 62 MiB/s ยท 616.9 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **243**
      (160 MiB / 8.9% CPU ยท 61 MiB/s ยท 1468.3 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **248**
      (146 MiB / 8.9% CPU ยท 62 MiB/s ยท 1431.9 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **3,292**
      (196 MiB / 41.2% CPU ยท 412 MiB/s ยท 500.1 ยตs CPU/req) | *Not possible* | **2,707**
      (162 MiB / 54.6% CPU ยท 338 MiB/s ยท 806.2 ยตs CPU/req) | +| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **6,092**
      (191 MiB / 40.2% CPU ยท 762 MiB/s ยท 263.8 ยตs CPU/req) | *Not possible* | **4,571**
      (172 MiB / 53.6% CPU ยท 571 MiB/s ยท 468.7 ยตs CPU/req) | +| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **25,553**
      (97 MiB / 42.8% CPU ยท 67.0 ยตs CPU/req) | **12,474**
      (143 MiB / 24.7% CPU ยท 79.1 ยตs CPU/req) | **23,549**
      (89 MiB / 42.0% CPU ยท 71.3 ยตs CPU/req) | #### Linux | Scenario | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---|---:|---:|---:|---:|---:| -| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **469**
      (114 MiB / 9.4% CPU) | **416**
      (101 MiB / 9.8% CPU) | ๐Ÿฅ‡ **473**
      (84 MiB / 5.9% CPU) | **472**
      (138 MiB / 6.1% CPU) | **422**
      (148 MiB / 15.2% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **469**
      (144 MiB / 18.3% CPU) | **429**
      (100 MiB / 17.4% CPU) | ๐Ÿฅ‡ **474**
      (82 MiB / 9.2% CPU) | **471**
      (157 MiB / 7.3% CPU) | **470**
      (146 MiB / 24.3% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **480**
      (134 MiB / 24.4% CPU) | **120**
      (97 MiB / 3.9% CPU) | **478**
      (88 MiB / 5.6% CPU) | **2**
      (151 MiB / 0.1% CPU) | ๐Ÿฅ‡ **480**
      (197 MiB / 28.6% CPU) | -| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **9,402**
      (134 MiB / 42.2% CPU) | **0**
      (peak 6,896 ยท 102 MiB / 49.1% CPU) | ๐Ÿฅ‡ **10,322**
      (84 MiB / 40.7% CPU) | **0**
      (peak 64 ยท 129 MiB / 1.9% CPU) | **5,960**
      (171 MiB / 54.1% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | ๐Ÿฅ‡ **4,856**
      (232 MiB / 44.5% CPU) | **0**
      (peak 2,632 ยท 120 MiB / 18.9% CPU) | **4,798**
      (86 MiB / 20.8% CPU) | **0**
      (peak 5,095 ยท 148 MiB / 23.5% CPU) | **4,360**
      (166 MiB / 49.9% CPU) | -| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **2,861**
      (202 MiB / 45.0% CPU) | **0**
      (peak 446 ยท 117 MiB / 24.6% CPU) | **1,950**
      (90 MiB / 34.4% CPU) | **0**
      (127 MiB / 0.1% CPU) | **2,126**
      (258 MiB / 47.5% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **481**
      (146 MiB / 14.2% CPU) | **457**
      (79 MiB / 9.2% CPU) | **472**
      (70 MiB / 4.8% CPU) | **473**
      (147 MiB / 3.4% CPU) | **480**
      (147 MiB / 12.5% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **471**
      (155 MiB / 12.5% CPU) | *Not possible* | **458**
      (90 MiB / 8.8% CPU) | **470**
      (153 MiB / 6.6% CPU) | **470**
      (167 MiB / 17.9% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,725**
      (peak 3,366 ยท 150 MiB / 23.9% CPU) | *Not possible* | **72**
      (peak 2,790 ยท 81 MiB / 0.5% CPU) | **0**
      (peak 3,878 ยท 159 MiB / 20.1% CPU) | **167**
      (164 MiB / 2.4% CPU) | -| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,974**
      (145 MiB / 31.4% CPU) | *Not possible* | **1,998**
      (83 MiB / 24.0% CPU) | **0**
      (peak 2,896 ยท 158 MiB / 19.6% CPU) | **21**
      (145 MiB / 0.5% CPU) | -| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **47,808**
      (126 MiB / 44.9% CPU) | ๐Ÿฅ‡ **50,900**
      (101 MiB / 36.8% CPU) | **48,487**
      (84 MiB / 39.9% CPU) | **46,374**
      (127 MiB / 41.9% CPU) | **41,253**
      (125 MiB / 45.3% CPU) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **466**
      (118 MiB / 6.5% CPU ยท 117 MiB/s ยท 559.5 ยตs CPU/req) | **424**
      (101 MiB / 5.9% CPU ยท 106 MiB/s ยท 555.1 ยตs CPU/req) | **472**
      (85 MiB / 3.6% CPU ยท 118 MiB/s ยท 303.3 ยตs CPU/req) | ๐Ÿฅ‡ **472**
      (139 MiB / 5.1% CPU ยท 118 MiB/s ยท 431.1 ยตs CPU/req) | **405**
      (147 MiB / 9.9% CPU ยท 101 MiB/s ยท 974.1 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **477**
      (167 MiB / 15.2% CPU ยท 119 MiB/s ยท 1269.6 ยตs CPU/req) | **476**
      (101 MiB / 10.1% CPU ยท 119 MiB/s ยท 848.8 ยตs CPU/req) | ๐Ÿฅ‡ **479**
      (83 MiB / 7.0% CPU ยท 120 MiB/s ยท 581.8 ยตs CPU/req) | **478**
      (143 MiB / 6.9% CPU ยท 120 MiB/s ยท 575.4 ยตs CPU/req) | **474**
      (158 MiB / 16.6% CPU ยท 118 MiB/s ยท 1401.7 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **462**
      (147 MiB / 48.6% CPU ยท 115 MiB/s ยท 4208.8 ยตs CPU/req) | **462**
      (112 MiB / 26.6% CPU ยท 116 MiB/s ยท 2300.3 ยตs CPU/req) | ๐Ÿฅ‡ **472**
      (92 MiB / 13.7% CPU ยท 118 MiB/s ยท 1158.8 ยตs CPU/req) | **461**
      (150 MiB / 24.9% CPU ยท 115 MiB/s ยท 2160.1 ยตs CPU/req) | **454**
      (199 MiB / 50.6% CPU ยท 114 MiB/s ยท 4456.3 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **9,667**
      (132 MiB / 43.1% CPU ยท 1,208 MiB/s ยท 178.2 ยตs CPU/req) | **7,106**
      (peak 7,239 ยท 101 MiB / 49.9% CPU ยท 888 MiB/s ยท 281.1 ยตs CPU/req) | ๐Ÿฅ‡ **10,897**
      (90 MiB / 42.9% CPU ยท 1,362 MiB/s ยท 157.6 ยตs CPU/req) | **0**
      (peak 64 ยท 130 MiB / 1.8% CPU) | **6,468**
      (175 MiB / 54.2% CPU ยท 809 MiB/s ยท 335.0 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **3,036**
      (272 MiB / 52.8% CPU ยท 379 MiB/s ยท 695.4 ยตs CPU/req) | **3,219**
      (106 MiB / 45.4% CPU ยท 402 MiB/s ยท 564.0 ยตs CPU/req) | ๐Ÿฅ‡ **3,862**
      (91 MiB / 43.6% CPU ยท 483 MiB/s ยท 451.3 ยตs CPU/req) | **0**
      (peak 3,872 ยท 140 MiB / 42.3% CPU) | **3,306**
      (169 MiB / 50.1% CPU ยท 413 MiB/s ยท 606.7 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **3,355**
      (254 MiB / 45.1% CPU ยท 419 MiB/s ยท 537.7 ยตs CPU/req) | **1,554**
      (116 MiB / 29.2% CPU ยท 194 MiB/s ยท 751.1 ยตs CPU/req) | **3,056**
      (96 MiB / 37.6% CPU ยท 382 MiB/s ยท 491.9 ยตs CPU/req) | **0**
      (127 MiB / 0.1% CPU) | **2,201**
      (287 MiB / 48.0% CPU ยท 275 MiB/s ยท 872.2 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | ๐Ÿฅ‡ **480**
      (157 MiB / 17.2% CPU ยท 120 MiB/s ยท 1434.5 ยตs CPU/req) | **478**
      (77 MiB / 14.0% CPU ยท 119 MiB/s ยท 1173.6 ยตs CPU/req) | **477**
      (70 MiB / 7.3% CPU ยท 119 MiB/s ยท 613.8 ยตs CPU/req) | **472**
      (134 MiB / 7.3% CPU ยท 118 MiB/s ยท 615.9 ยตs CPU/req) | **478**
      (141 MiB / 16.6% CPU ยท 119 MiB/s ยท 1393.1 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **463**
      (189 MiB / 23.9% CPU ยท 116 MiB/s ยท 2065.6 ยตs CPU/req) | *Not possible* | **469**
      (95 MiB / 19.9% CPU ยท 117 MiB/s ยท 1696.7 ยตs CPU/req) | ๐Ÿฅ‡ **469**
      (140 MiB / 19.0% CPU ยท 117 MiB/s ยท 1621.1 ยตs CPU/req) | **467**
      (170 MiB / 32.2% CPU ยท 117 MiB/s ยท 2764.7 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **2,854**
      (228 MiB / 41.6% CPU ยท 357 MiB/s ยท 582.5 ยตs CPU/req) | *Not possible* | **2,039**
      (93 MiB / 34.4% CPU ยท 255 MiB/s ยท 674.8 ยตs CPU/req) | **0**
      (peak 2,457 ยท 142 MiB / 35.5% CPU) | **1,955**
      (201 MiB / 53.9% CPU ยท 244 MiB/s ยท 1102.0 ยตs CPU/req) | +| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **4,025**
      (227 MiB / 38.7% CPU ยท 503 MiB/s ยท 384.5 ยตs CPU/req) | *Not possible* | **2,873**
      (93 MiB / 33.9% CPU ยท 359 MiB/s ยท 471.3 ยตs CPU/req) | **0**
      (peak 3,222 ยท 144 MiB / 36.0% CPU) | **2,870**
      (214 MiB / 54.2% CPU ยท 359 MiB/s ยท 755.0 ยตs CPU/req) | +| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **29,881**
      (126 MiB / 43.6% CPU ยท 58.4 ยตs CPU/req) | ๐Ÿฅ‡ **33,514**
      (99 MiB / 36.1% CPU ยท 43.1 ยตs CPU/req) | **32,603**
      (83 MiB / 39.0% CPU ยท 47.8 ยตs CPU/req) | **31,792**
      (127 MiB / 39.8% CPU ยท 50.1 ยตs CPU/req) | **27,275**
      (126 MiB / 44.1% CPU ยท 64.7 ยตs CPU/req) | #### macOS -Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `0386b2aa`. Source: Actions [37138997054](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37138997054) (`compare-arch`). +Median of **3** repeats on `macos-15` (Apple Silicon M1, 3-core / 7 GB) @ `482f5984`. Source: Actions [37210530448](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210530448) (`compare-arch`). | Scenario | Client | Origin | TWP | nginx | HAProxy | Envoy | YARP | |---|---|---|---:|---:|---:|---:|---:| -| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **97**
      (260 MiB / 4.1% CPU) | **104**
      (84 MiB / 0.9% CPU) | ๐Ÿฅ‡ **112**
      (101 MiB / 1.2% CPU) | **88**
      (146 MiB / 1.3% CPU) | **96**
      (222 MiB / 2.8% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **87**
      (326 MiB / 3.8% CPU) | ๐Ÿฅ‡ **102**
      (85 MiB / 1.9% CPU) | **102**
      (100 MiB / 1.8% CPU) | **80**
      (154 MiB / 1.8% CPU) | **102**
      (210 MiB / 4.6% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | ๐Ÿฅ‡ **112**
      (132 MiB / 21.5% CPU) | **104**
      (93 MiB / 4.9% CPU) | **96**
      (100 MiB / 8.1% CPU) | **87**
      (158 MiB / 18.2% CPU) | **107**
      (374 MiB / 20.1% CPU) | -| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **2,971**
      (237 MiB / 27.0% CPU) | ๐Ÿฅ‡ **4,852**
      (89 MiB / 21.4% CPU) | **3,724**
      (103 MiB / 24.9% CPU) | **0**
      (peak 2,768 ยท 132 MiB / 25.0% CPU) | **2,034**
      (219 MiB / 27.2% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **1,284**
      (440 MiB / 23.5% CPU) | **0**
      (peak 3,030 ยท 98 MiB / 18.0% CPU) | ๐Ÿฅ‡ **3,848**
      (104 MiB / 22.4% CPU) | **0**
      (peak 2,789 ยท 145 MiB / 21.4% CPU) | **1,104**
      (180 MiB / 16.6% CPU) | -| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **976**
      (310 MiB / 20.9% CPU) | **0**
      (peak 1,350 ยท 112 MiB / 23.1% CPU) | ๐Ÿฅ‡ **1,015**
      (104 MiB / 29.1% CPU) | **560**
      (131 MiB / 33.3% CPU) | **607**
      (458 MiB / 29.6% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | **104**
      (220 MiB / 2.4% CPU) | **104**
      (72 MiB / 1.2% CPU) | **104**
      (87 MiB / 1.1% CPU) | **80**
      (145 MiB / 1.0% CPU) | ๐Ÿฅ‡ **111**
      (145 MiB / 2.1% CPU) | -| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **112**
      (379 MiB / 5.2% CPU) | *Not possible* | **112**
      (102 MiB / 4.2% CPU) | **103**
      (144 MiB / 3.6% CPU) | **110**
      (308 MiB / 7.8% CPU) | -| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **913**
      (peak 1,578 ยท 174 MiB / 11.3% CPU) | *Not possible* | **604**
      (98 MiB / 10.6% CPU) | **0**
      (peak 2,019 ยท 145 MiB / 20.6% CPU) | **0**
      (177 MiB / 1.0% CPU) | -| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **778**
      (peak 1,867 ยท 172 MiB / 9.4% CPU) | *Not possible* | **730**
      (98 MiB / 7.8% CPU) | **0**
      (peak 2,352 ยท 147 MiB / 21.2% CPU) | **8**
      (179 MiB / 1.3% CPU) | -| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **18,181**
      (162 MiB / 18.4% CPU) | ๐Ÿฅ‡ **29,332**
      (86 MiB / 20.3% CPU) | **16,778**
      (101 MiB / 20.1% CPU) | **21,739**
      (122 MiB / 26.7% CPU) | **17,478**
      (162 MiB / 25.8% CPU) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **96**
      (246 MiB / 2.4% CPU ยท 24 MiB/s ยท 748.4 ยตs CPU/req) | **103**
      (84 MiB / 1.0% CPU ยท 26 MiB/s ยท 291.8 ยตs CPU/req) | ๐Ÿฅ‡ **108**
      (111 MiB / 1.1% CPU ยท 27 MiB/s ยท 306.9 ยตs CPU/req) | **90**
      (150 MiB / 1.3% CPU ยท 23 MiB/s ยท 438.5 ยตs CPU/req) | **88**
      (205 MiB / 2.9% CPU ยท 22 MiB/s ยท 984.1 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **96**
      (370 MiB / 4.1% CPU ยท 24 MiB/s ยท 1299.2 ยตs CPU/req) | **96**
      (84 MiB / 1.8% CPU ยท 24 MiB/s ยท 547.4 ยตs CPU/req) | ๐Ÿฅ‡ **112**
      (114 MiB / 2.2% CPU ยท 28 MiB/s ยท 584.5 ยตs CPU/req) | **88**
      (153 MiB / 1.9% CPU ยท 22 MiB/s ยท 667.0 ยตs CPU/req) | **88**
      (221 MiB / 4.3% CPU ยท 22 MiB/s ยท 1462.4 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **71**
      (132 MiB / 19.2% CPU ยท 18 MiB/s ยท 8111.0 ยตs CPU/req) | **104**
      (94 MiB / 4.6% CPU ยท 26 MiB/s ยท 1332.4 ยตs CPU/req) | ๐Ÿฅ‡ **120**
      (110 MiB / 12.6% CPU ยท 30 MiB/s ยท 3163.0 ยตs CPU/req) | **88**
      (149 MiB / 10.8% CPU ยท 22 MiB/s ยท 3679.2 ยตs CPU/req) | **113**
      (333 MiB / 21.1% CPU ยท 28 MiB/s ยท 5597.2 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **4,028**
      (238 MiB / 25.5% CPU ยท 504 MiB/s ยท 190.1 ยตs CPU/req) | **2,920**
      (peak 3,205 ยท 85 MiB / 17.1% CPU ยท 365 MiB/s ยท 176.1 ยตs CPU/req) | ๐Ÿฅ‡ **4,105**
      (120 MiB / 29.0% CPU ยท 513 MiB/s ยท 211.7 ยตs CPU/req) | **0**
      (peak 3,376 ยท 134 MiB / 26.5% CPU) | **1,911**
      (203 MiB / 28.4% CPU ยท 239 MiB/s ยท 446.2 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/1 ยท plain | **1,631**
      (514 MiB / 30.5% CPU ยท 204 MiB/s ยท 561.6 ยตs CPU/req) | **2,380**
      (peak 3,110 ยท 98 MiB / 16.4% CPU ยท 297 MiB/s ยท 207.1 ยตs CPU/req) | ๐Ÿฅ‡ **3,369**
      (122 MiB / 27.7% CPU ยท 421 MiB/s ยท 247.0 ยตs CPU/req) | **0**
      (peak 3,882 ยท 144 MiB / 27.4% CPU) | **1,801**
      (192 MiB / 20.8% CPU ยท 225 MiB/s ยท 346.2 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/3 ยท QUIC | HTTP/1 ยท plain | **744**
      (255 MiB / 26.4% CPU ยท 93 MiB/s ยท 1065.8 ยตs CPU/req) | ๐Ÿฅ‡ **1,512**
      (100 MiB / 22.1% CPU ยท 189 MiB/s ยท 438.4 ยตs CPU/req) | **0**
      (65 MiB) | **542**
      (125 MiB / 30.7% CPU ยท 68 MiB/s ยท 1699.6 ยตs CPU/req) | **408**
      (436 MiB / 23.6% CPU ยท 51 MiB/s ยท 1734.3 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท plain | HTTP/1 ยท plain | **96**
      (208 MiB / 2.1% CPU ยท 24 MiB/s ยท 651.4 ยตs CPU/req) | ๐Ÿฅ‡ **120**
      (72 MiB / 1.9% CPU ยท 30 MiB/s ยท 478.3 ยตs CPU/req) | **104**
      (99 MiB / 1.2% CPU ยท 26 MiB/s ยท 349.4 ยตs CPU/req) | **81**
      (145 MiB / 1.0% CPU ยท 20 MiB/s ยท 383.4 ยตs CPU/req) | **104**
      (145 MiB / 3.2% CPU ยท 26 MiB/s ยท 922.0 ยตs CPU/req) | +| Slow consumer (256 KiB GET, throttled client read) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | ๐Ÿฅ‡ **104**
      (481 MiB / 2.8% CPU ยท 26 MiB/s ยท 805.8 ยตs CPU/req) | *Not possible* | **96**
      (130 MiB / 2.0% CPU ยท 24 MiB/s ยท 633.9 ยตs CPU/req) | **80**
      (130 MiB / 1.5% CPU ยท 20 MiB/s ยท 554.0 ยตs CPU/req) | **96**
      (347 MiB / 3.2% CPU ยท 24 MiB/s ยท 987.5 ยตs CPU/req) | +| Early response (origin writes after first request chunk) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **1,546**
      (446 MiB / 22.0% CPU ยท 193 MiB/s ยท 426.1 ยตs CPU/req) | *Not possible* | **1,609**
      (119 MiB / 20.9% CPU ยท 201 MiB/s ยท 389.2 ยตs CPU/req) | **0**
      (peak 1,610 ยท 134 MiB / 24.2% CPU) | ๐Ÿฅ‡ **1,645**
      (349 MiB / 30.2% CPU ยท 206 MiB/s ยท 550.9 ยตs CPU/req) | +| Duplex (both directions live) | HTTP/2 ยท TLS | HTTP/2 ยท TLS | **1,812**
      (460 MiB / 17.6% CPU ยท 227 MiB/s ยท 291.5 ยตs CPU/req) | *Not possible* | ๐Ÿฅ‡ **1,945**
      (peak 2,028 ยท 119 MiB / 17.9% CPU ยท 243 MiB/s ยท 275.3 ยตs CPU/req) | **0**
      (peak 1,669 ยท 131 MiB / 21.3% CPU) | **1,677**
      (368 MiB / 31.5% CPU ยท 210 MiB/s ยท 563.4 ยตs CPU/req) | +| Duplex (WebSocket / H1 Upgrade) | HTTP/1 ยท TLS | HTTP/1 ยท plain | **5,470**
      (156 MiB / 10.0% CPU ยท 54.7 ยตs CPU/req) | ๐Ÿฅ‡ **17,987**
      (86 MiB / 15.6% CPU ยท 26.1 ยตs CPU/req) | **10,901**
      (103 MiB / 13.7% CPU ยท 37.8 ยตs CPU/req) | **12,646**
      (121 MiB / 21.1% CPU ยท 50.1 ยตs CPU/req) | **15,211**
      (152 MiB / 21.5% CPU ยท 42.5 ยตs CPU/req) | Slow consumer is sleep-bound; H1/H2/H3 sit in the same band. Prefer the ratio columns for early-response, duplex, and WebSocket rows. @@ -665,85 +678,85 @@ Isolates keep-alive tiny GET vs **new connection per request** (handshake-domina #### Windows -Median of **3** repeats on `windows-latest` @ `0386b2aa`. Source: Actions [37139092496](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139092496). Absolute RPS on GHA swings hard; prefer **TWPรทYARP**. +Median of **3** repeats on `windows-latest` @ `482f5984`. Source: Actions [37210533058](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210533058). Absolute RPS on GHA swings hard; prefer **TWPรทYARP**. *Not possible:* **HAProxy** and **Envoy** columns are omitted (no official Windows port). | Workload | TWP | nginx | YARP | |---|---:|---:|---:| -| Keep-alive ยท tiny GET | ๐Ÿฅ‡ **20,474**
      (84 MiB / 47.4% CPU) | **8,709**
      (142 MiB / 24.6% CPU) | **18,264**
      (102 MiB / 48.3% CPU) | -| New-connection ยท tiny GET | ๐Ÿฅ‡ **725**
      (84 MiB / 0.8% CPU) | **248**
      (141 MiB / 2.2% CPU) | **712**
      (113 MiB / 0.5% CPU) | -| Keep-alive ยท 256 KiB GET | ๐Ÿฅ‡ **2,948**
      (119 MiB / 47.1% CPU) | **170**
      (142 MiB / 24.8% CPU) | **2,709**
      (139 MiB / 49.1% CPU) | +| Keep-alive ยท tiny GET | ๐Ÿฅ‡ **55,831**
      (85 MiB / 47.4% CPU ยท 34.0 ยตs CPU/req) | **24,990**
      (142 MiB / 24.4% CPU ยท 39.1 ยตs CPU/req) | **52,516**
      (105 MiB / 49.0% CPU ยท 37.3 ยตs CPU/req) | +| New-connection ยท tiny GET | ๐Ÿฅ‡ **928**
      (78 MiB) | **319**
      (141 MiB / 1.9% CPU ยท 234.8 ยตs CPU/req) | **920**
      (105 MiB) | +| Keep-alive ยท 256 KiB GET | ๐Ÿฅ‡ **5,229**
      (128 MiB / 37.9% CPU ยท 1,307 MiB/s ยท 289.6 ยตs CPU/req) | **340**
      (142 MiB / 24.8% CPU ยท 85 MiB/s ยท 2915.5 ยตs CPU/req) | **4,577**
      (135 MiB / 43.5% CPU ยท 1,144 MiB/s ยท 380.1 ยตs CPU/req) | #### Linux -Median of **3** repeats @ `0386b2aa`. Source: Actions [37139092496](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139092496). +Median of **3** repeats @ `482f5984`. Source: Actions [37210533058](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210533058). | Workload | TWP | nginx | HAProxy | Envoy | YARP | |---|---:|---:|---:|---:|---:| -| Keep-alive ยท tiny GET | **24,036**
      (106 MiB / 49.4% CPU) | ๐Ÿฅ‡ **27,574**
      (99 MiB / 42.0% CPU) | **26,687**
      (82 MiB / 43.7% CPU) | **16,103**
      (128 MiB / 57.4% CPU) | **19,910**
      (134 MiB / 50.3% CPU) | -| New-connection ยท tiny GET | **1,143**
      (120 MiB / 0.5% CPU) | ๐Ÿฅ‡ **1,204**
      (103 MiB / 0.2% CPU) | **1,141**
      (82 MiB / 0.5% CPU) | **1,082**
      (129 MiB / 0.2% CPU) | **1,141**
      (146 MiB) | -| Keep-alive ยท 256 KiB GET | **2,814**
      (129 MiB / 35.2% CPU) | **1,780**
      (100 MiB / 51.1% CPU) | ๐Ÿฅ‡ **3,012**
      (83 MiB / 32.6% CPU) | **2,766**
      (145 MiB / 31.9% CPU) | **2,247**
      (162 MiB / 43.9% CPU) | +| Keep-alive ยท tiny GET | **23,748**
      (107 MiB / 49.8% CPU ยท 83.9 ยตs CPU/req) | ๐Ÿฅ‡ **27,308**
      (98 MiB / 42.0% CPU ยท 61.4 ยตs CPU/req) | **26,617**
      (82 MiB / 44.8% CPU ยท 67.3 ยตs CPU/req) | **17,004**
      (128 MiB / 59.3% CPU ยท 139.4 ยตs CPU/req) | **20,349**
      (131 MiB / 50.0% CPU ยท 98.3 ยตs CPU/req) | +| New-connection ยท tiny GET | **969**
      (124 MiB / 0.2% CPU ยท 10.3 ยตs CPU/req) | **1,004**
      (98 MiB / 1.0% CPU ยท 39.1 ยตs CPU/req) | **950**
      (85 MiB / 0.3% CPU ยท 13.1 ยตs CPU/req) | ๐Ÿฅ‡ **1,072**
      (128 MiB) | **962**
      (147 MiB / 0.7% CPU ยท 30.4 ยตs CPU/req) | +| Keep-alive ยท 256 KiB GET | **2,661**
      (132 MiB / 36.8% CPU ยท 665 MiB/s ยท 552.8 ยตs CPU/req) | **1,701**
      (99 MiB / 53.3% CPU ยท 425 MiB/s ยท 1253.0 ยตs CPU/req) | ๐Ÿฅ‡ **2,926**
      (86 MiB / 32.5% CPU ยท 731 MiB/s ยท 444.9 ยตs CPU/req) | **2,662**
      (144 MiB / 34.1% CPU ยท 665 MiB/s ยท 512.3 ยตs CPU/req) | **2,122**
      (160 MiB / 45.4% CPU ยท 531 MiB/s ยท 855.0 ยตs CPU/req) | #### macOS -Median of **3** repeats on `macos-15` @ `0386b2aa`. Source: Actions [37139092496](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139092496). +Median of **3** repeats on `macos-15` @ `482f5984`. Source: Actions [37210533058](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210533058). | Workload | TWP | nginx | HAProxy | Envoy | YARP | |---|---:|---:|---:|---:|---:| -| Keep-alive ยท tiny GET | **8,658**
      (149 MiB / 20.7% CPU) | **10,695**
      (85 MiB / 16.6% CPU) | **11,290**
      (101 MiB / 12.2% CPU) | **8,861**
      (122 MiB / 22.9% CPU) | ๐Ÿฅ‡ **12,042**
      (162 MiB / 22.4% CPU) | -| New-connection ยท tiny GET | **110**
      (peak 118 ยท 107 MiB / 0.2% CPU) | **478**
      (85 MiB) | ๐Ÿฅ‡ **651**
      (101 MiB) | **627**
      (131 MiB / 0.1% CPU) | **106**
      (peak 119 ยท 152 MiB / 0.2% CPU) | -| Keep-alive ยท 256 KiB GET | **2,880**
      (214 MiB / 24.6% CPU) | **2,330**
      (85 MiB / 16.6% CPU) | ๐Ÿฅ‡ **2,998**
      (102 MiB / 25.7% CPU) | **2,874**
      (154 MiB / 24.8% CPU) | **2,034**
      (182 MiB / 29.2% CPU) | +| Keep-alive ยท tiny GET | **13,222**
      (123 MiB / 21.6% CPU ยท 48.9 ยตs CPU/req) | ๐Ÿฅ‡ **14,502**
      (84 MiB / 15.7% CPU ยท 32.5 ยตs CPU/req) | **13,941**
      (108 MiB / 17.7% CPU ยท 38.1 ยตs CPU/req) | **7,183**
      (121 MiB / 22.1% CPU ยท 92.5 ยตs CPU/req) | **6,401**
      (160 MiB / 13.9% CPU ยท 65.3 ยตs CPU/req) | +| New-connection ยท tiny GET | **125**
      (peak 130 ยท 107 MiB / 0.2% CPU ยท 38.5 ยตs CPU/req) | **619**
      (86 MiB) | **707**
      (105 MiB) | ๐Ÿฅ‡ **764**
      (131 MiB / 0.1% CPU ยท 2.4 ยตs CPU/req) | **126**
      (158 MiB / 0.1% CPU ยท 11.9 ยตs CPU/req) | +| Keep-alive ยท 256 KiB GET | **1,756**
      (217 MiB / 21.8% CPU ยท 439 MiB/s ยท 372.2 ยตs CPU/req) | **1,898**
      (85 MiB / 18.2% CPU ยท 475 MiB/s ยท 287.6 ยตs CPU/req) | **2,178**
      (116 MiB / 24.6% CPU ยท 544 MiB/s ยท 338.9 ยตs CPU/req) | ๐Ÿฅ‡ **2,258**
      (155 MiB / 26.4% CPU ยท 564 MiB/s ยท 350.4 ยตs CPU/req) | **1,599**
      (181 MiB / 31.9% CPU ยท 400 MiB/s ยท 598.3 ยตs CPU/req) | Prefer **TWPรทYARP** in the table. Absolute RPS on GHA swings hard. New-connection is Darwin SslStream-bound for TWP and YARP (handshake p99 SLO **500 ms** on macOS only โ€” Win/Linux stay at **200 ms**). ## Unary gRPC (H2 TLS) -Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grpc_pass`), HAProxy, and Envoy (OS-possible peers only). Not folded into the architecture-sensitive tables. Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). +Unary Echo **RPC/s** @ c=64 over H2 TLSโ†’H2 TLS for Titanium, YARP, nginx (`grpc_pass`), HAProxy, and Envoy (OS-possible peers only). Not folded into the architecture-sensitive tables. Median of **3** repeats @ `482f5984` โ€” [37210536200](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210536200). | OS | Titanium | YARP | nginx | HAProxy | Envoy | |---|---:|---:|---:|---:|---:| -| Windows | ๐Ÿฅ‡ **52,937**
      (97 MiB / 23.1% CPU) | **31,254**
      (120 MiB / 44.9% CPU) | **0**
      (143 MiB / 24.8% CPU) | *Not possible* | *Not possible* | -| Linux | ๐Ÿฅ‡ **36,435**
      (116 MiB / 29.4% CPU) | **21,650**
      (162 MiB / 42.4% CPU) | **0**
      (114 MiB / 24.8% CPU) | **6,780**
      (84 MiB / 24.4% CPU) | **11,826**
      (128 MiB / 21.5% CPU) | -| macOS | ๐Ÿฅ‡ **23,481**
      (147 MiB / 9.2% CPU) | **13,123**
      (198 MiB / 13.4% CPU) | **0**
      (85 MiB / 2.8% CPU) | **0**
      (104 MiB / 13.3% CPU) | **8,939**
      (120 MiB / 13.4% CPU) | +| Windows | ๐Ÿฅ‡ **42,967**
      (128 MiB / 31.4% CPU ยท 29.3 ยตs CPU/req) | **27,337**
      (128 MiB / 47.0% CPU ยท 68.7 ยตs CPU/req) | **0**
      (144 MiB / 24.8% CPU) | *Not possible* | *Not possible* | +| Linux | ๐Ÿฅ‡ **33,244**
      (168 MiB / 34.1% CPU ยท 41.1 ยตs CPU/req) | **20,500**
      (152 MiB / 43.1% CPU ยท 84.1 ยตs CPU/req) | **0**
      (110 MiB / 41.4% CPU) | **15,252**
      (81 MiB / 44.6% CPU ยท 117.0 ยตs CPU/req) | **16,458**
      (126 MiB / 56.0% CPU ยท 136.2 ยตs CPU/req) | +| macOS | **0**
      (251 MiB / 10.8% CPU) | **0**
      (263 MiB / 9.2% CPU) | **0**
      (86 MiB / 2.5% CPU) | **17,350**
      (123 MiB / 29.4% CPU ยท 50.9 ยตs CPU/req) | ๐Ÿฅ‡ **20,494**
      (121 MiB / 33.2% CPU ยท 48.6 ยตs CPU/req) | ## Unary gRPC (H2 TLS โ†’ h2c) -Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 origin). Peers: Titanium, YARP, HAProxy, Envoy. Mode: `compare-grpc` (`*-grpc-h2c`). Median of **3** repeats @ `0386b2aa` โ€” [37139283273](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37139283273). +Unary Echo **RPC/s** @ c=64 over **H2 TLS โ†’ h2c** (edge TLS, cleartext H2 origin). Peers: Titanium, YARP, HAProxy, Envoy. Mode: `compare-grpc` (`*-grpc-h2c`). Median of **3** repeats @ `482f5984` โ€” [37210536200](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210536200). *Not possible:* **nginx** column omitted (no H2 upstream). | OS | Titanium | YARP | HAProxy | Envoy | |---|---:|---:|---:|---:| -| Windows | ๐Ÿฅ‡ **55,113**
      (88 MiB / 23.0% CPU) | **33,033**
      (115 MiB / 44.6% CPU) | *Not possible* | *Not possible* | -| Linux | ๐Ÿฅ‡ **43,057**
      (123 MiB / 29.8% CPU) | **24,248**
      (164 MiB / 43.2% CPU) | **7,734**
      (82 MiB / 24.4% CPU) | **12,392**
      (127 MiB / 22.4% CPU) | -| macOS | **37,144**
      (158 MiB / 12.6% CPU) | ๐Ÿฅ‡ **50,508**
      (178 MiB / 37.7% CPU) | **24,505**
      (104 MiB / 24.4% CPU) | **30,920**
      (119 MiB / 26.1% CPU) | +| Windows | ๐Ÿฅ‡ **47,293**
      (129 MiB / 33.0% CPU ยท 27.9 ยตs CPU/req) | **29,812**
      (136 MiB / 44.9% CPU ยท 60.2 ยตs CPU/req) | *Not possible* | *Not possible* | +| Linux | ๐Ÿฅ‡ **39,632**
      (163 MiB / 33.7% CPU ยท 34.0 ยตs CPU/req) | **23,644**
      (153 MiB / 44.0% CPU ยท 74.5 ยตs CPU/req) | **18,026**
      (83 MiB / 43.9% CPU ยท 97.3 ยตs CPU/req) | **17,986**
      (125 MiB / 56.5% CPU ยท 125.7 ยตs CPU/req) | +| macOS | **8,312**
      (273 MiB / 7.4% CPU ยท 26.7 ยตs CPU/req) | **8,959**
      (235 MiB / 19.6% CPU ยท 65.6 ยตs CPU/req) | **6,113**
      (110 MiB / 21.3% CPU ยท 104.3 ยตs CPU/req) | ๐Ÿฅ‡ **9,239**
      (120 MiB / 15.6% CPU ยท 50.7 ยตs CPU/req) | ## WebSocket (H1 TLS โ†’ H1 TLS) -WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: `compare-ws-h1tls` (`*-duplex-ws-h1tls`). Median of **3** repeats @ `0386b2aa`. Source: [37156931630](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156931630). +WebSocket echo round-trips/sec over **dual-TLS** H1 (`proxy_ssl` style). Mode: `compare-ws-h1tls` (`*-duplex-ws-h1tls`). Median of **3** repeats @ `482f5984`. Source: [37210538613](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210538613). | OS | Titanium | YARP | nginx | HAProxy | Envoy | |---|---:|---:|---:|---:|---:| -| Windows | ๐Ÿฅ‡ **22,395**
      (100 MiB / 44.5% CPU) | **21,451**
      (92 MiB / 43.9% CPU) | **9,638**
      (142 MiB / 24.8% CPU) | *Not possible* | *Not possible* | -| Linux | **24,640**
      (133 MiB / 44.2% CPU) | **22,976**
      (134 MiB / 43.9% CPU) | ๐Ÿฅ‡ **28,478**
      (103 MiB / 37.0% CPU) | **26,978**
      (85 MiB / 39.3% CPU) | **27,918**
      (128 MiB / 38.2% CPU) | -| macOS | **28,012**
      (192 MiB / 28.5% CPU) | **32,133**
      (215 MiB / 34.9% CPU) | **35,774**
      (85 MiB / 22.8% CPU) | ๐Ÿฅ‡ **36,420**
      (100 MiB / 33.0% CPU) | **35,325**
      (119 MiB / 29.9% CPU) | +| Windows | ๐Ÿฅ‡ **29,526**
      (99 MiB / 42.1% CPU ยท 57.1 ยตs CPU/req) | **27,745**
      (93 MiB / 44.1% CPU ยท 63.5 ยตs CPU/req) | **13,706**
      (142 MiB / 24.8% CPU ยท 72.2 ยตs CPU/req) | *Not possible* | *Not possible* | +| Linux | **40,864**
      (137 MiB / 41.9% CPU ยท 41.0 ยตs CPU/req) | **37,220**
      (135 MiB / 44.0% CPU ยท 47.2 ยตs CPU/req) | **48,858**
      (104 MiB / 34.4% CPU ยท 28.2 ยตs CPU/req) | **48,324**
      (84 MiB / 37.1% CPU ยท 30.7 ยตs CPU/req) | ๐Ÿฅ‡ **49,049**
      (127 MiB / 37.5% CPU ยท 30.6 ยตs CPU/req) | +| macOS | **6,336**
      (147 MiB / 14.8% CPU ยท 70.1 ยตs CPU/req) | **6,772**
      (149 MiB / 16.4% CPU ยท 72.8 ยตs CPU/req) | ๐Ÿฅ‡ **12,168**
      (91 MiB / 10.3% CPU ยท 25.4 ยตs CPU/req) | **6,870**
      (107 MiB / 11.8% CPU ยท 51.3 ยตs CPU/req) | **6,721**
      (123 MiB / 18.3% CPU ยท 81.5 ยตs CPU/req) | ## WebSocket (H2 TLS 8441 โ†’ H1) WebSocket echo over **RFC 8441** extended CONNECT (H2 TLS client โ†’ H1 plain origin). Mode: `compare-ws-h2` (`*-duplex-ws-h2`). -The probe client sets `NoDelay` and writes each HTTP/2 frame as one TLS record. Median of **3** repeats @ `0386b2aa`. Source: [37156946870](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37156946870). +The probe client sets `NoDelay` and writes each HTTP/2 frame as one TLS record. Median of **3** repeats @ `482f5984`. Source: [37210541741](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210541741). *Not possible:* **nginx** column omitted (no RFC 8441 extended CONNECT). | OS | Titanium | YARP | HAProxy | Envoy | |---|---:|---:|---:|---:| -| Windows | ๐Ÿฅ‡ **26,080**
      (171 MiB / 47.0% CPU) | **0**
      (155 MiB / 20.4% CPU) | *Not possible* | *Not possible* | -| Linux | **47,626**
      (197 MiB / 40.1% CPU) | **0**
      (220 MiB / 42.2% CPU) | ๐Ÿฅ‡ **47,638**
      (85 MiB / 35.0% CPU) | **0**
      (123 MiB / 0.1% CPU) | -| macOS | **8,899**
      (238 MiB / 14.0% CPU) | **0**
      (193 MiB / 8.9% CPU) | ๐Ÿฅ‡ **20,337**
      (100 MiB / 21.3% CPU) | **0**
      (115 MiB / 0.2% CPU) | +| Windows | ๐Ÿฅ‡ **34,615**
      (152 MiB / 44.4% CPU ยท 51.3 ยตs CPU/req) | **0**
      (160 MiB / 19.9% CPU) | *Not possible* | *Not possible* | +| Linux | ๐Ÿฅ‡ **41,579**
      (204 MiB / 49.5% CPU ยท 47.6 ยตs CPU/req) | **0**
      (191 MiB / 43.2% CPU) | **36,813**
      (85 MiB / 41.2% CPU ยท 44.7 ยตs CPU/req) | **0**
      (123 MiB / 0.3% CPU) | +| macOS | **6,839**
      (260 MiB / 21.9% CPU ยท 96.0 ยตs CPU/req) | **0**
      (186 MiB / 10.5% CPU) | ๐Ÿฅ‡ **9,231**
      (109 MiB / 16.7% CPU ยท 54.3 ยตs CPU/req) | **0**
      (116 MiB / 0.4% CPU) | ## Other measurements @@ -823,7 +836,7 @@ See [PERF-GATES.md](https://github.com/justcoding121/titanium-web-proxy/blob/dev ### Arm shards (comparison groups) -`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The tables on this page are @ `0386b2aa`. HTTP/3 comparison groups are extra runs on that same SHA: suite prep listed groups before libmsquic was installed, so those rows were missing from the suite matrix. Saturation, editions, and both WebSocket modes on that SHA were one job per OS. Reverse product rows, bodies, POST, lossy, arch, TLS cost, gRPC, both WebSocket modes, and saturation run on Windows, Linux, and macOS. TWP MITM arms run on Linux only. `compare-editions` (CLI and Plus) runs on Linux only. `compare-spot` on pull requests to beta and stable stays on all three OS. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. +`--arm-shard` takes a comparison-group key (`h1c-h1c`, from `--print-groups`), not an `i/n` index, so a re-run measures the same row after a peer install flake. `i/n` remains for smoke modes. Paste unions `rps-csv--shard-*` (`paste-compare-product-wiki.ps1 -RunIds โ€ฆ`). Table โ€œSource: Actionsโ€ may list several run URLs for one table โ€” **do not mix SHAs**. A single-row leg allows **60** minutes of ramp and **75** minutes overall. Free GitHub accounts run **20** jobs at once, **5** of them macOS. Give a full suite a quiet window: do not push pull requests or start other macOS jobs while it runs. Re-run infrastructure failures only (`gh run rerun --failed`). A failed gate is a finding and is never re-rolled; publish the last attempt, never the best of several. The RPS tables on this page are @ `482f5984`: product [37210516555](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210516555), saturation [37210519205](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210519205), bodies [37210521790](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210521790), POST [37210524513](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210524513), lossy [37210527573](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210527573), arch [37210530448](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210530448), TLS cost [37210533058](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210533058), gRPC [37210536200](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210536200), WebSocket H1 TLS [37210538613](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210538613), WebSocket H2 [37210541741](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210541741), editions [37210543774](https://github.com/justcoding121/titanium-web-proxy/actions/runs/37210543774). Reverse product rows, bodies, POST, lossy, arch, TLS cost, gRPC, both WebSocket modes, and saturation run on Windows, Linux, and macOS. TWP MITM arms run on Linux only. `compare-editions` (CLI and Plus) runs on Linux only. `compare-spot` on pull requests to beta and stable stays on all three OS. The historical v2 MITM note below the product tables stays @ `41f4adee` because those run ids are from that fix, not this re-measure. One wiki row = one GHA jobโ€™s Clientร—Origin cell set: TWP + YARP + nginx + HAProxy + Envoy (when the OS can run them) stay on the **same VM**. On Linux that job also runs TWP Lite and Full, so **LiteรทReverse** stays a same-job ratio. Windows and macOS product jobs omit `twp-mitm-*`. Shards split **rows**, not individual proxies โ€” so **TWPรทYARP** remains a same-job ratio. Do not compare **absolute** RPS across shards (different VMs). diff --git a/wiki/images/rps-practical-heavier-linux.png b/wiki/images/rps-practical-heavier-linux.png index edba6051059619c927fa736314e0cf33780df971..9ed82e19f7856af29aac5354e8c7d2634d30a8e6 100644 GIT binary patch literal 104856 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.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�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 R?APQ2#7zhlE5t1?*Mv5&MgmiZd=?)7W(lKBo zlo&l=j2hd1*L;89pU?Nc|G5AA?eUN?9OJd?I@dYp8D}p{jPy9!`Pdm47&vd;)VagJ zz&6Fez22oW;O%$M3(jD8&)d`0!`s#QzKAc}3*qeHepUL) z73nLNM4Y_6JrT+>GH(BQhO~#5qm0)W^A32GL!LLS5DW}F&*}ddzhX2q7#JBCZs};5 z`=>0AbEL#h(`f6)E57P()ua8RndVtXqt4$_I=^Vp9V=$~a%Rovxxkl%^P=J{I%mAk zuBtSuG+wnv;is>}D2;EcVI~mc+rPT;d%V}fx95yZYyW-^?!PiH`v0$o_rn-e|JTDS|JPOgUw`&|$Nh8v^X#_;)P16{ zb%S@I+hoi55dlT}S#(?_qDM_(qKk=vp-t=g-xof5&br3+ld%RxZU!N$A6w4OBVkF| zBbCCM11(A{uWYFt&83jHu|b4p-i`X4ob!IJLq(9zX!SiOKaEywv3cQp6$_si@exX$ z@lpuJw9QTL;ybx7A;lJ5M>O_5i!DFhAH-_))p*V7lb2AfIJ}m={>z~P(=XA=iv_Cb z#OXeiFJZz>gSKBuA@*ok6q$<`o8?EVoXk?HxxTwk>~R~&GhD5y!4#V1tJX@bjSNxM z$jg-o8+;^}dbw?*Z#_0n5?bTCG6u(5)b+Tfa`0VqouBB?wt`J+gAHxn-*{DO+c+#M zD~qGL4i>!2&CS)NjH&poR%uXozK}ZHur>8WWF#wRi9=VCsmFuejalC>oC+f)R+Sa1 zuv&Lp>q>_=jg)V^b|c^4@Mn*~!1dU+{`lE~B)j%y>6Weh{Q0x2>kYp`H)&VoB>7WD zj3L;71MBn+e*S{cLhjB-jVRe3QCYq`*%r=>1gm|ohuL)G(*r&84vQ#uo?x}W%{9sv z*5k_P#P4UqtNg0|YmNOi?a5eivtYZB-CP2ymAdgw8#bZ6f^A%F=uAjT;`0i<<}&$faKoPJpGgI`;Q~u`4kUY#(9D zR;-%?<;lW7wA`8CFp-e%6s0Rz`c5JF72JQ-q&g4eMIE+y+GrEBQr(1MOXP+5w?p%8 zCl*Z5?&Rw4rUfn*3e=vC2_b=iBkRYCy_VV(pLl+-%%<$e|fVFoO zmo=bUOPI=Ase3LXZn{AW!==gOM)uF(0L?UlU9>INz%4BidNU$eI8N@c)7OTR+o?B0 z%bZO7&hK$psXz;sC`ZJmjZX$ze{eu(u_EI)Q!0B^q{>wp@#Ghr}4LXI^vTAzd#VmbM*jl^hB z=g|i{39U5u@kT#CQB6i2y<9)$PNQO-S~OC|vb?RveSA>}`{}_mTi;Q5nYZ6Ue=ee0 zE$*m*3C#qT`Nn`u$5IKi>TQ@(jzRu|K8nv*fXbZsV1U>m`77rTGsn(F4(< z(RZbwhdHYinoIL>?{loXoub%xx7OWFVKNwTJ6~#NyOrkV(M*b$loxuT|2F2-mCwzN z7#qYJHR{f^MRTB!q*y=z7pi&dE+$4TNkVhB-{-ay|0`aZEkaLUww^UODdW5H0*2KY z;=J^83JsywPKF@xjwp?g?QuWfZ#>YEXTl+;yeOlUj%1IXR258;f``y2N)m6&gO2E9 z2}*MxA6!>2BLqlH3t6Hkl7)2P_-eZ6mWe~v6PPo>08%!MpR6MUMfUb zPp_fhbHMT4sV&wX&GH7ref_xxqj*jAO4#=5_!9b9v0QEKGDy4$_?5yZYw!fy_*qNH z)1v&K?NuxNq2k+{R0>(!-JoOVl}yWg&}Q>*CtU!i^?9M)q6J?@M$%K}T+0I6{ zko9l8E&6d1Jo>CnX&%^`($K`YuH;6q)qqh8`wL#rjtEvPXIlo)DBIdbS50#Dc_s_< z(-u`|`$Qx@)i14cW7wRvz0-L-Mt$!G^ytQhP?0ffjmM9-XIenohFdv+Oxr@w+v3?m zw~=>;M7_H?<3^hw4M|Mu^4iAER)asrTVaS#3n~kOSuMQtKfR_W6p$l>TCJNt5*oA_ z618_YNzVDbjFePYD-MK$nLYW_<-ghYp)M=EW|};YwIVH7_B6aM0S972ZEK}=@@ZGz z#zO~(hD$bZbqVdV8*lieJ7vYi#b-7oElNDCg8GXflEqe)4$*GOVBtEuq5M5++qjR_ z-?Cc+#v6PrYFw>U2u;NO7)i4J=`i#uv+ubzJo|xYCbN@y71zzo%xu4>SDZGWr;y3G z^lN(OaFe;)_N2w3)f#G9gU`~*AJlivLEB@Wqd43^nRQPWn>I@HLf3J?L0Oe18&(N3 z7t0^Owjdjkn|*q#H5ET)>ZX|d$dv6#KQhFser2rsl|-i*kBClU;G+kZ76?L@?Zdj# zH6|zgr#We#eEM{GXPtwT9ja1iI}^w;Lm)2=MyqXE(%gDLBspG85B3^yTiEGdI3@Ek zc16i$_>!M>XlSak56%s4CZS@6w1|;+$0^Qy%3JQrHArYEfsx1{`S!u=YzfQ`)RIwGx#uMHHhE%d+%HyYosmep}Mb?4I zQlfM6HMbIj1nFytx!c?RlP$V0ZQuc@h|dEX z(FK$Bh3io?rJS}=qOzS9l?=X zT8sf8G8tGtG7=WX8*4*HLGF8I>)w?l-y)pyi zF-U5~8oukS1aG~OWUP3Z!-l96B;B-jotDz@TlO}y&nj-Tbsw}H)17aeu0m$PYLH}# z>)#U_)mF4UMj4q|cZ9d+C>AtTb9#?rHOC6&VS=#d|LVG$t9aHpx1vA4 z(M(!F+~zu#95spe-im8BgG-b6u`cRG3DwB49c z>Wm3$7gXuSUlf!3<8w}8S4~%r{DN_$1X+xFqJR7%P>(e~oxms9g(%JJm!h|z!zp7Y z6opI0rj1XhCQVw6qLO5k2Cu;a7es4QY=YOnSoZ>-6{3_1!Ee2i&1WEh18Uyk0n*wkYPOh-ZnVD zNhAOqg$1>lX!gZM(6>~ci&p%cn(VESuQbE4r>45`_9Jfdb)5%#kn~3{t;yqhPq$ zuC>Lw%zeCJwC2RCngb60l0=)t+=f!u9uSb@exN>+8+=z5L64haZIL(}jx~3PuV|0+ zDP78rRz|O=c(@NnjD+^FZ~HkXgA~6Z?=~ja=^~CbOw8XM)!@J8`s12#`Gj^CFRld{ zWJiaGs`;%-gOmA61I_TV`njY_JyNiyk@Pp#`9^{YY~CVn#)Qa(-vVwY0}6KC5y#!~ z7AxSL73Q}OCiEpI|H5?2wBlNq0WdpNAsbdfj@<6ajAxt#5W=tYaPM@qO1ED-3-68* zXys{-i(bh-m#2O5vm2dCO1J8$+H2mflZ}*D2oO__uYO%|&F8kuk%w>5>&is_4eCg3II~ zAB-(Nv=p=r=Q{=ZiY(Val505p`zFt!2ohm(GPL`Uxyk7@Wn)3m!%{l}NsBx_K?sD9 zNiLtqD99wrcA;OSYH@#RvO~DtC%j0K&1^}Nwus&!3lwZ62*h%wxmjO8Px1hH+;5UJ z3k{jjhI<7;gf^9OYN9rNUF~^Ny8NC$!N%(a&GJqwX&;=@)vIO+Uyi8!q6I9f&Djo@ z*(OUd!|)Mc6&*U`F-q=(1*XyiY67UU;VsiF(C&jdFFC`9E=~YY#xxnjf^-GIT}1LP zU7*Q$V2Y$&7IJ=D`ox9Xo*GlMB|F*%+uO5o&!8edIL;R4APPicU^3;K^PrQjP(=xc zHfx3^NZWp{2?D^9>PC-#mj3uQhDyJMf&3VcrQy;u*c|)v+7x}rGxmal!Nr~RY2;Oh zUt;B;joBgG@w}kul-J*;Cyey|Dod*$)sTo1QdHEMeH|Iv6bhP^%KbLsRf1VtpY>cT zje-igJsa2T)xD@~7fSK@;gcS`af{Yq7rd?;&8*6OzUx(+W+FPCP00GhMI&#mV}|la zE#p-cf4og-OWv}YS}zLAas2%`%8IF_p;WV+^~vp2WqC~aXqHeIMmN&%q}1J5cw%}e zbyUOT3)Yyurj=fbQDPNqg8?fg>O}b3!i-B?%7_Zrk zo+wrgzMQHpf658KA1kJyiH7P&LmRWYU!HPOum{tqnV_Vw^7*5PKQE@&xh(}BwTZUF zpIXTVjjJv$Ew8J0J!{$%oEH|MFsQw}XImFYcK3Z@eY#qvoDT;wE_f)#ty&2GkTh&H z&C)qkE0tOsA!XNs1uowii%VF6 zH*Kv3;Ypr}n`oQO3T_^AY(2s;Z7XK)b%KpTlAY)q60^xGeivfn*0NwnN`VE8Xfs5N34as1&30~eKmOop`DH*}Hu)pcIcb0CFgSyCtmy%^awoWHngI%czwPOvn5Gxl}%n;e>uW_@c;ilU0*6^En z($z{40P>saH~S4L&D#z(IZ+W^qh&9T2V{y=K*et)F0`lT?;dJ{mRR<2Ubqu?*cPxf zvGB{u+ps5lCA6tXu8K?f+YhGN!riC70y1EHWpL1(hRBpK`5LHka`>Okdp~WK1ljg=S3T>^AA-j!k`1M-ynAO?&uZCT`JB=hmeF_xA(8 zI8^)>N7J#pdo;j>zv#HPOgd$i!vR_26RSJbLiqi<>R{zm7j z7bq$tb&sbn$;%HNxdFBHiA(NLj=knKw&Nj;_;tm7m1Od0xMX2YeK=()l)CE}jVgqL zxA%Jvf!SYA1H4qD3kg3|40TL2w(4k@dy&A($v4uaFq!hIbt9Ch8Wcg+u42OP9dY%$ zw=Id3_V-Sqfn&K!EWG#S>1uGb^T35|m=o>goF(SUKFAjjvBPV>zqnENcZaK-&FGv^ z>E-#9te(p&+NqP?6TyJc;FzhdqLC)RE=`WAUqoo9cX&}q7)KS}N&o3LH338iKWl<^ zr9)Q60%@kA5Cgk4+3z+5c zvm->cn6ZTB`7Dq01#YjpW#4$?wM`09B@LR5!ip_Q@0M|??o36lhD@ysE>TX!{AJ)A z{*u^XOc}yZW2ISc8U;WUY>x(QnTc;N6Vfh0u@{gynmenycShkZorT*PiQSShLO z_QGUx>m+Aq3b&tQ`O>VJ!?c#gU|j$bAX#rIpi20xIB319T}S&Jx>FV+w%Aw2ri7L^ z2aNr~8905{A_&gT&VbTGMG2ZrnWo=ifJL%b?U&Y0EQT7jv$5#q08*t)Z5L8_M^pvy z%arY*+5{=_{dyef;T_U1@}iBR<~?u1FZ=L0e_J*tP2R;KUW!)KnaxSzPFrv!FWIZ^p+099M zB*g~NB~P7=#D{QJIdt(UOg7e*%=JgdPY9z*yfVOcHFON&iB~P z8d6pK+|98ARsyiD3iLeW8ojY|zAy-qbstk<^5)JVQm`il@s^&Cge49W`!5RQ+ zkO+xT&u=N%*6Fkb-1V^pVsxa*Y?gxS$dt;~$O8n)Z$a&_9N<)F2tczrmC+mwN2f|r z)1vtSeUZ+5k)W~MtNjF6wz^HpLn$sz;5+x|bx-$Zk_D{-1fpI%Ubk`2cND+c7O5FVt>fJz^v#D&U{y z_o+JQff=H7MqdEU#_Kd5y=Y7Yd z?rC$F_&xYh3Fga|CD^m=xwhw=ffl4udjW~* z@$z~rpc2RijA?`~MRguO!d-W}4zpP#>m(c$3ooG*-x*Y@U&u?QkLG>yMcqf$6# zNJo5`*^X2J7K2Q1X<&x8O1!e^Xx8_9Rq+KJz;9^Ljg*@Ce}k@Ukw(ioc(f zcf3#dRxCRwKI3l23(x<3D{|J;G~bBBzgyfFTlVIYcnxjQXc5=DdPL> zx;@Vv{WC?Y$6i9`Y|MUw9&l0{z7Qmb{CwIm<(-=fdTQ9QMj}V7)7nhfDF|kFL^p9& zx!e4mCf;=%1yC%{wYXr+m12TmQCOzLq2KD2J|X?vD3hV6O*PMnrT{8gB1l;5B>Bp* ze{l2ZzY=K1+XXhWE=E-S3rN3(XeD!}Y;j4ESXjpHO~{^{hB^Br$Em`Hiy-2bL-wIZ zv62w}MYcZ?P6i?V8fTZXHd^`)sG&#RWdOL8lPifIVo*3-zw}oB^FfU*{Dbuo(rNJOv^tBlesJJdOYx4#e-po|VizOsm3Qph@d*5`x^T816 ze7TK}z0#fuQ#x15t1*>)=gSduRnc>*0Y60(>acv9xriH=oa`2fnuI8H^%C-(CF^hI zn0LYj0Ys{2`R?uO|<}3B&L#O70}p5yg6}8WsTAp zx0ka)^M(nTJ;^3o)0%)}Mubndk*@b`pHIaO5#-();J2F&+q__5!8MDYm$MgDU}k4t zP|4UURDhdK$({Z*7W2Z3em(_?Hnt3p(J7BK@yeTw#xgfc>T8)VyW^KCq zR=B@Rd5+Q>j#tp%THdZKj+z~j+d?;UmWNH`dUdQ`upmu+qIL3K3c}hJpYpqVb_CRA z)b4pI@`+@JC1AFj871obfKnMcWymAUM7BAfq%zj22*nbu51rAV=zAX_ZDmrUZ?*t2 z5GYV@&9eG%Q%Tm?&Kc-YYP8Dgb7$er0~Q=VIXxy>*w%bjNoi)SCMKkX{Pddj>5j&* z;20sb5+IdRw+#r*tXY6~AF)fE0>nX;flTw@pP%H{efU(?(>hrJxJV2~UaRd8FQ}iB zMeN7d*;`&oNQn_`HnEcyy&+I%U(V0#`c?Qi*)B-w z_Yat<;)+Cwn+|iF_v+UCRZAo$SzkL++xt+CdO^GC-lg=bj?s<&n*qCkw76mW;*1GM ztcLvAEepsCVplZ=r``e)W(>&lX}O&3a$#r=a|NKTbBYlq#=j=1%g9^aHe-p(#>5 zCT(e5j?35h^ZeZPkX7fv!-j8woq|?Jrn@85k$VrVr9pb_`zO5`UNJl%Ot=98g@KKk z#prI8({FdbrQt4?tLILu_?Bo8Z)yBsWsQYgw+c6iL4SCpZbT6))-05L&2#F`lx6rG z%E4mU(syXLVjUD3BcYkI^%sXd?!uP-s_?u&bdu!_4>x4W3K4gszXEQcpivZZ)WWwV z;^bZ9aKE^_7Hgj+8B33sqHiC*gn}I<%Lot%cdU812U{&AB1=Td(RD@5==*~qTep+1 zNm*O?yKlwF0=|>tP2*-_&k-*u5XOPg$ynuR$&zV-O6LGFvbLtiua{2w_J#urvJkQJ^ zLqc1dxqB_|%dPqdF+RoYq62(lS?cp7ZMf7T^3LVUtoZ~C2}5OX8;53B3`f>xJ}^LDx*VwvK&&7+>4J8+e5#{2&M9OIK>FQ; zfnAGPf;LM%kjoYj2JO~_{4?R=6mFXol`$ zrx;rn6wmF=y>KQBp9qh;brKXOX-();H??vn5YJp5upEMH$W}k~bH9^5&;qqrdOH^n z9S)faS|UktHuTru<`GdkX%P1S(PF)ZhN7O z7ZA5PP|>GjSXER3&%atTajw}fyyscgFMrN9_U(G^g-VFk7Q4=pBIZ+mA(OYMaIa%s zw2Vj6Ne{bAfEa6*X_sR#<~cG*lQYpyZ(Y<=c9$1%#gy4n;qp8tQ`DEFe|;ZX+<$!^ zZ$l@M+o@+yt@f8%*9s&|)_SC)LMVIgyTB^53+nsF*4s9g;NEVhL28XQ9ae z5(b+ur69LPsXh~dOQpdcG9M@Maho!>tcOocseB9uG6}VHr5Xc!Rp)x=&U@=s08ii4 z+2l;y&-{3&v^oul;!6gT7W~?YDt=`$qN1Wj+fuk|*E}YcU4XTvY)=ztV8|s5%D5ne zH1omu21yx!(ru6&HH=ZF0La$90W{29acRAhuLgPfs@-S>oYFbzi*>tK8<%VVOclY2 ziHQM^K>tZbb_n{V(1?D(crY5j3##;Zkk_~mX1BqQuo?tFNieW2tcv}tP!6k1%fDNiM5Tv%?!BD#p?E7Sf$_V~P)=-U z+;tY46Pb3-D(_g&rvz{OY!Nkxp9vtZA8dOyL2DBUp0ba^u}%T`e1+9_R$-n3TKb*Z zfZtKP4ekEAT2+MKX=*_@$J8xo4#f&s)+T3ue$aN$E@xhgWaElntQ%;PPJM9JRG8T9 zmnjWsm8vCXr5E2qUbE8M?63%}LxG?Yh}+?=-cPG6_^c7^_pXGtDP@ov#K3f_-O#Gqt%CD@9?dw_Y#dv@hq z7k^3u<(z~g8N9=~ZAfl0r=-* z^*9}Ihzqqiy-K%v+}E0IY2KIvY*dehgmMb#ugC4K-6bA!abMYYl`)^}-ye|>E%lm{ zm@KYu^KmT{D4+0%({Ts(i?lfhBkv@O_GJEj(5_bxms&rwwHSaog%&KyyvBqhVAgQM=%Q*vGu|-Ybg0 zV*$Mo0^}8oPxp19*J0RR$Lm$1pQndV-tOkkL2;=VZowoj>yBs9&dnAfPK%7G+EvDK z6n)t2?8s1%Z19dJ4QXhcRWTEeW!EJ%<{j#FjLw_xt%t3|u*98!CO$TuG!gfTqx5j5 zeyQeSH*lZSj+0LZ?iH0Z(rA@qj}X)dHcK5!H(yo5eewZ$v%a5Je{3}fLsz|{*HhH3 zn-{DHY4Y$VVz?H8TMl$3i!^G0F_!tW)Im~80hH2mud0;785CH zf5>+`KOD+8lcUs0cS@c=`Hu(oE!Tl5S`Q1a%~S<7R;l>#b@&n!Lj|@1{>t|8H=Zq^ z-|Yz-=<9n8X`9Pug5E1WDd`bl?tD%Uah$y5IV5QQ^BV$KU`7Gn?O0_2FMRyAR}(+D z2R(6;`Efs>*_63%1Dl6Uq7AA^w%w26ps`t|Q(Hekk*+anTOTD~pcdH7nQRkMY=9wZ z>obQ;`73aNVFz^nT8bEEzGS8VL>e23AC$7H$e{q*%NJ1A-%D*7Ok(!|i?B7H9Ww@$ zGdHl|_Y%yW?(gE$Jpi*-3#iEo6YN27B_e_Ubmt8B&jLyKDVMO(njnMMZ@{3`0<*%z zQ%-&dI*LJjp%cV4A(TLcT)n$@ljJ=naDaWo%i{m8*tLIG3{=1xVA!$-5zJLjDX4!5 z(&S>rMBIAFC_KRm@a%uaFENO{kNq72GIKo#xPY*%SI0N$Yw|z0ubS(Yt{@rzdkfPR z{C|3o-wM2XGt~>Y^^TEvDeL9u=c1qcnf?3A;Qi$R${0>>Jb_DN_K_OX+K&?~lLG?- zqe1_D(h=o_fY(vS!}QYp6A6IHyvIf7b^f_27E}QnnDNpTw*Qy)IpePd68y#yiAFy{ z4OoUTz)`spCYtAnyMM;d(_iaQ4lp2FR6M*zH!A1miv1+VzlLp3linCd*jh92)Y3x_j*dO^*Y_>L zLFsw>?%h2=bXQ4P*VNI@@yR(I{cziV?tgsXZCYAzeDhQgfYzlT5DrYz_wZr1gw9`pb_!Nz2b z@=Y?v;5l;GWk1Vbfl>Eu1Yvu8&(45b`>E{-!i9`5lZgM*;{UJXUr|TOrmh!Q%ITqB zPS^8aCS^^8Fz5~d(&w*zw$@mE_n{;##YT^zjrLE7fR*9a0(RDCjWfD0j*Bh>!nulW z?V#%ebYgv?Impp!j;Qxik${CB`uUKYd`DucA)w`w7wuJ`puRO;m4(m7~4S1JQ;2c4NX=J zsG!TAz5om~yx#F-Ecx`Hqk$o@Le~z+bH#vSkH_=a5F-d18=W%vQ(;^{-M&~K&H&4+ ztQf0SYmOh=0qPz-)q7RH;gPhUXJs(!V7fICL>R@`g|0{#X3U#>Z}g**Cal|3Iu1C9 zF9~>)hM;=Y2=jYiI)7js>x*#o>LsmB1=NVQ)*#@gPCU^&2^z0zpdsAANj_}lRsZ*} zX&%eDt!Nuj=v~WOvJ8|lP65Ts_w!(;7K7NBUb*xdCLA43(7ofnp!XgF=F0@P`f3-< zSQsNS@R>e)ie4o~+yf^3Ov6OkZ!9Dp293pn?5r^gu>F4uZF{*q-iVy%BNMe^l{n(8gH=e3(_G)hd1`|s+Ax1x788-120Hx>}@XGruFdw4Zirr13p}G!0 zRdRo8QpLCfs)9r34;lzF+o$`W6gzsf?B=BcDVXlQIC+z7Do1x{`!FAWXZdgTWO!B( z#lhQPKXpt`;NCMq-;Y7dfVuR`#q&6EcOm%&oYh63>9yYu^*^`l3RzGBif zLR;Vt4tIevVKbMm;8!C{m3ywK)qis|H*-v8EU!k2jtNJW7j6=9&mLic+Y6`LZVur! z$x!?_R+dpj-J&}h_sPd#pzy5FX+kiCGYU|X2d`c5Ck~^4SiwMmV;j{m<@dA!9OA#!NKQyGu@>f<5nP=%V5HyYhV>4uw=VQ23d1vz7_y*U3wWAJ;elqNR=J!}}{~RnTYUbf}wHIytYXc2FE(&co z7z#LwbMXV3S%VHn3Z-5SdI^OZ(hD_A`1#X^lG1bz0%swTfj zo}>$zHleXAym{LF_->wg;ho{80OH%u0y`J`u@zd8wtDHZOCklxl zVG4Ec4MSki4&$Z@T4kvA|FlA$H+uyJ!C;M-mSztSAaM`aEzoqeVU-QWR2U4#mYQwb zY&FUjpV_c5ZGLIhN4NlgL$^BFwN|ZbxAf9ImiOE#{V`kU%R@1(F{&HS$&WS0wq8Zp zz^r+84(e&yN@X9PdpDMMXL_&EyxY#rtQ-=~3O^SJ3tExKIIs*GDgHjdJJ?&nzH!dO z+{+4qTcltFeud}G=tT=S13T3V{*27!R+Gp}P4*)oR#qc6*+*XO<*>e((VN0G!pg;K z2WhGjSKiEbrKw>B)9Hq64!**yuxMizCHgpxg6=a3F@NUEp96s8Y@1=tC`hOqTBm@> z7y}9#1%Hfl@DTToO<-W)uQ7`TZ)fN+t)=2e+65s+TAJ(@kLW`*;Zs2oCiW)yvwih9 z!ZkQ826hc1LpHRvZXwlK(QWNTCpgHTjE1@0{9R#=Bt3Qu)sxm-)BXW7rXA$aOV_@4aN| zY7q86lye)#QXKncf%3e_-U3wc{agg(y6SNj9a1EPKE1-k%x*JJ;4ax40JtZAl5H1@)ah%1f6NVq`WPeto=R zQSSw>ZEf}<@|j<8>J{;`&YjYR8!dK(c&t6+^@qOI9}Pk8lL1yBlH&a#$IdG%@|U(P zf1VPN&dQ#00EK%coK2`4a9Rzrzu3iI$`11UIHYiJ4!BIK>7oKezgP1JXGPzYvJw+c ziT?Wha%^7sdG@;!M^S~Gz_yj*maL2sLs)8AaDKdgADDxlk_F7SRz(wR{s_IA%@8I8 zA6vA^q~?k%0&mLf-gDN_h03u`Kzr{4Pu>XKzNC2p&gF6%f-s%?#5Bd{o%hQzCYlpP zX|V7~)+~CR-692I?}>&13~wo;ZHFg#a&JO12Kim1c6zrjL0o$?uE8^wkb@#eNarAq zrfW9%WKCtZpTN*UkPrgKcNbK>i(&H7okVfvRv=~%AqfLZi~Ge>tAGa5N5oN~dWb#ZePWWvQ`Z93I=M~3h9=2zx;t?}nyL&n%P~BYEs>LXUZ^Vu17(T`JG&E>VQZ}hO-&-;~(WGn*5!)M5&%A^SY?9PkJL%(OsdTFRLLr&VbEpQk;~Y+$Jyj22zIC=j2s-z&M+wR3O)U0&??F&XMJ8g$sqtoeA zOr3#ys+&bxPtX}B4S#2r1aY#ORI|;bcH6$&D{o1N%BGf95Yf-K_oDZriX`V%vz?Em z0n>x)ko6!+p5?8=^RwXOC*v}>>-QFmE0Oqt08_a()5t%Y3I$wCS%-t;-eKBe+IsFH zdCi7cQ&pO$LN2GaLh6Ap?>onTAZtM0?HMqqCt)pebJU1kNSxu!?~qHRie(<|gDJ%p zRz2+RB~HLJYUnog#{miE*Y3jaFymb<3Ik+3^E98xvc(0QQfw`(s5L)gxsmLKEHKOH z;K*9q1019mk-gYhT=VElUVG?NA)o-M9gqnu2g8hy$+HL=I_)Isl_&9>URL;N*jvbo znXkmg9H1HfAhNOYtERj6;%=P;LpCO-ZffbN)Lo;xR%}p{UX0Map6Tb&vi;{sze6cYcE>On5e1f?knxUeAMRQ{}C z%u(b29Kf$nDyHHDsbB_Y?2od~L+SdX|%Y{TC1fClh!s391Lz z0h9Y+b3VJWbM$OVgkCt-WUHd$(2%c8ue|3}+gs$}KIqCpU907+OV*IVgEK4!KFh4E z9cmKRCHfrePRV+V7a&j*-%2J|zUNsX#r>qkt3NbYb|dmF54AYGy5qG{tPcJihHL9N zK5`k857n%cZMt`r}tlhMWxz&IDPkE>tiH3|KT^K=ehQhEIrd#Y)&(L85TswE| z7>!sM&YG5AR)_< z1H97)cWs#=a`5X-|1vZTZ!by^3uSWwE8WtF$}j<~BrawbR&J${CJ`i|$SmC%6MIHB zLlu^B3&q3rd+g*XhF1=W{?#=5cPb<$3t<2P5U5 zw1y;MC_Di)JfbrYm@*#-@(URi?vN}i#v)(_(5vR0q2P`M?=LhHpK#pO4>9P)=eo6X zXWV()Pgh>2!e=**g#tscOPfUjBD!0by-m{olsE$l5vee5fYb@sLFPR|!jH2Vll~mq zu5+Spc_KR4Hqy3P^ADH}9g|6hb=)w@-GvNkw?n(mp~4z@!;FoM{bqlj5H;8}Nx%^7 z0*$m*0o1_(>_NK3=r2QV){0~umALLtxstDbdM9P?;Z%U}5D#}4RFu__ZJHG7VgD>T zu1!4rPt?BzSeUBmlr1miXtD4#L;`A+9G(_R4Oqg~$^@N?`U9+qzTwgVzy*yHJE>=Qk!Dy@|Ih~EJKUvC&`fc+MipHeLo;E z6W{IZQ26W)bep;BKLc_yMQg`D zlFD8lE#fvSvHbKF(HTVF-UYS%M+)r_jj9!XkESaIp?7HggID)lHRw*LWB=hFk6ts7 zyW`oHj8Plp+JX(^fMUggBmi4>pYRh5S9_*Y8Mf`tpxB=8D$bcc+TBP2R^G-ty}zaD z!Y}{jEQX|7qpH|;g-3&8ya#&s(G731w9VL@T3pukA3ZxBgGkV`%HhL(y7z?@`rZa{ z2{>)W)V2Y(Y1rs|t^uEX#1O-(H=lBRAq7m*_3U6wPj7wx)Af!*ANcr1G%^3Fjc{a> z7T&>uX{LF1`o&8(S}}G5$+Ho(JL8%;H=A4^LikPFsKDm_SPKG|%AO}y;DCXfa~o+& z>@xuLKOM)8#$%@B4NFDdbw7ZK9%LEpjFU`Q3E(v9cU%XXu%!O1xzO>rDB1Qu#KS=) z-qL+wpuD#oo$zxL;JT;#$EYpj)y^wRWg=obWv*X6N1r}&u~)JcuxY;xcb+pJvt+*g z*VKz8|5jIs?F;;C4r4cp;&454MZ9hW?j|8}s;EIPXDV2WU)j5WoPpp7XH5dh-_Hb;S^w$jssK;^pI$$vCRvXULW-A7y zszNUVNc`n{o2BuE|=|E)73ouWTge*L0Zw+AmV3NxL8Fb3Y)XguPVg6eyUL z+extcbU#YPI1p=e;6J^@!|5*5;$>Le&OV?3_Y;GKWEkp$cfC}mUthIxzyZy5f$2t) zur=HT!LHBEjq)b42?tNj%?`zUew19H2a)vwV^FcJYCrtLy;=OY1<)^;v|&GS;BzfR zF{o|2t&CcF2|j+K?=kq)f)P_a!C9tP?23Ri`T#3wK^!(tI zsA;S6?KtH;u9 zuhkxt6A((TW5Zac>(<{vbsCVJ9`4$hU;D&_mq;hXy-lExy4{EtSa1iV7x9|U;$S%n z#b^qfvV|};t(^6ZWfUshi;#vzMOvDP;Fd7Rz0Jpw*W`L<-qUE5%dw#K8v!iVoP?H` z87y*y&aWl|l)*ofnb9)em;`;K&W#cdpy)3ZGTq7g&nL==@WavK&v)rAqC211%WJ_H zlC3Hjzh0-6ql7gfFU?~X^h{VtQE*6fU%kqHhWQ4~QxdDmWmzh}THMf3Lp^*Yc^v3}4g=psd`iw~jlwvh=*0pmn zs`u#`ljFMvz#i^_Oe~GMqhF%r-`*VULn}@I!w1JBmY(f0k+O=IAt6q&K)}LrbyU0!IGz-q>&78s4P!=3YwEZEKla`{p33%p8(ox2a~eEF zsFX@k6e&}wCz3QMm8k&@X38>KO;2ee5+VxChRpL+N~T20u*`FriG_vr9+y(9=lkx@ z-ur#``|i(Y@89|(&%+w-b>G*0Ugvon$9bG1YbxG~&d{5kY)lQG^=#?(w^J^3MMrPo zHCI5Js7{}E#-+(xz{o0O)F*7-ux{4{+Xq1tCU4`~LRxjbPu}jXcAXdEdX>eO^ONX$ z`2Le?qi%nq=2Ch7{I}03!A{d>JXxdaIq9=&7i?B8`HIUGJ9OoI)acq;*14MFg`n!e zqx}_D1?P_h-`{zpoqHqiX^085(^VSJyg5@5AK^>Krl>~`E(aiHO1`>pReqblOu32UE|<_c?~)3Qf~HB-HcePlce~$o~JMr zIT*(_PhM%I(Y(nZ&8#Z9jBDZifkK&WTlW{rtk{G$M;=o_p_(Y!EW{XE5zdL)Ur26QLyr)gP* zv_@$(hXlFGZ!T%)4lW2c4+y_-PPaIn#~{#EP@&2();_>&>W9^|7bdnE$G1+9i#Fjp zFrR6K8EIb_}h4wlC;a zs|K8i+D@68r+uN_1|bvATommC7z$I{hm&{b``Os z3=Kv)w1Z{$*U=+t#qGOuS`@S1vffcX>!}X?XYEe{{xqSenvx3EHy! zH}Zyge^Hs(I>j;%aZDBzm()Fy-#tCGzD5E!4zGh|%n~&hx6{uYe>q&uT!mhQXQGnf zmRYNJhVQQjDSEE4<=|8&sEbT*+js^|o}B`*d;HcloB!GH`9@Avt`4>Gt?BmEXT~W{ zWDiH`yQC>pTIQ}bJ?geyX`DTRws`+)jc3QuO&XJQIdCxk>24o)w+oAf?!dKxnQLuN z8ke5>+nuc_zkEq4K;F@qbh$FK_^obMIx;HnUBeE$X{AY}&vE;H!=p<@4@#8n&+&4h zO8zK}Xi6X8^HJYK4FK?iL_LQXU5M@ry!;vFL{NE|q4hHcu=YwtQwXujRz3BrYjOzR z7xWJ?LkAGylOBugYuQ_K@_1JR6U|G^Imdd6u_(P0l(T7|nIn`r}XtRlU9*uT)+1H`}Z|0 z^#r;OL3gf(j@U@J>Klk@l6@A48e0rek82ou4=WJTE@ zf6CynaUIqB$eJ_cymY~MvR3nO-=l3@MjszuFsV%ZOlT(Xh>!V+GZSsibzbp~CI`(j zTZ7cB)dOPVX^Z*ZLf2DxbL!YBSh@S{w7$>eh<`pdDgUY-$#4GmImi9V%>TdmvA<*j zV`o`-l0*$z2R|R1?s9f5T)0pQVa~q(mULa^yz#%_XQWE(QqsXnJmC&QghOOV-KI0y zp0Pu6ToyonN!z|4Zu$Ud(%FP@$Dk>@wpvuc3g3yOf8d6&OeDLfI zP1o7o7xyjKrc`}`#f4U~O$6CkV$rk9x5@livM-zHNwIKRx+=(HlYy?<{zfmoa&8g7 zV;haWM1%5^9kWav|8OB+eNoOm5Tr9vr$L1>{(JnqZumnc_VZUecHDVStA>mYtgYTX zKR;vApZ)mjv>Xsn?eJ=QMYcgp#=#dFF4@-j#zx?vV)F8K6AMHVuxd+w#xwGM^Bzqf zfOP;JTF-6r#9*%+ZOCSXoW@b+5tFBv+6j>l09*B=Vc=c#VuZyg$PnJ*!iT7MtRU^k zFA)iooFFskNv;G(bTrLrgtSc)J4Yil#L+u&s_Q2$5Uxx7`3>-cwiKPZACu4rXAQu` z(7q#$=@>a+?9Kk9cO180p*N^|=^TqoP z!3lv}fN4joQ9~tEncCSU0^s-n{hKM#p3o1j)4nuwUNK4cO&|{8juHEP3=gMFsv%kk zsw3`DLt6*fuk@pCkEgHpCEZMP@G54o!FUDfHhuM>ke0|MR93rCZ|bC$Kiu6-yy)m? z;!F%h4>`$-VAv8zvSVVm=TDe);%b>t-cKZv7l+PvVnH>;62r=JFneRGfXFIvJMf&< z`F&K1bEc;k+~1h1Bf4yh8?QrWX+#jTDtR4ftRipI``_P5QwYCeg>* zZp-&U4@cF3j`}5zBDT42XlmwUF}_=nEM;=_qfj%!ZDbPLywNq~;>eJ_h`PVuY^X4Q zJ+2?4$V0cN(^;7$om)?YNNDXp@_3hLMRH@UpJmP}XwvF>>*MQhM`5ob1#vZbKGsRLX<5&?I;O)!L;(_|=A2R@zPE;IJt5Z5y8MhOjmBAwhRnOU zw>7`o=kF9;n;#_xD;WJ!gXHF9gZdQq<#p`?N4RB6U`_1K3uXqVk${w9wJfr(MDKB8 ztMZYa!lH_vYA0qWxzhyfT9&kad~}H{UUWg|LzovsbU>zQBmLSYR!|spY(|dQCQ)To z71^yTeHZeoE6HnMq%*^P?_16SA~S*;T2D2Q@f2cuI?D8wHj9N5SFW=&wwka++N7h` zb~U%At`>TafM4m@$5mLL82)wI_Jh;T>CwASGc!y+z71;L7PFPkW3uJd3_FubO)XCP z!`SQP0xxC^X~~sO#xqiTP79vp^IyEhI-Uuk|B>=n&;nESm~t9?oYm?F|CwS6yA!@) z#>SCLlhSNrjmvl8>ImpiCCs^B2bO6%kse)rmJ zje~fzy-Zp}7vHorFG1NfuU`B|M3?=bzqX)ARVQ`FYKj7yHAq^Y()UHnx-~RzNc|8L zX%BN9I$^X5;hZ?#4hZTWNghItpLUUKn(#l;7%>c=3Iedk%Z0gjk@95P zU&NQwY3Qp6V*uT>$4R%n=$rt}oQr1>l8GPVm&dBSe4w_7Pf>@=E%SKDAWWd|I)v<# z_hvZ6H5&BKv4E!JT48{4i(f{fL1ML;GelVNgXI&NPr8;QCOleW1Krvl|1XoLmMi#D z4__S(nrpYyxm#Zv8N8(Gxs-R}kyAg9QgwfAiJRs{=bV(?U}}|a4~Fp+w5}1bcZ-+s znL4wT=QQb(DVcs1GZJ?4zXt8Gub>l*Q*F z+8U!o8&&C;e_Hb&J7~3*elYRp)#VyR?7pmH2pg~?_ip`@(~=9dWo0Ae+#h;|k=s}J z^;)76W<};7TcbaR;Ft)MC`yP(LJYUtxw7(znW?H#hAdy_BTzaOI}p3r+$tw#`*pD49aj**4nKZ##1CP_fYn3__5vV}{>b`F_OKO)QvK-Q17;Dpg0|qT1p24!|6yXhembUcBGf$UC@+|iVb+}RlJ@c&nLZq#S*tGXTkCyMIq(VBG=2)3QmPK%#z)Hia4ou`Qir~YCJ|=A+zE1cYtoStLOg6sQ64Ep*8RE&sE(G^ za&}!HsW!2DbJKe=wzqX}IXdfy`Lbnih;|Z4PMWAf z=X1E4=U#_n5TZmhQt)z=RCVQt*k1KWq;^7Ajt!wg+DR`5^djXjKQw?rI0@iPL=t1f zCKOYgNl@Zc^blJqfKFE3rc%G(re?N>G52Yt0a8xGHoUu8#QoD1Ra=QceCvL|x2$^H z)X6FM5R%U`AzU4^KCVP?u{cYRho6s{y?6I=*cil#wuD*stdHh4 z?Yg&bMA}8C>2eH^6Ej4?EN>gCr`VjX_%T-%vsu>RacKAt}}FOg=?ex+22x_vkOvUs}iz*66bpPwJd>hG*JBQ+H9 zD~YP#d25lu#ECyyNe0O8PO5bP==&%*f$5)5;J);KWk(RV&)RKA?M8 z_n8UXz9V#eLKmF><8ahNot@<|x$txIt+)HnbGeRVprJwE2um-lgcy)rh-Tm8mM)~J ztErLxm$yj^*}heSN_TSTuk99p;QRwjtvNO$9cg}+u4CW9)}qHZHlF^N?)h|H-=W1gz_!z(Vs#9 zwOO2A#dajz_c_vF6Gp7Wbh=Wou1TAR{m|E^N@Bz+ktzosb(`sO_E-3GDCobR&3jn^ z9I`RCc4AylW#QBp#I_LtF$_HY;;Z-Au9I8(LSmz5S#qDQlR;fYEc*-qSC~^_qW)r= z@e=lT7ob(6DVtWG&Nl+$jgf+T_0JJ5)#I6aTA-6inMOO`PN<*0sv?Q322J?hI=<)# zLVWrl7nW{MN<5Hdu?Vc0Nj_{Z5!R(RA>v}}g4YoYK~cjH1HxrAQBU1w+m{sgxnc2> zkt+n$#GTP?N`~)@KXy=O4v-VkUH8@mC*xm#l%@pSy{k_W1Z)NQ0J;`;HjTd$Klg5! z&{gzOQ=ICEgMRyiV)^;!d6ksm8PXNUh<)NMu&5-X!{RM4hR(U$bOGC&$Y5{i2HtTP ziNOftRGxROSYSdeHqZr@DX?>+qlahT>3=5%=z}6*vnK(7=VcvnNy#XR7F%3UoHH$5 z6YXj8@C(xp*F*r}Jj0eTPnm; zZlZ73ZoP|eq`=FT(o%M)A)62dqX=X#8W-=Vp`l^2FWd4^ES#RM3apxRl=egN{gabo zJ7H)l3q_Lh1w9B_z|{VHb+P-}t-%Q15HT16YK=vid=!~VC{m6ufjg$D0=h=8x<2)64vSJ02a)QKR;*ED}AL`me zLhWoj-b3X{H5f<$2F!r12*C?&_sg2SWP2h_@sFMCU-O9gcUz^CPz{{czqK#NOWZ83 z!cz4@G+UUYE#(~xFNA1K(8WN8TjMG|a-2dPJS!-AI6qq&?;cnx7G>4EhY5HRQ;8fA zveqLOU3vWE$%3PNY=@*gKyd&ZYK(MCMl8-CcL7P*+hHL23K?}7YK6lq|Ja`0>kegV zglU(7+dmFR%m|G2py&BW{<)!E*98rLs6&;rZY#BsW?O%>Kt39=&Z+1FVDTpb#B*xq zKn1DUE6$_)Yw-RO7PFdl z6pJuw#yohDhybk?h=RMxvf3|fUtwM?Wf(1_?P$ij8J~wmLqOszpUfbjIU(X#wquk_Vt*Qd39%YI*ndOM zruCW~k$CSrHZhC)7#WL!uc96L37${B5(d{jSMFP?7ap3G|jr0=bSM4#n}0`;2ZBNN_fEd}Mh=%sdy16v6{lgIYf)loftsSkH;{gG35 z2OhIHd-g@{H)5VkHrTGy+1kr3wh zCr{!bm~=-!fQ$Qopy@L&QXGKNW3uD;3}DdlmB28(zv6fB-65DL^;NxO;Ka}8hT`8W9{v%f_GV9~sD3>SLT07fQebhO8@MgjdrCBH)l zU^^&^p6cpY6Wlh_4^$5g~R6W<$(GL%{R5}I}G+|8p>Fjv=^yyXOO9H%W zd0)&Z58E03w50Eu91!r$0w$sweBa9he*xAOE!{riD;zgGtrr$|+z>zGf};k*YV)3p z1woI>XFCYw=UW6a{c>fzM0yfrH3aj&ZsHyenML)x%uKC~Su()<`zKu8DO;OrW@9pC zH1*CWs(*UH5J9IMtEZSMbun)FrS?wjcg1h;t`P$t-X!>0*_sZmtj60~i2?d%SUR1o zm0pnQ)tlni*$C8{#c<{WR&AefwfgYDtt-`s`x}Phlsg$o71(M61=YSU^KY^zhBKv& z-`_lv-=J}kjO7`$Q!^7m)gLEy^4)ZRT|Rv+g>Qfu*Ggm(nul@Rk@zCRH>*Lw^&f`P zUTgzz#OmdE{f-NUvxg#E&AjHv8NxK;{z~v55=Z ziBHn-W>O_;Lnio`(Cscfqs@JbNW1T}L$elbct7Tr6#J4k^8M?l%H$p}P}=Ve=2Zw{ zN{uLY+Udf;_;6pooQt#8)XoyV?=02%YD^i!tjji)YWik)uf^`B-WkTMzsy{W-@h^n zvHaY_wsmb%ZrCVrfA8`ZUa*WGf6ke+9Xw%7|MRH zp6Ru*Lr#}W8jC~2p%rxmuml}pT1iY2$G;}`ojn^+oxXK8je+4rf5-UoYD3|um#W(d zU#D0w+VON4@lQ#}!x*ZTFc8NB&*JPM!#xaCYK@#+B^eN4TtKKuVr*?nct-9BHk6`9 zXi7RMNx=lK0jvc(f!XI1hG2@>*m@pwuuKVTn?y7Sr+k_nQ4IB`Pnbm*ux}kkRfES) zzPlL#NBMH%iEScgZPqbB_|%){3XpOP7ZALV4D-8unD^Sd)CXF|1x@Fk$A0Xu*~TYfG9bs5)ivXnkm3dGC;!og0+F0pl!n) zF;OQhTmtyS<$>OBz4#>~IuAR$l3~`Yg%X)22XdoN7rypP5(lS4Yyk~AS~nt75r|X+ zru{zqLW;fdXs8K~)6T_%dC4$&APLFXTs&hJx zV@W`X)Qa8S$G|CCUz&tw?wVa`SErVW=)iuv2d#jzF{}PS-mjZebbC`#Q&bX%1YZp0nwDx-`YOY7Ke(wU z@XIdessgXPxbsOlOtI@FazC?WyXlYC0^}9QPpL|xno(6WR;v@t^C;l4dUhp_qTh03 zO6tmIK&aVap1po-HxN8gP`Z52|YeOfw9>3lwwzf0VE!_);sw zbhh}eJAM&~?YktE@im8^+m}0>wOv9GJFNbAI!H4fm=OJXDBf{L^#?vZq4nn=&iYFJ zUw`R_u=h8SwJ1LKfK$HIT4xXvw)u7(gW0tE{;j_SHU-aGJ~ zG51mglP8$>6Iqjm&Me}-4U3W^sH{S9?T?obC;9WpMEBBv-P))_UQeotGpjbmQTJ6> z<94{Uc#Bk4AC}g?&gF5=E`o()ECp&jXe|G;#)G8}D&!mEqRg=`{@$a`mK~j@O#J1v zLH?eep>a{Zl;{Hh0YsqqEQFWHX`tN%KOy$J?U>^53QTTRk_+331Sdh#Tx+N)%F)~~ zzh{s{rj8VbE@3HVAhfu9%`iKEM>6WD1SYW(6MMyDCn6FHH2NU=@ez}64NRzfbR z8-NnIX#HlTC=}&*$}mP9RK#5DgwE&Gdjmvt?Ju}j=q7cUF8w*8;lFfzfzei3rt~;z z$wv%L7x(N#soTE79|K=#W#ZThD#g)si~ z1PC!}FOtSKf?Qe9X~>5AxozSY00Twn3~loiM2LQ*@}+2&BUJhO$O;(7x4|p?6`Bol zUK|QN3!@#)igGp;sNy!yhm1i7Li+MLm;v5edo=oeSaMH}aR&7a3N=RzZu^3%XkKes z;K~!SVm=`H)qk{O`w~3D6c&jyHy28_0YHdB%3lgpl*ht0f0{FL=fsdfO+ClY1UAA6 zv0V5)k&VAiU!r+Y_ed+5k6@MHx=`|+4v^w4S$)W`o5D_kk;YaRR|$^@v6ZCL>@X_$ zX^$G&K3#Y(MR#G_)F)K19(yp`1scBxL@lx}oCOjvp%pTqQX($_trvkvsD(6j+ADSy zyYOM|A+$Bb8+p2pNq>oC3L`iy8A!0&V2p0Qb+Go$)ugQX+UmP@5zq@(JfA8o5t3qv zuv7};Et=ffGPN4Fsp%|079B$neV!|s8p1+1s1%_I&@D@(n^Ks5qIqHzZRZxtn=ol< zY`I{g{sfnv_G&UfIC5eiTaeoXViW`f)e9)sQJ_MsZZrpe%;yRhN|vBsS|zHx)t0L| zz^0CyRgWz?I!PC#$&wK^xQ!yLNFlUQ$I<1D^Ub{geE@QX#{c^qZ?#6F6o7gp>2AwchG$_mGcFHb)`?}=qH*WX9w`m9f?@FSBk9Jt}Ad@=l-%& zNv&i#u}aZG^=(%X0g8@-AV-oH1%KQe`H}Ajh}ev{(PJp1m9&DxF*m2CJf99sc#5?c zP-T0=tBLWGYA{Q^Ees{O5kUURRN#E=KzFHDiG=R8``&VV%y{Sv1AeRqiA2c2)$R)E zNZbdMl*UEDDjn8PoYxKTvR$2-2eZ2!y76}cn73oYjwZrx3?y8{7$Acf{7Guad6 zY%}aYBVlD1Kb=7)F2LV$gl-F>%>*yC#*IdYA=cuoG~&DY^I`t%x)DY9aTB?`M8`=+ zo{Rle4K)Qr8+Ag6dVqWfPd4Vix50!j0t=)ZDB;xSe_lLpyEA}&eRCbb{f9XWBmWH2 zWq7E|TNt!qW_YDvH}Ql17|RyU++K0m*g`2yZiGl&<9u>wY3_HzZhYLUI`RBVV(((z zk{leoGl=ob~f9qkEvsDUuMpD1%oGaWRCZrei_Y9JK z61f@7s;3d3AQNO~hcLXGPsTD>2U9$|M}IZy;DlU_zdR*Z&p`E^&@TU1%D)^6F)}TPTIkRP3z!>(Tl|^Vkl+S6`MzXdHj+T`#N?U@ zi(!D+!FEy<14RWo+0z;Gb>rPnV^>RY`oDIKKT3+(6S5;pe_mPhXSt=RWfF|G*zL`t zhvd=hgvZRI8fR)N2R9s}~L&zV5SraI3N3+~LJlYYdBFF{; zs9b#C~nM1fT&5ipgjZH2O)ec1*B|>N;bEi=$=T!EEY!__>h%uvF)%h zB_mBtMd_)a-v`Tep{yq@Y%wFmo)Y`pis3(Me~HP%Ku{{rslg_w+oMP!uLH&N-R5>c5Ba9a-G8fshDT^4_i1H2@s~o| zT<2wNHn@CmrbG?)oW?Lrg3mK9AVYx(oJb`UP#o^qp@6Y^im1gQexVZ(1YT*%d6Oq4 zgGeDw1B58{k0Z2^5r&YD0Cwzf!g&nU&vrNcm`+qFKpr0W(&fSa9sjb!!K6H<(z=uG z`_W9vbHZd;fBrhVLQCFmq!4_7s)Ly0*7$Wy-O1y?Ymh0rMc3+$s5igrR9(im&$+-+ zk1yVQ?iB_CEia%ilC^m??c&qm;8Kjz)RszFIXi6YM4~T*b2=TBpwGJ2rK$5A%mx$- zE<5pksn%Tg=|>GUJNwIng|Vm147YU#7j6BtlC1nq-!s=z!V|JL7T95DAbw0`{)Fa# zbML7a%sp1A&Q>^tC?G%z^fpq{A}FsepqHVrc6J&+Owz#+ z0u0JR@5h-J+6On(N37GT`g*cuYk%Ae=FdKGq!9%;8nZjx3W(-dCjd|rrhfdB$ZLMv zQ^u;P6gGElND1=poe$6=W{d{<`iDt{0~+B&zXR&bQ0PoB3J^n@MgA1R{xv2DSS})x zq&N&Y;e*Bm034;LXe-;vKBTQz*1JE!ve7&G6z~IU#BMG8pZ09|v{ZO;QXRo-CAtqj zvMKwD)@P+Zq^~P4atvTdvk_XHljM%SzPzRY?N#|YFJ(#JpHdi%Y)()g+`G5HqklTe z_IqMFXG!}hk^<3cIy$F3lMcn&ZraIjaXCpB-fI7TYnuclHkEx!r17HzTUqp28$`xq zG7@R8U=HyN2qWz*oz}z1ImS{!Y_TWMVIOh0lo*iiQBmPex;g2uiDDp9l!$5T`x}!K zpPi*?K3CMpK89l)W#R^lg9tOr*%>zq5lDi*z#RmlX%>;RI&bEvBwb+6cAS-(Dvm_# z@3eGvP&l*v_D=dN(@SCka)jBqcba~|ZC^W9ca_f`c3egj{v*qZss4M(o8X;({=$N%V&_Qxj9KgoZ;d!68*dT~UzW5mfzD|^AtxGKAss2_6L zLm>Gyu-()6b@EL9zbxh2+wd1rRhhozBHl@!{$6Ax>vdk&eD8^!GYYHc?19N&B%#OH zQj;HSNoF=Os1}J@XJ)%J>m+XDNNC!QVslUm`xLIHK+>nA6uUlBTfjVUl@gB zY?c5Z?KK6&R0hb3v^7rA=t4R{0P#LZRY%r7A_Eeve~9;+3jzcg=dF~EbVf>;<7h=<;Uf8ul8>kbLrmRQf|H|Two@As z8V=yyG8}+Bn`V=1B)cJOVOJ4I3aBN0$b1LWJ(iw3JCPs(-jZzSStO2NArfzV-oUb1 zWFSmp68Pmb`+O7?$$Ge28aS* zBxm`bp+|tmI9+6~c1{lw_=x z1d!+t- zEeLxDqL_n)Z0xzO`&lQkCSQ??fh&Ffx;^^9_mf4{1z)TgMOOKBR}*34tqG$CryLU) zDVvrN{C;gORK-WZ0`VBK;oypM)@)^gb)duOzM>rkNf}W|lU_y=lZ&4pAkrZz$VZdV zYdL(R(&dFsciYK@o6ofzdvkSG94YSzefKtqG6;S0Ni-eKN=UH@Wot(uF&PdkWjYWK zW{WBNL3HKZfnP*Oe%SQpOSqmHR4#p|OnILWxz8R1?(W@dnmTB>r8Ojq z&?ki4@T#nSxOGAj{Qg1#_s!8$_>)@LOQ~w^O_1pAfoR!)J5?2dOQ+wS^!HJ8tj(qhoQ=lI%*ZQWlY2jq4tUz7uK@z9w2WPkH0i49XFuMh z<#YXD-Oqkf+U3X9kI<=L;$jT*hj&Tb=^0~U#!d6)Uvai;7;j!!isl96+2bjW%X}IN z8IO%d3x={PAyDA=Dy(QF0?!MvWGdUw2kr8#bkX;z=C!Y7#q0CuvMH_7mn@`-!;b(A z``T(czO9Rj{rIc!bEP}S0MW<7AG@xvhwTrU8r`MrUC}h919xVnJHt=-m*K(Kvv){S z6wIn*jVcpkbk2W1$bQZ!6dZg3iWl7L_Y0b*CFS9!YJ=f*9Q2=M2r<)Q9N9im*qGvk zjG7ewkcmD*w=7yvUmB7wCBju!Bv_5)60iqzwdA)nd7m_XeVJQK*|~V%&N3u9b>&X% z?=a;YG-fUD1_nDlfSP=2LLRXk3Ij({ z$JxhzvR~A7uh}XXYR^c zODeW<%|g1gR+B$Vt^WS2T^iAOBlo&?-Q6AAGk;eWq`@>L<%$ViQzON-`)OK?gDh%_D%x+jH5VZHyYK*khtcj&g4=!&!5 zKZ?8OyS6ute*}JR+VF=2`M>YyKx1W9Ins6>OlDOJ+I6O=dQ{z*H)r;$1(}=+H0E(} zaXeozFW6=N_8l6tM*@Z3PP+C`nb&PK42xc#bE|5#4J#P-k7B7smbtIVUSXRSCc2_b zuDMOcyfZIP&T9PFE^}~W*3YlUYuZHi6?9yYQ{dO%D71A#9OJLUZx#P?`#Hp7>?uOi zmD#V<>`B5kZ28fYOVKMhM^LvKLcwDQ@}~*g%{vRf!>;*vmR(&aW2t|!iVQLzf6NJ> zIRmB1M-_D@Ogn+6xSMP0yz!4;T69NJB!5tqS4}wATP!8pW4Zl_>M^uHc-kCKnjk75 zTlBKGm0*!X+Q~MB+NlmQ5oT<6IW5?S=7j>u7Y%&ga8MBG z5B>et6t{D8yWoAju`KG8G?=<*xYs-LFxk<(DMydaUGl+S&WOxN(99sG@d@a)CRE_k z*ylGa#5Cx>r+=wWn`SZ&B{HulgX49u^r;=j!=Q5eV z{y7xk&vG?@-AsslGws9ujW55JgzMeS+E(k&z7DVNPA8fVCmkH7I%k#Rnt2_AYzGq@ zKhXiQJ~c$n_7Z5_Zg(GES<%aO49XVVHp}yQ#dZ0+*0a6N{d%#>Z}TGjL3pxDB-{Pa z)%f1WqiOi@jX5K^*}s<|ZOV4GC(TjHW>{X@?4ulO@O~gOm5VZG_0qXrXpxbI{2T)x zLe^iMB`C!!rhToil#^?!Hz-EomJzmto88Sl064)H#i3kFJ=8unYMtzh5EuwTyWlUX=NGfyv*l0wy3u3o>V~NrvD^wrl&1ly!CB1pXDx(*x=z!Djpr9Nm;nUkxTzgOP(8al3t0lz&k3}<+RFS~7HN#ie8`$^`8F{@_hyGqDt>zBvvYq8?r4t>n z7w?9yxP2EfkGJRP+7-R!_DN68R)tmn2Ny?-N+)JqkdBs5e2hK|*$ z#0G4kewZ#OU*V*K`(k^7CfmtgD#cMvByxiYYu&Qw9i7Frg=K}*R>Iws2Q!H+OFcy4 zdxDeLzE2HH#b~KAVrD)dwKn;#Fpvn|K%m|xqy4pC#xb6>VRt}bx;;^g{lhkJ=ploU zbQ&J`%ayc1JVEwmh^5kmlxBsxzibnlHaDOfLgg;=_l2Mc1&%K|wTI2n^m3z}ye0k$Iwu=baZld-)OK_-7cF{j0 zslUM|vUyJ%{l_7$+W2EHQCxS|L6Esu-)vuhF>mW!=8u*F#ih!T+ylMMEVCFTRKYyV zL(n+%-}aL^^Fc51^irL7=f0}>uPK|$lp6oSt2Erz(!=#w&M&!PgyT^f$4OC)eA-~2 zu=T<2V7B;<=L>PEMo%0@*Lxm(>E)_XGnDrZ0J#-twMAXNaq=vI4KOT@sRk(_&C&7W zfW|(CHbpHxVDtH$?-+yku6|c0)2_k`e87DyC%sEaY-dEsMYtx0Y7ekgwi*i#O5rTQ z6-e5i;AV{Q_gbO0$OAq12citsK0(oY02Rc<#FOLS1V5Lq;|Nco1E6mmBqaV5s43P9 z{J87WV>~`>YIIk#3RqwusQy$HWPw;(R9QoKjS-5?ogAh3j0nVcdJ_^pMl?tiIwwl6{ zI(D_u*|v)GT_#K4gYw*s1*HaU@JZPc$h?`@Z1lWgA>>UQS7ZShyI2OWz5VucoVqT3 zWMc!FvD0>#l!h;>9|NB5S0X_kttk&yGT0e~%oR1fYme$HNJA{1Q*YWc0`g@&w285T zv*f!)po3bZeP{FBUMXjVkjz0FwM%!U550a`#t=B`^Tu=`*;=zam+Lg8^=&^m? zQVEWL<*EyOZ4@l(E(0vR+1!l_P+CChY84x={_DKU+t@;lvhf@bT7mcapjBG2AtOXZ z=$|D5U7mupN%@AHZh){c0T9C9f5>1XNoe9{)Fu*UX(5vLuU|raL2v8jfh)}?d{oZB zRROz|IT1i;A_CC5;-*X;ugT39%UBiprJY+J=)7d%r^nK^k^1Umw_x_+?aOP3CJlm9 zW8~6{dVxmS33LMTe-2I8-IJc)UZk0zD%}2C@hVBw5We55Q|#j^sq*k}d;5 zUaF0bo_(p&auz~U9)Nl^U@duMXdaOAIT6i27mVV{yAI;g&kk&76~#_ph}e$P=bmtF zS31(MvNdS^UU3V;FN4Ta1*T-XQb^WGuzb7e_DNKFhGd{~c*!sZ>ZyTK%YS=g{VBse z=q;blzv-g`%sr(n7W0z56lesa?TGk&{Vs&H($AxbPQeex&jN*3+PL9%g86sFOxAV3 zmp(kq1@1FMOb%JKy+1QIyXdjHQKVt6cWK<6x*Zyvx)S>DkC9dj<{U^Ci@bq%uU`{R zZTYw)iRFNmt_B3J&A(^YFbh;g6Z%p&LjMzP3uH{~(Y7nbuNCG2@Oh<>1%yfsP>~ua zh26+M@{up)Au{Eo6T=uO;aACofWu=aNM*+3J!1=md+pDAbq?!>xZK%;C#ttaS`0>> z1YnuqqW`9<-3_~kjJBMILC{27P%Zh;WS*MaaL1g8f!&Jtej|56w&~j!RvX76MCQKh>gh~+ zwT@`5r(b7b&{Z-%R5`7b)ZoMvz$vsL#djhVJy-8<@=1Tdu&06!h49PHCj!P#dG?Y0 zMaar3*Y#^wj+pqBS}@Bq5d=e^jMH#@b1Ay=d@-ucCbgum zl6eQ;vAl>8Mp6zkv2EmANKlL;i-S``B{ngTFR>!n9jgR?|Ha9lwP<9!Yfx&(5oi7qnNlgs0TT+6J-|7CpgHWGK1EqDj1|G*fkWh9Gx3jtkEohCN^}$qCUy)*b zR*Y>ji*>Etk%!I->X6&ca^CQfnaN}omR5;a+-juMH64x1t?d6NP0IDeiHB0^-#2}0 z6$s2K9O%~z$|_X8(Wn^glDYm~!$+}G$+A7n<;p&<*S~vhGsv>2*K^n52rp{EYMO52 zH`+ZJ$PCGm4?sgI2@$c8rGni9(pNKDFbMw97tUvw&!sXIEC{Y6w*otCe-!<_dYjeQ z?OjXmV0U8w-P|qa%4xO&x~a_C)1tjZpJP3CefY=CShqcjnw#eXy97g{5_WwuyfW%XLL2Q`nAw##cw4 z6KfQFFQ3pj@vf(#SgfSl>GIX8YDnLwYx#Htal?P z+jTmYZ)V7JDzv%Svh`XBafQ;T#LCS{H_geh)T0wuR}x-fQUpD?yYPiYLK-svcXl_K ze)h&Bjw`6)VyK}ldhr4-msNrcg8SA1cyHKNsMIx!_0xw*wC$Y%}>qdom&l{y&ZJdDVd zbA>SAGhw^Nc31QY`8`Ji4~e^urZ{U)5dHgGK``Bi2I21n!~fVF5P|PQI(PNl?L(o& zqQBd&l9Wp;s&&vUY8H}(J4EvDBSWxc@6t1 zNoFH3EZB{qOjWIhWQ+dVOdSiH6wZ}H8 zv40eK)YExUP7#18LoW`AA<4q0ek*NxS#5w}o&8bnm8sACMgY1S7ugd?4Qt`#uXxrCrW#Ja^!G-sQD&Z#Doh)hLuAf>yPFNSi+vw#7!acF*C;byrxP?b)j&IGk%=b1?^p2YclMpyID? zZ^q>va!5s@)!&O6IIK)=JP_b@1Z@JP;)`6heETpmtRUGqbevla4_GkIqb1qVKm2pA zJGR4#@&AGv0#MW*fbyT&2VgfymO&cY3RbJ@LBAW&Oiaj}#P&W+-fy=2h{m1 z&?ni1Fsj;R&!%4!s^jT$$IfeoG72S=^_U(Y<4}Akn2!lNCQJ&4{v;FP;~3abhNS*d+Lem-y{J=cuNRP{hvMlvS)zi zoFI*O0N4x&FJJUj-3(mUDR6BD5KBl$!8q{%%G%7-gTF2cMOo@FN5FJq_9!*zFQP6G zg~Xy4T%s>_Y+q8bvk8Vt`J85l+p=eH59l{R!65;ml{9uqDKG%8-3~}&)u1GAFOfX;VfW=N zzfp5qgUdt*i6F z%G4`gr#)d#12Cd~D^zSKAW=*0yWRH`+DdsrVoIiSJY25nQ?SZO!K8Cv-Bm#9sQ5~S zHroRT0x~(+V_?9Gr_T|j?n5Ug$`FZ>15tipX?Sw^xtfs3o z1tsF5Pq*22{_Pz8Zh^u!Tk>yU){TKGrA_sxUomP%9E}-W-3=})Rw++izj{^X(_o$; z_iYY6xA#4Ym9C>VxrC<7;WqI%&nmRgb1+@1v;UgytpE0L$){uk52LCk?k6dC z+#Iv;jw>S^+JXyq2QT~kafp=0ewTe$Su81yZL!j?3!7XTQcrHn>8HY2HOhCUW{e?1dY7@a@;5C<(mb@ z!8qJX*A%e!c4GmzHzP~*0jB@fX7v4?Wn?aTe=GPXnT$@hrRpw9o(@bx4a`L@~D}BGycSY}D%Ruove@CvvP5BAo!>ac6m6fh|Z8;I|PXBA2P+~A!JZqeEY`l1E;tZ-TA*E zW%xgiv0)KNjlEI+_8|Ea@>%vPjw}B406Zqi51Y`z0RhR~^@t;qs3$f8L#<&*qH~R_im)AbNd81DCsf3zZPv>OL@%8LCF5v zN{HlvXamkbQj{<{)T)Mjb71iViW_IJC4ZJmn=gfy`HB>0=C#|Ru!>34z{=q3t+_O- z$CX2<5I|}UeC*zYz`JZ1fp!HZ1va7acs(M#a+}r!%2@OT!|#KzPnX+`<`Bc);sfg4 zz8r2X=ukLC>~09D5QTEzW7*D`lE>01gyzaj-AGxLNxbt-fm$>BjKWh4b>T{pnYx@Z zr3D!2m^=iigCSNp!OtMFk|(U$a6fI+2`*Wha4YlVC+{6zO=iO6e>gB_o&MZl+!x`U_$z_42H<$3Te)5i}6tHzjL*Q30I7Kn}`3%sY z8q7Z24wvN30P$Pz@LI9X&UXtn>?^$c!6M1AHdE?$v+fiP;@@O0lvBU!wKLd^k{Z(scP~uD7v1@CE07aYvN5KK>n7WLuVoo7@877x&qkcmhk1f~eYP z$5$+^GpjYjj01A-Z*1L|Mx|u?mT$hU4$r`zHl-I6HUF8u@Z!k|f29ze~9_gds3wN^=w zQup`BE67f~(Rg_uq~Mm8{(DF({?WrZi6BS-qy`YlEMTU*SUJg;CWxw=a9krtUslF! zQfm)K4`|uJZb}_ol_~DiL#KndppH=}lWlu}DSjWsF@jc6Y-tTe; z(js@ELjYkKUFq~%Qdf>t-P%Vc%fYx&CB2t)rWKS--Tzi(2LA-b_(`rP><;uoP3lA7 zBe?4LKnYVG>&c@F6S#i+QIK2hLU}+J)F3s@2X=3Aa{|r06b*J?!H?WpTV?VLvHU&) zE0?UEXiBl^t_PcAOw^GZxj6qtv3Syd=bhgM-C&*`T=u}w(@)+CWwcdS!55uDt0gTJ|S-HLM2WApoZ zicrS0prH8=S6eMg367d{JH}4u@i~GuU?x`0!gJi)A5ZsmCQ`?JZ%8_HY4xKou-LqIx`&nr4+Vi9q*uRKF>Tdg z*i^ym`-H16bOp}jrCkfU{T{lAc0s57RIA2pkF1XWM$>i2W7)Rv+nD@KuKyA zMJ7ny{n|!pm1gU262JwR+SFnH69HiUlZ#pYQ+_eP=qc!|8rzI-7pT&SAc;QX}4cKtNInn=H(W^6p4d)+Yf9 zX@z}Qjx<7?ogUd;StqyH=d8$emE_( zBl~s1#Fein2GOdsn+u-X*^5vN+ygJYlCz|nsptSY(F(%~I44_!&jo5EXDv!;nT zO-8qYE5ha1wnZkU8SPl54b?nl{dW9d$}ht#rNQ?*&#ad$@K9}C;r&QKZe5-@W-%po zK|n;7f9#}=2#Rp=CysnQwKo26Ec4^gloek60ov=bt1TdVpsz8jd8f*4E3I|?bX@~tx!^)RG5^smIZHbEC=Pbq*_S)t@4z5t9r@8bZ83{ zASvZ>s-cZqPai^AWupD`Oq&5ev%o+n!eS0X6ktC$X*vIgxN^7M+%9V2uNpM(t>}Fc zu@i3JN-m}HH^eF#!5%clk`wq+rFI=k+&-ANCh2WW&-o{sOqTh(3&<|(E{nSGY;YuV z`yJRJ;=0VX39U#I#$CSAXZpFo`RoM3UoCLH)|7ymeWmMtyNowabq3YzE9|7sQ@Ft` zW$av68X-Tnt2s75+oq*9?O~IOcHmYYUlqB6-Ze4lDJv+{i%~kPg4M%*x-S}WAO92& z=vJFtSmu!vrCq7cyPoM?90=Be5lJnWPTv5{jx>G391=J@uDI!LdxPP2o9S|2jqE7O ziPx*PZGS-4c9Kh$&hS2vWT*=mwE9FiiB6rXLKwYm3Y&CyveRhi^qba;Q9KML9uF1& z7m#|>qLvi>?Ldh&z4dI+`%3<0ezV@}C@Nnq!-pFW4nNL_ezCH3yQ0PPnjMzbBd|AkJ| zH>zrSQv;Ky14&M9$6-$S%Bbnb%$M)zk9|)&*ud>A=(eoxK8zFo`j|9R$^{Zl(hMcs z)(M((aq#w&g)|g7RSMJVyBZcMrUx5Z}*KE3W;#Rnc-QxLvA3kEHJmW{JNO%|;LTw&`V5J48ms z+GPTdT>wjHxz<+N_h3{Ajqlecp-Z*GVFr_7pFtBxdcT8QOO`!rRqW?eOJV3gi4 z-WsaTvWS(I4MD70(I#QssnR;HYJD!Hau)Ok8FWt`UZNC2tf+hY@s()`STLH^nXfEK zO=}Vqp+6Nw{_tVqqZ&&@!|1qrovNw!D~^K~Lt@%Vs5`F=TalZpr zhw)#lz&19StSAyb<*xT$Xe`aTKc_)Xd!t(N1VEA<=|fAD@~H_I_!xQA1bJl#qAmI+ z^b4%qrUIP@f_M4%C+=GyVw4iyHs!#EdPZIJ2FkAM6mBLN?2Opn;s6~;8GCgYGsJ{Akc*J6OBsBUf5UhKQ z<@R{RLO|sqzLuX8qs^YO2@-@xmW-J_a~ckocDeq}I@hwUj1#mCgISuGF&&ch(m8v@ zCN(lH9P9Hv(wQN$M!xc&k8d?Zo11zhO7D#p&wnM#pD;Wxm+n(fcb|L(k>p&_2wE`d za`@vvjAnxCbVNtpeF?qvDIcqrthfm@;veVxmibS*y*@i6 zYAvxl^0}an;MsO(_Fk_W`1%U?^oj2|UY9=I&n`XV;Sch?@R z#%wfF2*TP9qZBR)H&8n=mA1x!F!B}JOz z=K@-MXWa$WBfYAN_j&~!vs1K_AN!7(@6i}xnqMI~R|=Pk9ja!}qn+qsP2X7)QR#Fu z5Rm24)8KnE7vA<$`F*RCx#j?ql+IpRrkSNZcQyf5p@%~B)VQoWA-7UqI-F;lBjiwv zGq`IpNV*rNl zuK{+hf^}J!r#;aP|AOl>V@#O~R@&Enc|?&(+|xy^VrCNGydS}1AA(`2S%=kI;(dy( z`b*2AVvAo{v^MpZdK7`@D*V=LuldC-*lr6tTJ+}Yo^{dd$-~erGtW)lpS`h7cGg84 zDM#~p5(xI&Snbu(i@BxE@Z}1>#G*V8t>_bvod5bzp6yQ+*K<=cKa=B^pc^eDo5JJ%oN)n7M`=PUNyayB8eNrvsXt>ut;G-ujdsE5I{9GHl!vGto;U;;0%;J=R#A?BkPNLoMa2z+B0*{ z)^x8b>I(FF0e-cWr2=k?+%_W%g(nt6p@^j^9m*k`E<<9ZA^8Q4k#kaIP|Lv35C7!yRTQX5V`)Ec5p8#1L7KvifjxHojd8aqJQ!1+QlfA+) z@^S7D?$15}^O$i7!I+rql4z}b?Q8&@4ch^oSvQkU{-E-tl&B|8RUFvh^Yr>1N(!cN zNvKT64IHZq+I0aag^}GoFM)X20~_Wq2MRz4cRToPRo``8!>)zlOcKMxySAgLzae=m z@Q@VXKeNK43`FlZn?7jkbivv*_n?bA5$P(EhLg;6vj9f&NkhG+8&w>GVo2QiQnHrP zhc4hNj;QH^>MKBE6`)`D23bh?;DjDU!MFkRXlrjXv?50(uK&y^_uY1wub=uE8?1gH zO8fJ~cGn&9wehLfF%JLQA$fzpvWL{D(Fvd+Qe2)h7Xyw)(^q#07iTZr>pttghEuxP z`1Ba>w?-LU5qUDx05X0{JI?&R*heDY7K)J4?qXUG7izbI3FX-eYEPUyxk%ASH`q*Q+ z)5~`qYpvDylk>xt>87mpCy1`Mn(Gf)D>*tv=qQdU3p+{WEOR-p!|j2v8G?Y9gWmjh17EN_RGn2Etu?{I@;qV`X? z(5q7350de-0$fD^yAEdJK9oLtFeWZ7kYWFWRep_nZ4vOhEV=y8n<)`UzqqfsrBWM6dAxqZOBSm>cN`b#Jp0Xu4eSrELYbZbAgOK0GVrw|=lS06 zNDm4y3QX%0%NX)wwr!8qnOys_Uu1M1dAiB=Xp_q&Pp_B%skPDS2Expdt`J3gGG{cJ?OHtwz; zvr=?PNlp^?wgV2BTSfalAt_;I(ywXH z7z@eN_=Zc{xixn%`%m&4Tby)(#VHKuOVPzInaak6cUZJnBYquku;{VcHgXBsW8c=(2)SQekq^lXO3D~jJKU*4mI;LgP@_L1XS-ePoLEl&ON}UW1GQ9|w zZo641 z+X zi;Z2j!|J<}02`}87DfLVF8|!|cGM#ol~>84Nd>O&3vM)#{wzIRhp}kUdr#`eCp~@L zRCh>}@>K(tC(ST%XIUh^cyP#IHMnr3y}QtWj){f0sudu(uD@qK15r1ti@7z=Hg z%riaBO}6#O=-#O;rv3c(P7_!5E0_kejMn*ovn$F&(Fu7o(e34SW-f;2bXYONPGvQ5qvxpSZXgQe+f1!1@@YBhXk?h{&FKywkXZInDeGFqZ~u+2qVPG?QQv7>*a^+%X!w3WHX*({7+r`5PZNg zAGqnUq7fC|f-9E%W@Naoad> z4cqGM+tTM+6*T%R&h}jU<|t!pxLP~)Od!{Pnb(%1gLb|Fv7^kWhp<{*?DkTM&TP#I zbB07Jr(ZHjX?a6`A@!?QS9-$uX_`uoYavpQn9^H-Usqer^#eP5x+jOp-_#xBz%P8d zhl%+VbxahWvM30jM+^tQol=)&=Z6p1$hBc~>VLu{uuP`X zitbCEJ%E%v6lt_=j7i9;t^yh{!wzNk(V=kALx4g`v#D*3H2X>Yt|7Z4r^wEqcGscQ zaQhH(s?~K!_)B!%sv;n)4*?_D(t}sZ+2dlm*I5PcUy@xlb~aO0B*4S3;ixNrJ;N1gz&1CDub7{&IGKyAj{NG7bD2eFaKcYFtxpZhk?H1Z!=%EKC(kgnuxa$2ZHOiEv9M|+V< zht41wyE;M_$o9fFPtAmShJzCHBI?^|57H1|Xf z>+J2(B#r#icXU`X^UIR9E8R%Si|WJIc0W=#)j0o#KqrHh`;g_(>LX85j0(i}Q4a;0 zIx>zs%4O5_V10On)}qzp^wc>t5oRe_nsOTR`9rfLgz7@?x=~?q3J({Av?9i6UF=eJp~{)tIzBo>*B{uLYDo#b6et{ zSIajIF@_xp13QeyUrK8PxdbZ*UxA8kttLv&I&0jk)oIzaHs3MIgn$ohE(hglZTq%& zOM%sCA-$Yc#@T|#hZl*+p7dHhu9C(=dx#!DEkc&=6nF}6z2`4|xEaF}_}$#AibqWm8Wg#YY8#LxxAD~OxQU(^UP?=$Xus@~az!3PODo$6GNw6Lw2 z2RntJkWMgqVMz=#_FC4Lx6T)jGQ{md!EnPk9Z5}bgxh4dt6+p;&Ch|S6l2vlUAX( zDnR@%4oyZ|$7Pm2M2K3p29`_ct<*I|_nr00gzgsHy;t-i=MKBiTx$y& z1Yi)5ba^apUT1k36qR@BA(V{~ts;cw5&Ds9(_%`NbGxKrR?Q55J*WUI_6^%Qor;DR zIM*FCr~2x;nWv{SmHYa05Y}a`S6qcw*P=W|`xw6~FRPB1cJE=>ScY*yrZD0&optsu zS^s0B%Myy$ddB`nK|aFoNGD4aF&>YBNbRsE$8#dMIW4Zm3ryJf=g!jriR{rHOGS9j zC01{%Y!%AEBLgReM!4`7am*y|!4qbyucqKoEU&{m|L*d)?@MS?aW1K#kzbpVR+h4b z5ddXgy38cS4KP^D=Yz#$J(Ombt2axz;Fho{5aKZpT6GnT-Szdd2!S^ZbKJwnwp1XVqjvH%tB=TEGP1TV+(62 zyX&9?34_zn+4SMGc9UBH?wey_>FhnU0_~mu=@pclaHz0J6t<}oiafapTOBU6-Keo# zr@d1TK;F4zYaiq|a)RCDjA)|xA8H4oExyH~_sR`#ox$Y9>iFVNjyp*CSX`PrEFbMF`4p||)qIN|TP^0CfDN1S{#2Y>jA zg~ODGJ6t2yVZww9KqWx%`O9#VsLZQoJ)#+ zp$ZOrkZjjX&Ns+2Z>z2om!W9x&$-gh;&Z+}YB6++1*ygYhI!X~Hh!5)5!bPKBrr;K zMg)z2q}*z+PZL-)(&`*3tIusKFiVuN1XwM6l`|)iOu(dSo2yNBc{$LQR z6T_CRw`e;+HA-;f6fr%KQqI3&w|F=S0n;*{56FeR*4*QCY`m`gl)jg zKW!KIQ}d;EX*6cFW;(C7KW(xBGde2(jHwgeGEcAfOLbN-6FP=AVmPdX_Ud^~`@*!;u9LB%#yJa^F~yDn`A- zL}{udgub|hU~Wp@1jHOKVIHlXD4csp5`PxH(zGXOHJa9>?d{8_geQK zr%R0wXz{W0F%6_GBME{F z#^n~tJAEw$#4U$*_&%6zz05{&-^H}<1cmoMw6s^MJ4**+^Xm0$I!jv*p9)(!dh8i0 z^h*+uUG^RbB=yc7_Q7lmE=@6R9vInaJu%g-$4||-6=L_NqnG~DdX+3DrMGK2r7g_v zo7N+~K-z7q^#O-c-qO9L0#2i*PU-tpw@U)t^WBREXzgImjc`eg?bl@ClqRruku7%J z4a*Lpy~tw8Hu0P-eREbYjElSX`riHd%8dR^TXX&(!na>gc3{sO z_ch3_sIOcQr1=?zi{dPNl`**cBzFVXw{I6fpT}OWcVjrLQ|lkMd=P;8CX=mrL*5^q=l zMwD(da=vNN22;J`Y*87oPisFc^uE#Da|ND}JFQo?$&cR{>pt1GR&$5<=(%e0VO2O& zoyKsn&+atPEU?Bs?3vC$hEuayPEiZqV6^mW;qn`-MV;XH>5U4lds?K5tvC)Bae4(D zZ;KmTNIx{TXd%>u5x>Q32zcc95Ek_`XayO2Xi!!%PnCI{h;CSSUId?>v(!BJkL$k> zOpqO?1xL53UkeljT{?82OJXD!%*49v>e0lzepLl`g}efOz}|Kc2vv52M7EW-xoVD8 zW$MEyHX{hqCfrz44cDjYGSY@On1uKa2jw<>HlqkU)^)L3{sF+o)t+x?l&(PAXlC{W z9LH6^S(L#)LAs5D50H;*I3d1SWR;Rj_Nob_|7Hnwo-}`3^cJw?~1?^U}y3@7K3*6jYcm%EqjH=~|prTRV>HV`-1c|7n)x54t`4dU7xjqL_WdCEvx?RUy+7^=(tv+~TDa{h)_9!_>2gn+>+ zH||^(9s=YLQyLMyv2w6a9 z50Vv(<@@Yhg<~A6lv+eBH6A4pv@xi{tVfTXo_~z46Kc$(=`H64#|C7iw zkLPbo3d`yJSd>;9bW!(^%9zro+ue1{wbAQyN;lWtQ02`L9Y}x@bGkK}dJsOoP1@30 zZ~Mx8Ip(Ex+xYU^A_s!e%eG~G6J$w!6zsZ_B2Z0CU574zwlE8&scG-1y}O6nr-g{^ z3G7*ER#viNSe!X+z+vU1V({*MH<}Q~(j9yh}Rc> z-2jTi)m1}STvv)=HMS^TW%ClRBY}>(?g?;dHCNucrztrFCT{Fw5yJC-`z?KUyjMks zragAd{LBK$f0E85+~UPqVYC({Y7p(x#TtS%!ERk6Qe1Iai`7|39GYJ!C40B0n;}!X zPv4qQJ7X*N{LmNq@px(hWF;56Mlr6~k)-DhZE3A^c3H0OZ`#UTCbNoy2bmbqm4nKB2Shbn| zJMnXVMf{#j=4<3vO~1thUg5Donp=PiC9hc#&XH(6Q%6x!gZ<$|B#L{Rj^X>y>l@FQ zI>ldg*Huio@#6AY>y!F`e1@&E5X#khsGjoOx}hKKC|%Kz+-1G*3B1BFK@#-1>a5lV zMln&9iO(IX#KS}*eu8D zbVF^oN^%adY3lh{@fPcPSl%n1^PoICKy8SjyVQ$^$hgr`ZQ_smq-ds%*k3=*MSYQdHy8hm<=>=K z_!%hcwrMAv`9ti7X1+9`I&pa{hsbC%a4wG_47YA}Igwpo##|i_hr#q4(>kpCv58Zp ztUM)X{^O41M)@^^>-l%ZUN^v0co=<^d$Z?hGHaPOdayD7Gzvyft-wMn5wNnNiC$@S0R93#m`yH1% z$EagaWxdcqng|cQD6Oc=h?E8vVS3jh^en;f3O9RvZ{Qq{zsKoKe3m(Mo}1YY4+>0V zD9fTV_o#l=NYRu_#c!L*nd}%=mLS?F3R;o0&#vKhZ>^RlvBt@UPy0LN4ycEo>9KCL z+CaG-)O`B)tyn8a-M`{UjS5(A8quT^O3mb9QU z3GIK42LCI7BhJQ%rfItQ%z5}2flb?fGy>M>( zM&47sU&GqM<)9>}^k7nMM@#<-|8ec?!mv1A$oTIE?khFO6^3*6s=exGG-J1e%ZM48 zQcpjJQ4KoJ=uGVOuYwz}-cIidZkmhp5)>Xa_gb1n=cwH%V~#XcqfP9x?#|yb&zfsF z*uXxp#JH)b5#9Wb-eR3HeR>jbf+moAN`<3b@*kvJCle-0{w^GdrRNfviJ81%PmoFj z5|nell8(LSp_8FT!IkgtZfTS~As|Nt3CgS zE=}JqTBpxeSw3|?Kj~gPUkg6Q=F9U2twZ?fCkrH_(H%MR7U^&8wUls6;>6vWm8Ffop>Yk^FQ8U=`n}B?Ae~QsIXB0iDbV+Q# za4_>K7(Ykm>o&<6P_j`+RYg>KLv?nav2y_GC%)g(@j3>}Gk7K+aF=cj*Y&aPjnj2c zqIY-PuN6NE+rY{;>%?c(1ezuMA>qJE%JYS?v~`X*+>B1I*DKU=uXP|8Cy98~TAI%QDJEwl0H;Lha+CleLD_xOeRL{_IJGps9ySTa`z>v~1IjGlO z8pRE!8@X|cuUGO|Ay8BAHQB_w0#ulW9?`ZpZ^8G45zui_vE zbP^IE3f-@-ovQEgx8?&nbF*l=*UWiRPHfRRN!BQ*u1pqx*vemHSvmv1G?gvt?r*e> z!BD}x1Yp)WGjP>sJ~_Sk5M<&Jsp82rZ4&9$lVnAf3$*Dq%z8%*PB39zUCp@Ptz7h2ttdc~LVu@n^PSk)c!9&e8b<ykuihUq^vcTf^`_nUJJ|)misS!hqtzI(Kn+eFSsGSx~F#A(2{GpJb;I$jK-w z2Iw4_CWeg|)e^u#k0d$IK*)O(+t{;3Qo-GQ#Y*|_gq)YK>pl@MLE;DItp?v%?)c0V zmh6aJv@d@+kH9iw@Ixb$UA{JUa4Yf-9@i>r$_*m^%g)$iO6N5=lW;4aTc)=U*qWTt z*?RmD8-nR*c3SCD0DvL64SVew{Y0l^10{`Z<8S$WkK*8uYmxhi0D<2vmdzzMOZwab zcQj-U=G}enq+gG*c}AwO;CTFXDewi4YT1)OE7P^9%^AB=@D_e}VDbz? zzL4RS8TyB8QU2h{Wvj0p_;VF)M{p&ZRkXj8du_EHGAoV(V57ywF!4}bBZi7Ph%G(t z1$;EyVs=;}K>ma4Izg9&OC@PCkO!2MTg`JG;p_k%ib)mPhDMhk_qN(tT2YiknQwGl zA4h$9{H))$At|tn=Q-_t&D)dSn;$Ve)*ye$_;f|OJT5Q`KS=~o9kJ7!|V!=du= z40y5P8DGw0(GhK=Ve^k(rM`~2`<9=jS8Y|jg71a5W;*ZP6N>DC7*)Tud-?6Sr3<%< z#=Me2uqObc@bdOlThin1owisbI2R;o8>-CJX~)YBNPYTM0d7M7uMW8ztPoQ7&I~8l z+E1@-J)X77x22itE!zXrNn8g>Df_b+u5FqOGK?nO49T)})%ypJ4Yo|dmLdZ6oGk>F zKlM;vzM$^)xugJDqDcqKZcO^Q&dYifBTKyettHbQ>DNsNKGM}g!mfynDwqfXgLbXi zI+~U6_s@i%uoip54s7@Lpw>k!ZUR| z0bS&(HV-0Yw#|(hzYQ*6!Y!pTKEL<($+n9L3$g3~0vj?qHhF!FOMRQ2^96tmRpJU& zX2U+}Km!D(T8LI`>wD~nZ`#?kitrPSW|=ixOr6^89`wx<*UC&hdmLRHG7HXhHzxnz z*=+ab?B)<09M)$y^@x}a+qhi2+)7G1M3Mj{wAEI>2g~)OBT1pn&GNG#T0>e_{JDhD zoYeaTIxQr$uFQ{%>sQ1UdCgd=niyZ|^^s14U&N(lYnMQ$B2Vv1dAxg0ZoRRF07Jfw ze&V%#c3?D(0wDf@3se@jWf?%w55m(y%nX@~RJVt|TjI06?DDc635lD&wK7iMh3xAw zV%t7ExH6DwqTEe9tCH#d^MXTX%wNV-^ZTSBcSQ{j3LBRXXn^ib$x?XMl*R*^TOsoX zDG}35emmtn3uVM1uD>X(I%u>-OkMwS;8Lwu!w}>jw*Pge4=wD)f^`&@f6fwJ-!ey^ z0;^*tD>Si1%ZVQ4rdAk|zuDjgZd?AaBGrUzxDF`q-7`5 zZGTz&sBqzfb2>K)bB}F!iZR^KFBy6(inPm?dQJ*(Brl>%%&m zi#MT~B%GL8$=Vwo>XznrENEG}ivNUXZ%j*95lyLmheH#2q=s(iqY~Lzy!W2(81d6R z`H7VG{f2qp8Rv}7+F?Y}a%^zTi$#g-Z+>y)s*Orz0H=uCb~+D}og0((Vm zc#M4p!6Y6ISj$VYz7&{O73uY-g8>@Nq^^n=Ng{MtdI#Ikk6IEHISa;{q^11RsmIDb zYu$1_m9qn&EH&b+Mmd*&q)oJ9f6x!9V3tPF8oA!U+YRa8RrmiY1P(_bgA__`ei34 zn3VFhUG>8@voc$&H*@9we8K#3DQ`pIAKUi4F)`(9Z!^ytI3%2SDff||+cFvG{x`di zs_OTic{R!VF~|LPvLcT-VA3s*GgXB0En196Gd~rRsNo89(tUQiJlV(UAShg$=YOoU z-foKRsq*!}rlKPRoa-{f|3%pVD&gU21M;DTZBD4I+{AY#!~ECrmp(mDH0~9g?UT9R zn||rA*Uuk-z8uFM&;;tYNY#)vd%rMal4v1@ghY$40q$X%0Z+ccV^-8r+vDP7U$soK zY`v$75*~QAhShgFn7C)ZS=Hk2GP5ZLxR(HkxFgv(MYc~=;|>`w zP!Ows^djke{Kr>GVN6P$q7q6vt925O2YxghiRDa{UMIS3Z$L%$`&z*oS&zBqbjYf0 z=N%}|aseTPqM@C)S)DkS#Hr<`$l_ok8l}`zuTm>F-E0;QIGn^?(<&cugx1qs2I5`} zJI?|^wh=nSw@j7tt%ymUhnvZ7v*O|V9k1~5^z?Cqu{6rQsx zww4)u!L_ed1kEvq*HnE=E=<;SNG#m#_4AAG9_Y|xgkyGaP(?7pi&e)CgD;;iO4Cgs z5#5ei4t|_6A6zlI|9K;PApMpNw8=Dv#s~gjZy9I>v+2nfXew)dLd_;ZmT@TO5dq<| zFSlshmiW8pJ->PR>#J?%(gVPQ7-uB+fr75KXL}&}@>7^$ta6jf_|HtCUk*ixU2eWx zP~3Q%)%TbKy;ba(=YGmV9-i+{yDh$-cr$9s@v|YNhomQwC9^>-cAG9lt>H|*7`2zG zU_i{dtL)>+oWKBiJ&Ae{GA(tqRiXk0$!~8I^PRL_FYzk-fE5{zTvaJe_q*@W7NMO9 zcKP-4%4f9y+pm?nX58+`S4@^%pcn1nDE$ZlWC*l=A?T*N$~aYncAzx~i}ZlhHW)at z3!n2+rN#Ee7b>3$47de#6H*Fk?RJ~SZhdvyyG~$Wks#BHrm*J>AEgz067Qf0iea49 zZm-P`mPu>!81JGLaKiX5XcYo5KM7{$_ z?OEMAU_6$V?VvBnnpbX?da5|aDqs1}j7*G%j^4WNR!gdJ(@-tVeRnww)be(E2<3Xj z1;_YZc%t*+jK_xy{YQDgRXQ(fr{DH7p@dB^ z=T5t~yw&Q&tWzlEbVkUlO%}CL&xQsk9+jmQ<~IJ0SC)%Dn&`Qk5=*|gXg$S*TakAQ zRBRJB#kEvfT_8-SxUBZHkvU7?!zPMaWUT9C%ct`)=?gt#=VHEYqb&Pxr#7*vQEL~l zy+a&8$01-88DmxmC7|8OaTwA)E1=EWun?HSFxIz2Tl)sBx>TM1;efz;y^4dBm9bDP z(^6xZLeOuO2j?XmjnVw#eR%tYn!y#hMnC;@y-t}d3Ip4+yPy7JB(5`Dnc*#88Fe+=fAce@V;7L3G_hR(c-kvh04+uNe722 zkp|Xh?fc(SdGBtD0O8Dr`-LO@h)o3G)eW*vjZCK^Pm1858n#20YrpM9E z`_3J#v^GRg!}bMH%CqMf;9N`}$fCWclYM(%QI^ei6u<{sZHE|17H2vkT+J}852F`p zv>(Cp_OzO_OS#{Ykm9|LmymPkN%C=}kox+_&IYA>*v?z#7XSUXO~PRD`>b;k@xgog zdTyswR1kj&9+*qFA`qo85ReiCA+;NZpZ*n!NlQ=tgU2JpDK;5(>) z3liPN@Vbc^C_9$PI;K3``me!9?V>%>3q(B$Wil^&6(5IBaU&dFuLu(-8-b>Y7{$l( zA7INtvo&6s@b^p-HdfwA)NAFqn|q}(Y^dSf#7y#{ZkIcEKsfeO=2r^C!_cNRyTYFJ zNGB0$e8q)wTkg&KHucEMoQ=k#-zVw~^&aizZ^&9Fk zAx8S`G7JF+b=+9_4~m)Mz;MEbN#K)`XdVmi6I&qh!HD0t;O1M;THD`D_Br)Upj*wI z0NE&ofy3tzf9kP5{Gcsrbx^9Lzdy^wEip%O>g-5;7;_s2I{t?<`8^$fjud)z-$M^$ z{lLz)vgd(I0p%^!^n33T|5rp*QRWXd>vCxt2$|_-ER#CWsN77#aqIB!;NP?r*Bo6G zW@a)%yh03!Nle5tc?I>|G9Z1Xi)2t(_^Uhc!+pga5=OjF(oVS1!}IV#+;{GH&?+^O zBU;fKfwI&1dnD;_Lb>=1zWX!;fK<3pA92<5$D3@GpHd?L_EyL>r{Ql;jA+@qpZTmsLh zm*}`S2L7!p9uPDDC*!-!Z2>=Z+eQ=D)d}@aDr?J6@iOPU{tj6qozrWb^l$lqe{qb2 zFP$}ZyOQYRC!4*O-77Y?x(i>)zuuU{VG;(m>K%b`-jDo1zbytFA!Gjf@>VGqXyj=h zBd2-)pjD>|TxkMvLSOVma8PbnvSHNper@;Ka3etuNPm!vluIlEWM?BWKD@=Ypfj)* zZ5p0p)6;I%k03h^3mBF*1bbo_HwJCB62b^1R5{TqXUrRAB`mHj<#;k#O1K@CaV;i^{rp>JOJ~GvvbZhL4 zCq8sMyd1j1)H)`fb%H}_Mc*10fA42X58l#NT(-ZIb&3o5_gm9NgsFRVk-|&{je@>E z@ThMc%50reX!~Q~QyFK^7CL!2ftoe*YzUa+DDn0#Wa;69XC6m^Up zUWl1kWd#*?bkRK;;aUPe)ddOtXgqGg!QGYznqgBVs1-$F7us$_iO_pEs2qx>c*QD|JS({i; zl%H=r*{Yy0Itr29GNV)a2J~fB9c|~#41NrTG8cTQ1|R(2IP{F=Xe7d*82uQW*9=;` zq|Z`8gX|m8m9TaDEaLM8P=$%Ieh1`fQNF)w&Nt z@)9bT&KNH9`ukimQ}6qp*_w}Q18tELT(p2!Hc4AX)+yR-lM56GJ90H#I9Uvt{UonH z1jQhjRN@{IbL($10aPusm!h+A?`FX-y+Og?M{aeQ=}2nCl@k&i7!g#QOCGL)j7kh@ zn>gXIy@G5r|F1xYM4?&JSg?Y4Qws$| zk4{2avZ}~IggoK#0;%>d#i=2LsGx=>#LnZUIPO|R^u4LhWN~5JCA)#XFF?tR_kPPH zz?aAu1Gtu{!^{0e6L!z4eW@xdmM0}Dj^P<1|Q5l$Go>bqb*FK!1I^M&-=jCP`20=Q8Y>|hZNj3250fqG1yjVw_nD|AADL79qZj@@a^~I#+3^tB zrVlPmRoF@M614Y@slszde7EZI#aSN=LpornZqPoRr-!Di3{p9t3dG9;3k;P)6ocg*ceH0Zq4NAa}`;LJIJPZW0ES>Y9MpY8Wbj?{hM ze2UNkgp%!*foe5++@B-ly3&}Zc)|KlBPDzGxF@nxRCz3Wmne|vUZ$YaDe%$#Q$S_ikl z01+m*0Jx+&grj1e()UPg2x-bg^{mZ$6PUXsw7?8{G5F3ejCAht`dLa% zCcVdHDC#`@sIX=&q=@^Lr7a=4_l1YB`%5&_<9$c= zcS*5tcW%5CaW__3xpiG@(@$QC@||Zxt%uLf|2cWJCqXqXaM^h6=>w&~+_6QB5d?0t zQ~7x-Mf0M?19Xpx+BAP#dx-4V;n|$(slzb{Rmv~yyI0P@%Q9{?D?&FX9)IHX$NXpg z#e6FtwJL9y)*Ux0&$m+*QYEoa28o|j1L9>)Y^o(}$mksw1^LQf(^F88+3q#4{y^j7 zwECl*tVC?U^RLQsHm~j&v;?aCWGaN@=tba??)6Vz$D{;VW7`$IENd=D`j0g6a)h^>~!i@Bp$QSoc@{6Q%?@E zxF#&Ouu`}Rnu^M7yTEN$FOJTO5{v(u@lM(PCzeBFxr zxzHS4!-|M!@^TQMd?#t~V=>sMgRred4=|l?s?nYcG*0B?COomkO4N=ALU^f}WeK6S z`4zK(UpIb#y~KZq#or0+VQ8Ki12A*SWduL>8^0I)8oL`8P9Z?w+>hjg5~Uu=51qC) z852OB-dB8z5&!#Ri6C<9pOcbPuOtnG)b!g8drp0H^&}-igk(LCz^=V$kuzygh{6~l zOf<`HEv9#WTk`B;_A)o58MW2%)jcTIT|+`MUXe(znV+;wsJ0K_E1Vo&@WedNUrp^Q z?s!53p#dgx{-25Q1p6Lik@0?q-y;*cQmNby$58Mf-jQiNWs%4%X<7IV#%JWs7Xowj zVX)Nr>Hx=Tq01YY65uIn5X_jpBHAG$*Zv9u>dxZq=4#PSE}1kYB*iV0R?v)6SU&%t z5Tz!(yq^6Nl>J?6RVLqGVeCPq>Q`c#c86l-D{ksA%)JtXEb`b7VYkS}16~z=z&#zkR8<{R=@yiAV~g*f<({&YE9AbMO_|_A9g`QV2!Ns1{&iro6Xm%}(^) ziMzO@PlUHU(7CAxP`uAnJ8+U_ajnS{^Jofsd;s*#qURd+swS2Pmqlx7XWauy0dc@?Y2IoJ%2Ps9f1nT=HdDEauJQ9ko-8M}c`uuN zOEEM6V`pdVMi+aH4o+mw6apRKVRitR{L==W2w3hjT#)ccEw8sls~bQP{;G%gB}P?O zcLn^Z#sLeM*Dy$hASrxo7U{oxKbNpjj@F3K^D+bRu*3#B+hRA0e=@3rafCDfwuucy&@QWdLS z;B3FQZwD0gsbsBJq=im?_bE(SVc@b_%Cm3p4rWn^)>$K|D?$ebd>wdf&&1K3uy&Rc zl=b_LNGzfPIJfGIm~H2tR!lzC5qKfw%tATW%^7L6=l9yh>*0`|DQEKk9w=LH;!_+g zDw+EsW}|71-fgSfF>Rc6Gr_v==g(gv3)ijxYy#GV>h^<(8270FIcwJItp9P6IuAT__6Vr!By18$DDdp}u4z@UX zLafajmEJ4h@=1#-x*@?604Zm#w|O}rChr`-JKh*T9q9_8xdGPGbt)jfoa z#sUhP5=VyQazy)_l{T3lTYep_l^EpW!RUHw#PkINV=C-6` zpQT0hSRDSER>X^-u7F-N)#9?)pZne&<%*@aB%|$#BzoW$e0A#OoCx~gXF%ImX%Fc@ z+Cqx#FQN28r1npoZF8z;51RIsL*mv;IPl+sZc1;dUc&tcOUFlDN=T9mc~v%O9g9n( zFc*L>v7}w?vMoYn@;=pch( zoBz`3S5`7^O(HQVBG$%i9ytrpm*&1Y*|81E*;W)+p4 za{7?@@q^)D2r|=Lz2G&fY&@{JU&x1eTqo8p?!Qqhzw`Hx|B$q%v)yLxw0lk;8mG+% zPhkb`&$AW%@FcuM^BxSSvW=xCgg?PK$}SNn@aX%IIH)zkD;h^m#57xcPR3Ux>*uhS z9rtndljH>e_2LzAkCvk)oPG;m|E1awSzC>r-v>b5Qrrg)-I}ZE!xNG^GO@S_`13PK z@IwP9NeV+`x6(l>pVLO-UNqYgW0!(sRP9-WE~dICRak!yUeD;6><;lv8$z(8JIa%KneNw|=W?@7{$eMMOYA1d$SHl#)&nq!bXOL`p!A z5|C~XrAtb>kp@A!QAz180jVY3U1v<6=Um@&uJ=!P4?pbfwcRe)nrqI_7~>vy0A%{8 zKIyhW>3hV!7t&&BuhUQe9#Uy4O)b5ux<&AC`v5TUco=P+k6ksZs95m+nqJp{alm-O zP>ut(^voHDNYDHY=!(g$e+3Fyh{vBj+|G~_fudgz^lX313#a9rEc1BTxo6JPe1OX$ zNIO*CVL1Am!3tGSp(y=4F5EcPYEFg2;MElIx8I!Hh)8@bZ+*I9T7jmQPENiP>-rJ5 zLWZmlU<<_&o~7@!i1A1ixzF?c1qG#W5ZL|L)x+fgRr=;08{#9HLy_SxR}3bdKk56v zSLm4#^+Ky-0E5UKj4<8I^Xm>N8mtAg5uOgWZ=2F(Ls-yaQTS$4u9gPz!DSxqFl!K2kK=oX>jV&{g4im8Q9M(e(1BhZPE^ED7n5Pn z62$QFT7mbamZ?Z2Ag)_a2u`Oh$u{6*E%kQz0(Ld(FM?pPth{A-J-`I-g6d0Mw4Fun z82wqtxxMh&Go0^wJ?igRkC&CSccAA%^!TOI2LP)MbM2vp>xwDnaRKUZ8|9v)rkSG| z3#Jcl4+^fXKxpmS$x*uMEAq;awLK)BkdcDf9=e4thGH~2g1Fr|h10&9LM(~3hV4W( zk7Lw=O}Bhz{TcYp;>F9-2T{stE6`_LIogXHR5xFSmO=(qwU&)!4k3PI*#^xnPm%#) zp3sN}QCir>?T53y^FN^p9IH&{%mQnHv5zF0*{S?#j%5&`Q*)+}k}I~J#$9HtA8$o= zZ4do%pcHV^mv_hxj++#GY)vrG(P$ohuoiQYtc0gh05-C=@YH53)$AL=YajpBRmv3+OO}ThGDEsT%;UM8IA75jGP-(C)E83nE|OKfn^+z6|7*42qSXyr9(|Dp zs6G3mfT53VAd%20_!?|GqVKO%A+1~@NSIrWP?xSBMMEmo^oD6XSm|(?j}$FNY%m9+o| zIoO56co|rB(4Hg|F8o$Rs!AeU3YU7s#bpPE6@k`J>d?JY*rQAsAmV!9uQZR9nnVC} z{VWUKa?%Ro-~Ixa#=`FUXrJ^!8&R(Pk62lp3Y&rbv%;7g@kqB%1))(3VY&{hqs9A^ za7+k5tBPlGFAuEJ_a|Zfd|6oM>|rAKHk`oGD6$szfAj*m{JK5C)}X6asa?-Q7BPb4 z2GiAcc_{0$)F~$vWseB57})~t$-~(@=*g02Fft%?(sg8#?pD`zBiTHJ9!LOi6k9~V zapJ4xO?!Oz97gY!r9EhQO?sdLrk%ONjjjO5n>lvd+7+OCx^;t;YhmXU0VL)?`!kO$ z^9Hh?eb0xrSU0@EIa^&cqG@nYO8}X4J3~Vh%{a8=jW&^v>eqT{e7pNb|?(XK2SYaY1(M$UX+dKd>iTd%$^*q2%oyb?LL^`{F@LU;U^hY6A?KWZDWu)v9FBb z0X6Vdoh}-VG%*(VF1$H$Om^M&2li;3C+cYee_x9yJa!Z9U2la)!DqRxXal}~$QH7g zT>`5zTf{Vk-m4JhDsQAR&0fwM*$qOn&#>oc3fsVaIInbDYEInQBb1znrNbs}bM^P| zR`c4<5Ky(|N7N|#GExAP`zg41<4sAKQ1m65BO$0GSw(wrzPFw@uVc|Ve1D}y$#2#8 zPtv0Xc@7ECYECNj7CuXTpLI3}H@)LDI~vVan5UvXg7>MwBC zAj?rv)TE)|kI(H{TWW+Df+_M6@B;wGD=Oa?IFizlialH2e*b9WFSN6*g$JqEHPBoEX%T!W2%BFa{M`*$55{lag$ zx}qjyzNNz0F1Sq$9y5nwF?;R8l^Q*?1#%krx&Vw8x>t+TMFW_9ZW@qOkBdUb8ZvMO z#qi`(tN02ku-xW=E0PcW9fGQ@+!yJP8B~u^% zgJ|UgMFg5cah64>6n9e6*-uEraH$j29+XQnpJ=Q8I0PCb0a&kv z4xFLMXcf!H_0ip_>lrE!puz@}eDPbsTtA&zneHy^PUhhLt!Gfi{^3%x2b`T*TRgN+ z;ug5_*~5mCsx2{au;sha1`DmYAxYvtPwZ6XhlB41FmI)@Pyq?XCdk@7ST^UrGzmVM z%(zS=#U@ZBSubRD`!l*BeKz;sG_z~B zdGEFCkpHy@-0euMi+gxgv_j&`hY3KM6JY!E@$?vt_7{{|;f2Q}>XEi1ER6Ey$l7lD zXW3;%7&0g_=Uw4@m>Uu}hVDqXnDN-uu3)r3XaP3*j{1>m_9h=cPgE&s4Rsns=?C`& z8KLy#^7-b}b6pQL_meP4QfR2~&fk zbTX9oI~_Mk?JSVsTUS$8Bxi>L7f8xU0mr?ddqhomiuHGtpUqs3+(_Q)E;Nj9Lb1cR z-9RVJTUB_8rhYcM=KddWUUN-COnk^JC{^X2fB*fP_9-y|^fiC!==RobWXaTH%6>k6 zvP|t{*|cz$%DMS(KXsx7_nCg;jlXXb)BU}@Dg);Rr>|k(&v!wvQ&;7S2Za$qXlS24 zV!09(LvenYr0p?TCP+Kjbge+IcgF7ts)qI6F19EeG|&1yBU7HmO6lTxt9A)5F_Qa1 z50}2};hg*#+&Aaz`pQ@yp;%()kD*>-*oU0<>Dj>_I>o-wG6{^=Qzx89R5p3-0^<%n!OU`gHLOp6%Sz{F5MC`?uq_PNDE=L~p9md) ztcXHUK}N06CqmG$un0LP=RFE#IRE%)h~Kube8>vfTM*~Xa`lbXB=ZB^F}aoL=nJZJ z<6Fo8oo8iXCHD1L?&!I4yUC9fY!)Zsw&gk1{ z%DiPtgIPAMtwRI@H?!p4n_0)SIH)*DlkldsG8Aw-kd`?qrl`@Y-*4PxJ1Oia^!mFu z$$LF-5FM=;sX1?WOtg%L0o3;>|CBoBH8seDQ!Z?qP06L}-8TLi6u#-P)$676 zat~KrH--r0xT+F!VNiq7bO^C8sz2yB9@RHAce#%#Gd`)@RxJM$$4K=DGfX{XXLERhW2(>y)nWQMeNG5e%3&6r8~)wvbd(l$WViR$(iq2w z8q6juixH!en(r#AzW{+)h;^iVqlNRZBSdyx&D)gEZhcZ0mL`>EsvHwmE0jmecij8ipYzle_Ob z;<2Gbg}8vNp`gCU0$d&gLs%>#F8RB{3u&rAYia#AsvrJyDdd1d4z?udbRpn6fP@QU z*{y=9l$qExaOwVG=MBTark02K=%0IhC1}ieeoW~Y2qh3s z(o>*x$s^~;93V~Kwva4Y-WG^{X8UWV4&E6E(O0}I6)xm!u!AMpKEsrufdBM4_*PSl zfXx?Zi~CWGW|bb`1|KaS6mYUOBoBBy{3nZv?7b5f&R?nS4f|5rB2hgx0RKYkj0AVx!!Xl3YRyv6msBG%&dUcrG zC8~WU>XjyB=B5!=xgo0`b>p1Nrlg@(pVigSpSVHkZL z1}MQA@7VnL9|A-0dg1j-dSI+DVQr1T1-xW~PD(%KVBi+*0WMO~*(88+Ora-9BRRUv zIJ7c`*rriI!#_pK#3M@)10&ccD`Mc6FcnsUai>MZL4Ypw)!R;mLYwa(3^Lx(8HBzt znU|};npY&k?a`m9+sF#*`8~vqHBl?Q30$~ZFT3gNf>lY>xDZ$(l#dM3KxD^fgM_@+ z$TsC!QTPx^tzg=02?hk~v3_pg9~y^bZ`;54s#*Hx)m+kX3PQjhpc8KnsI;13i95_L zk6@Uug{R1#Lbm-YjCJ>v-anbs>od`x15Jo|!*B*9Vx{3-1w7%w#PJX=)LmITF;D2_`IZSO|V0E4TBfzRA5sF@FJSJte8BacU zyH5dbRRyP*e!l+Sfviv`c)+`W)p2vd8n2cqRShBqY68R$(g-%9G7xG!fynN&-Utl% zCil1ydQs5O9vW>j(JU)i=zG^{HlIVW1x4tL-|Zp{f2#CSO_e;!^di9#v||0x@Yiew zj=gS7K1}VI;zpF|lF^sLwBd?Xv=<>9t+O3wPF@g9JqOcaL@sd2jS8x>EO!8N!2JMH z^4*~ilB&afa?j
      2v<;^kvYOw|I-p>i*1i;N}=*3o`}wbGh^)Y?~I>`&kXSNl9+ zm4Oz+jFr%YgTc;pdPfaWVu`u5_UZ`(%Yv8f^0)684-FNxY)@2y!+szPIODp;+~XA9 z$nbg4gjKjnTFR}i*iClaN^?(C3j&QR?+AiUae^i+gzJxt1x;D%I*5K!Ja`Lo5e@EB zIJrewHPGqq$7Q4!lQ&;h#qIATIW+85bLX!gHyUO}s6y$tan!)jD3a5(oikOe23t^Upw%{YEbt~e5- z4ttEby(e!c$_o%TDD!D$)wkaMfoPsLT8v*g|NI60^c><;i6n4{xRBMH+%-#%g+65z zG>lfgBQJrdW!#VtM=w9<7)z!}nU#M!!73*ahCTt{)g7!NnwCzcgS1wJ26+SYdL2`| zunX8+{gl9Kp;<$~ zb<#O0KjDJT;=~ocnIESSn0|Dow_#N?h>(h&*E()7S!Bce7eo%f-vndo6am5Ge1gD_ z-*7;NmMR^fuO)(?$3&gN@6k;AaTpbaQKkg1MRY)=e4Dy%L)!Wq9NYV5Wdmp#!a$!3 zBq9}svxQ$91wmLPC?vFjICQZmnR@pK*&(BZVZbS-8c3DEb_r_9N23vJCTR8pdHV6$ z0&+U8w@!f_ZWhQ86#fhRKNeX0H!*e~nFQ2qfR@?LKa}T8C69tFt)n?O>GzxNPluI!Cfoy6I=-91=7=&NN zFl09g`!ST0DGf0q1_EP!lXknTi z-9bi>}?e$RW=LY6{!QBv|B;&W$@yQEI5&!wRcqQe*0a z@lrkB@L5Aa-q0l1$6?RvR<#sxqSN+Cx;LP~&qwb40l=C(ap6G+BZ zY82^+pa9<4{@DS2{TRx29r}s6qjUIppb&fAZuky-{&A8N=cmMe zvvQQ=8!N11>ra3tBa-(Uad-K~IuEsM<(ome_`IHwG+H=*T?HITOGu0uu4BGh6?PoW zJVOijSleeH^tB!*yy1{W!KlLDVq*#dN|`*>G7Mc3|H%9znDE`Sh(q@ws&CU6{rXYq zdp9t+*6peKe+4-@o6>t zqUi(kma2LKPC$7I*%5)r2T(Y?QTNQX{KB8&c>VL^J22?mfgoGIXbUHfBP=g~7S!*s=dJ+tJFN09rY&`JcUN)&k1P`ubqR|w}H2TUcNb^K!U{>|1$9Ksc9H^Rs?B7Q_}Wk;-<`|yj`G%(#C3m7+gq9-jIZ29X><&~v1_&l)? zIw0HF*QSZnD1@SYgHKoft~6nPlESq{%~7OM_=AuXUe8C z;h-;>4Dpw1XpIUtT3-=`F}0WqRrr(OwNDb!E0$CO8k7F37zI+jQz=uNEHSw^q1p!y zc)m6N7JRlAv06u@`#RY>ljxPE6FTe;1NKZE#^i>cT6}s+)$B2G(EOZ z!)_Z~);2F)RzaB#Te`}bn)HtR#(lx6kUnsheJ?dcNx&G=@zmlF6L+~FfDDthV|zhy zTBFbUOcgf@&Gz6UVpTEc${uI2YVTJ{+xZ!A^HCH}o4k`a%~5~S3Ze&j4#yeOmaM;7 z0ZnhpSG9PbK)LASK#`_@dMF;KEvsYH;9`;P-zrB2Uei+>Q=D=n4q&agj^u`l>lVRw zhjZU3^odJ%9jS%QpTPZ(4(j?xny;?X93hRmIjziwn=0l2uK*x0s5?8MS#X@0CUuM!3eet5(-yx0(`@t6hhB8ITv1DP&t0mdm6pO#z2E2?H@KkyMEh&D^0Yt-~~LrabY?Bu`0M2 zXj-gvGX|+qDR1?Ejp(GL=0Z)VOHvzZZ3S-mjEPk#K(d9SaG+~M#=3wGF!bOI!_QpK zu!?m`g8A|CFVMz{VD^#E2eTG@d3MCchlAk06Hx?mn`XMNMG9px$Y2E;As+I zQ{}OJ3)5hla3PC{v(`(r=8tMV%dUGXpy;7mv6icZ4UK@#L_E4D`?!>ZwagHyD(w{M zo|rN0p~B*eILllm@I>Pf$40mf;-S5e^jEh|6-_@5`8RI| z=K&4t9}WaFu1JdwBKkl!B#0iocAezmY$f0_0*;$0!9rfEV2?aN)i>fb&e!LLWaAhCdg5Yd0mTqUTv5h!Gs36p|-DN;9m!oHq0cNUl%vi;7yrK^P-)FpDqQI)v!Y zeNCZ}+qb(7K4w5swinvOqcIV1+RljOc=i4WR-9e1^Rsv-v+=q)2**rhkou4|L zxU0QHA<}4XszUfGVxhwyX~{-9>Dr1ml|ZK-y#6=dj^()Fpj5tDtocv>n0Ey*d*F z1}5RT`2yq*`*)!$fI;xW>{;q2t(^z_4p=~Qb9QflOT*d-^PglOpZ3fl>4HJBVat}L zX@*}Bf)Me+KZnvPG@8^Lw~WVkK^PXiM^?5oxZyhEg-x_Og@z_$jpIl^!NZaFqLIx` zZLqJm;U8t2c*Ur7y*!=_|}v2$Q!IL%k$;GG8a?VmG}^u z$5qaYa6S}^7=H!WWSPZ7JaeGY51u>C`ZKP|DIif|@+x_=F$`R}BI!}jkR9AV)sYRv z!04TL$|dCq`o!OReu=uQXp)5*1?If0V7uT)^YjbL zC*CCI?xWVR6Xt%Crn)Q#A*sBAU9`h``4vDzatTqbVvD*^Zhh=Asm(H$srno-yrfq@ zbAl(o3r@GCB^h*?vB)50WjSQ%V8qQyKvtNmDVxyqzX5uo8MYjEW12W|g?XylXS2tV zZ|ov3>)0mDMs`@3G<#nT=Rr#+%e3H7;o{)cv@6P}5oFVRe6!=>HP3nAfSH0Jd4E=b zB6-G;+=H6OiDXsN!Ut2w7bAx7ChMEFREk>y}bQ)Sx0MLID9obN!N4Q2LfDR z64wuM*WVp^=JG_g#L65Gi^fFhLY7n3T2gi!WC_x-mDw7Z8nbFsS0r(4D2s3&%GtA~ zX4nVM#*ZuK_NMxaEw8)=Ay#3odb~V$yOPB{d9HqqsNB3NZg>s(wXb>%q)6bnA0y)} zD5y~kr2Gg617TM1Yo{X|NAf9Zz`@_a#&ZUF9>GD~wHGlkjY5&%<~8?2wwY8w#9qvh zi|T0c2C^AH+>v`ulkoVU5G0by0RU3q`GN{0m@rxYgh{8i5;1jdI2bI{7IHC%bKuAE zHy9Jay-nZX5kis;R%+@$0zz%s$bj9P0TdiwHX~>RTiW2{5CFI(h-e1^F(4|G59x)t z&Hz3_aFsQeIyeQp0ne1EZ-Lt7TK<_uE&nev#UqZUkE(T`#;zS99y&)lU=|1z3I_(T zi$l(sauFhtXe9a;q3k6Tu2CjC1OGtG>~sm-e3A^f>ofOblMoL#)E4*{2q7etgk%95 zBNQn1>=+c2R*_gJc#=c22#x{N{jlJGT-L@4!y1fpgoN*cpU0hJgf(sT1JAm;8}Tmz zzS!yri*KfT9JFt!YP4|Dy4JF*a;zP7zgk>CH&LKf3EV(~ReAD6 zxpW|cj}T9k9wa#&4Z*@?Y>1GBx=3|B-~o%!-)Nju=&ZTNI-=PI1Nuhaum(euFx|pe zkdl>86DFL8ne)B{5k0|Up|38H^WA5hw{JqOX*Gi4sw%ECVsv2o6=C{xk0{-Ht`%4a zlrwu)yaIAF;0X7)DM4hZ=2BsJ`nZjD@x8*c5~wY)pwt~(euQwPf+<-DDM`msFBTFW zkEm!}3aib25XBNFh-HeGd@>kcAU4 zaB(&wVArnZo;rZ#0=r8A0(G2dqS5|9HuuyXr+rI+Ek6fiQl>oWT^(J-2VxGOueBFW z9KaO!9BF{)ECBXzxts#UnQHq?1hE{Qgw8<#_C)@Bl~6Vino4P_LJY^9`4RN%RpoDg zFAE>ecq<^jxdoA_25GDy#&IizSLIB4E({wOi`%N#l<(~tL+wu*30TSH02DM3C8()7 zoi0t_V&MUn2HPp+0X5^hfN5Sit_3_63?_4vQdc6`v<0UQ?2fiyGg?m7?mGih%H2qjYFy3}p^-Iw;>E_Tyr%=A}h?@Wjg_Im9~KXyLv<>*_818OQZH;5VNN z$$OO-5+poe3u!!2?*zqlE#P2u{Qh{Tifz4`vprb8uRG=24})ot!Q41t4rf!XumF2A zm-(h>zj7HGfr6`PSEY0L(^U5m*Eemi%QQ{{qHW^?A~Eh$0DgDDF43a%*+-gYA>Azt zfX%jYJML)4jw6#XmzwGaG&=2NY{+hFQNsoTVVKi)J7X8Hdn_*GIb~G3dMyZ+Vyr6c z23u_r{2s+=dQdsUi9mC@O=B6@SeOf!eu$rMlqXYZ4ZK+#BWX!o2K|pf^-BPk7x#t`#MK# z`EsA3X_*aoyVP06!|#2=eJgppr%2N<`iVhSD*25gJQeY$>NU_KiGGU+hAWOH8DdzY z(nfjMYpSAK`h5rZi(lIv>@)=(*3Gelhn)QD-~ZC4O#L|sd@%#9C#++P@^Oa5mU1&E zn&OMfS^o1vVZxQg;>8lIvSmb%{2l9hqO?39$XUdt!tA<6yQMXDAkUjw(VKp=KJhoE zp*-{+WJlp4eE2iXyoodV>BpFTkl#KpPV9ha=o%1L(>1yLXW<)ZA_`H4q*8ah!NGN04by1y&d}l%00J z9-OdjF=`TSybb;%f`j<1-cj8Tdr1Emxax1PLsiP_VdO8rVG4j`7wlQRL6s+)+|j99 zY1LG2pwiA*IO%05-`yv7FG_c44|)%h?Xt+mjtIukGr{so9JJ!TVZC*h-qB;HT)_-~ zak-yndpRs#m8^s5$#X4y@+tODo|tW?sr@u#XdS2&j_W*QtJ3zo3?+|BM$sg(eAXO*o znXv$;VtL#jWFCFlN?K8nesBb=Gukf&>1*7Pt|K2T-3oA|#;J7zMN1c&p_ln<^XoBk zdHmVO7-piZlxLr`XTbs-+b(2csh?`IPrbON$7JCr%=Q+t90l$}Q#vdj*(H1924%o0 z9hu2Ozn+8Gu8Tpv9*kxR>eh}8gL>C9QzX3Eh`GN5wA@Z;p)u+aozt204jtqEo*5Na-1u_;X2F3}V8_^j8eh z=s3Jgem+brMl|{?F%*V(#owt&zAtU;&*#Xe!+LO^e(Qr{$FyD1#h&X$nQ>99gVB^z z!$AGU$}t=7^Z^wlnEkME*NHDtg%+SHZa_yens1eq&~tS7*yq|2Q$dHQc-~dR_ykJ( z(L1VrZ&(K=eLvUlW->nu=cS~jb;G$8urI26)S)g|$7ox1OeJO2Pvx@8$@r^J%{xGX z@J+C}bomk(0wrn2__y_=`3eoOmV=ecjYtVxD#Kd|!#(c%-y*t<{qiN~xoq=l6CY0` zNetnc%SgNm6$GVnM2NJd(>(V)Q@9wD<;AjkgY%|wpdb9SnZH;;MR5DlUy~!CZ(zDD zb@>M!il4BLzhE75(^PUd0rE&Zx&5QG`R2 zxO9vB1;Oqs(Yc@pi)+|8TpwHGA8k)6GS1S!QVkr>aBKgw5Vru2 zz_vJCFOl2kU&W6PprQVJt=!Ivx9>se)UZBeK*>w}uFX0jl&1KkdGIX!2vTIscpM?7 zwM%g1v7ym*tq%|I#&A(iDkpEed4>6NsdiJaGxrVphOxmS@p#!26JO?R1}8t`k)}?Q zjAS(aDlSMc-t84S)S0nOB;FKErB+f}{iS>U&JF;OBK?i_*OcauusE?xlTxl;4sqJY zeNSrbw^2D45cPr}m3i8&d`4{d= zB)NAmCRjbPwwm6Ku26w$D05Li8^F3KM;_qEEzU|=!eiprXLv|I6Q+}eg;^Zh$9n#e z-SyS+1Z*!gEkLJkQ&a~AD~sbNu1imJ<=kR+JZUkg#!miLTr1t<8@ zG%#~r!_&7@QYWpY1e_AAt$=h*Z|vgMFkhE>5ZKm_Zp>FsQPTaQN9A#bt58AJJCSQB z{&v#RtTwnj?~$WvpKjtAI%mSsU;ABM#@@J_H!Tpl*3czVtuWCYaN0^}7x~XkHT(L7 z(2Q4*l3aqmM$?f(tYZnepF6_|dUL?FAtqfJvHM(fZ6VhQm#TZhQj>OKT7?;+uz&uQ zpn2vG-9^JV+z%1O*!E+uKQCvehsf2*AKh+AKd42C*xcu|`fjjFNVxRtDIS==!ybcOoO7o#G`H{-ri00OqWnMNY0S#Bj>ZIc7bU+U)fe<-XP6B)^_P zN_dMHBOQl=mVNmR|hqC!=0}P`5$veRbi=60;*B31#!OAl&>O3PDE#fRSceXmKVSV;@DOuWg0jdT97P#=O&hDXgc)s9K0B-_ zdzUg-t#{{KQ74j;MtJW=I9n+q-jl?uXzsHn7+JbZOyt7l>GY*7d0Mp?XO;^#y!T(% z6Hf{=3)SJQN^Q7IpY)?>1|(0!-{+k?ddMRZejIu?v0;6L>9r*`+PW&h_44kQkJ7%j{iEUWFA^J>hN}=7wYatKfCDpPL z-`oD&FlkNl=@Rzc2Nw3(`At;K=ev_AQHQ9J)5BIV1rlKep|#Rwo8%L%t2DGO*V0Ro zGhW{~(Qepe=m&D7FH2A#KeK~JOEvkZ(^%P#X4EvVAeY^JD=@D%I>q#TUh?^FR@SoN zz@|6#DUI9Zwf1XTH{kOSzWCOQ&Q8lk6lwHDawo}UJywn;!0+B=(UY;BFI-#GXX_3F z7h(&{iaAO9rCIb692QO-k|>W8I3*LV^&=nW3A*N->&e7)VYl#3C-Puxu5IXE9FOG5 zL%c~E+PnnScGzIRCZt!(c+`N0d>*6dmcLCAJ=3Rs{ar7lXvIyb7m?Wlxth`V91K=s z-;?r<>Uld=K0)3e;S0I^x?WNm+L8ok0*te>Hv8*@FRq!xsg)zW4U)UKp!Q_A6Y@Z; zS%H+qJjfvA6_~DoFLfE9<|nUFcJ*+2wJGZd-Y<{A6}(s6Cv{sDIgu@#>W{iC)sj!= z8S`4j&bO8<`TK3IXlhy3?S+36eV^;G9g$2&xdBhH?7}<%gA{hKPGEc?_wUxq2)VUM zOM6#*!y!m0k{eN2=Y6i7rw=LcyT=0gb0J9H($mWZT#dXF=HHfI^f;>>7a`x7^1NM< zi}v1rMT5xeG>``E zmq@&KdHp%u7_w)-J$BQnGkJvpcA1%+hOVW4xj59#ylf%*C4;X}$U&`Q?Y}qCMrYgj zpBIJ?9KHa5ZJ|9BrNNrBW_EXLmOIlb0q3wF%EjlO@mz+lFxP(EBx@NyOVRKP<3v@R zodQcY)~Hg_e_#Kt_wZr=`}3l|_I$6XXzFy4FUtdA@(cmmsw=V++w*j66QD+iceNh# zcd2tA7&Ce|4kluesCTLg>ykB^f@U8vlr)1t~Abv_E5su;^MUUfwmJxGs zCmS-!N{sI4E-D+=+;MjM_kWfcrTib4=hCjH*h>Dl+)$6xIp!U=wX%^yUSKFi;wcUb z(J!yiqaOdek}Z;O@cj4Zo)C0#$*Kg7jhHu&x&HmOA)dtl{QiIbx3(+!A}zlE`_KIM z-}y^_J^ynZ{`WN?yoLThpW(kBQ8=esD-+% z8vHA5Lzbs4mMUfiWolVHhf@dj>U9wHRdl{_abD!y>rJJCoY!?l27rqUsW%)CnZlB# z$bF^4J?}6MdW5{{)skPiNJSfpNZQRz--vmz0<)$bz> z=X=Yzx`&UBH;|Uj6iC$typvWxc8}trbo@Mt|A|zGy6vcP#msdmPe&Do z4ClPlkc~xh$8tDDU(WG}%%BrwQ=M=6syCeeYS0onTT(2d+W+cX=1$r(JAJ-3o$GPh z>X8r8gGt=jRD0RdstxBW4LWDzMQ57FwX&x@7pIDQ4ju;%LmuZSk1r>SXPpwFbJn3Q zlanhgR1wYH*rJr(z}0z~vHT_?KlQn+?|`cP_b&C)|C zF%_1EPFXufqJt|P$IQ%Ad@{LXxHUsWM?5E$^ zRepJqNw+L6uzMW6*ZGB99u=e$+;9?o5`&_KOF7W+V#UJd1aj4$zPs^m9-6mF)pIBW zXZH%`;1B&W5#`e9;*~GuVb*TS-D@p@ zHr_kw{ylE%Hbc5+U`fgD*n}I7U-c{{{o+@{>619iznG^Ncd3usmet)C)cemwcT)-0 z%8aU4qYOgMxVNcLYfp5x!%fvviqf8QeaVl<#OK%B-Kc~)HWxaIbi4XyGSQ2p9!2Mk zcMC8KYkMUu$%j7~`}vVOPL|JX4lbMd-U!?oi9Vai zeTGaL`kUVtv<_!U8#K<~>9XuMdvRCM@jG!YB;1wv)%&^~yTSNl3c1@7QsN;^>zz(a zQ0us!V+&vQaj09-ZojUBZGazOLh5}efJ%6-4Vs^&X#%G+?sZpz_1 z1~DQd_8#}OJ zYOT98ShJq3G*<9n;#L0>pYgo9AwiT}0sWGFJ;R6REw?aLaHd>(6XwJ0F0ZF4&sV+eu(##; zeyg~_Fz|FPN@7Npx^*66ZNlpB^7YHRxbcfBi0lm_8IAYq38cSMpEglL*c~4FDwH^{VW1Is==zN4~f*kX2ZZ@^Q-gK6)!fdNkT9 zS{^qU)V&{|UQ2rxB%laL`=sr3!iyreH8a$F-)WuvCRIWBZr835H97^>dj3c?DWt(npPmW&Tk`K_4?Zj1 zrotb8Avja)H4}LarczY!x?hu#XW?(&Y5i-m_cTI6`aDIjZt*Yv(YI^tIoPS3d5_y4 z`#v}wOJQDuK%~@p@j>#~lHkd?yFjCpBOw2LNxvo^ptki(GViIeK}Pg4@MZVt&c^Y(%Og^#4SIpcJ-9XpjOimCa%RkDg6IKxNU6SFd zL5tmaAN84%9kA2*1PfM1G#FdrPk!{O`nr5SyiBIO{GB0^qKluAgXRBojsSIbZFhX>e4i&))U8>x zzrq6ikb^GJ&&BYme>7ttX6q#nYL};yl8dKSNpREfh(94hY1f1C9jYE;D3it zWG=OEJLt0^W8K1i%UgRckL9jA9wQ_0YpYNGAMTuc5xDB@!RfKVoE>h?i}9#!Ge>B~ z&{~Wb!{Uht>f3nt^+RzBPE6KRC2{#}LhNV}slwx= zBJT)8&bf-CtE zEeRK`{&(jjwz0gfv{|fbcWNhW{-UR`jx&ABPl_J9!{@QX_xw7u%gwnTRgV_g(ewMS zo!l{taSJz%{Cg|t&Rna2bs;)R-B+o+2J> z0}W=EkZf04UF$1%v-dd14a|RxDh%T&IEZF3KcW)9Kqh$nj|_2z#rOvr&XmcN-HTSv ziWu}ECyoBvEQ&9x8MyAYxwkSuGPD;pV)Eu+j1?m*b!6c0wrR6}B}(H;yzANcl)1xm z1qUTGJrFq*pv3w9ehUThEqu9am!Cf9d0nr!v5@ecqfF%$dq%!MrVJ-tCq}|uLk!7% z`Y{_f%FTo`ETuoAO(tA7wTKmR`p=)5*asP46@O|9)#@MQGEy7CmZq?l6eM`^;=1A8 za2$V5{~fb8%*_iJQVPTK`HLkg%qJ0@72$Ux)gI;Fns-`cKyANEBn>nv4BmT+48-G<2&vW z?=N3@yGXG<>**^3u_1-CO|F770>)PLHkZS_&RrS~Tprhv)TGJlrcR)+38GhBU91^z+Bogrplj{dH)rO$sd8UGq{Nu>^B6JN#>c`pC1Kaw?Aqx+ zXLt~=!o6#(6;H~ zsbk%PX`*f0*c4ls@Qf*0av-8WyQA{2az9aK^7bB?#&`*@&-?d2pZq&*f~bpJey?1P z!hZCpkwa2SDrfRMqhFFtfQ*%^e1g`PdCvjRgfhVyQsor3*A0ALeLnB1u9Wgm5?UFo znh1E(%F}$0pFUljjnP~EzG*k8B%S$Jx#d&ayj5=4Z>s45HD%{J3AI@F^iFB7#xT8L zk>s$K&-^uYGIhZ4nEVIcfkdQO-!KzKEq0bhGLwh17Gc+umN)!;@1%)ehao*%7F94A z7sqA3g22C3>KmA`x)1t(brNF8#H^65S1x|ZHlppq=}bWx$o9Reo6XRl`r32dI;dX) zO=?N-7Nbt+pO~K4qDtoxoYW7L>)dht+%T2+>rZg=q@F0qi6H@Pp6Iq19@vV z$z#4I)D~4Yo@l69b4-uRG0PG^jb60RX)5@C)2ic>+&9E|+Qh!-YD-KP5(1 z0i5MdV%pt2T#vIgehPFscl`RaE&6`0QhHcyTKipX@#hi-ftT+LwCg$CqCRs(G%0>P zSJuV(o?4)yts6K|xCh--at(^}c#D{^-xCNk<&^e}e;wWt+SFaVf1fgL@p0oy3_+*m z{n^eS})CeGH_b(UT{$OWNvp&qR5QVwne;J`B_KBrVd;9ZoV{= ze~)^?L9+c&_qW--(FULI?u}Dz#}A{ELQA^Z{@h^=3m#E>pU4w1`GcZJC`r!Ds7*)U zM)#dz+MP(7Z2W2x5=*pJgO{%bF^cCpXM^S*_;$8ZQ1B9Jgzl`*2C^%hU=Lj|xbYry z6dAaV@qH@zq-v9R$(Y*fc3&Ev$h}=1n%j|jot0wU=KJ5noNV|bKDoT9Y38}>`|fQz zBhRH}tCl<8z9!ogw9&fa8#8YU3mOs|`jiyy-1E}H~trQ6p-tSPJeer+e@%{MrJ9le~)GX__3UZ>v{~Dqk;ooGF-;cb!?Xu@6 zn!WoS$d;cOrWK87%+xlaeR%iY%d4~WOHd`7q~gezwl*TBZZaLTKSg;DtcqWo`20vS zlQcUMy}ru1nQq9%@T#%t$|x_xmG6<6bhwz_OjoV=nUy3{Zgf@m))gJ*9O&P*A(kN9 zNhzc=FmKiqx4l0W|H`U8-4RFXui!b8pHok+qdR&x#tr^Rwa6RizccQoHcmpgMqZR^ zklCWsbwe+Go$AH#JGliHf-BMCnXdMfx$MuJ?s^bROFVqm=}SSOsFIMv(?s@DBt65r zhsg(B!DyXi0cN{yrgdX5ih5O!n8%%ki1-^fAMyyyEZqrE4))@9xFRvVf!UI@VJJUK z*J?#pr)RCdNy-1UO(X9BBh=2nFR*RHq$m@o-rLOZ{vcE_G0q0-u=zE?O2&0;3GA_J z5zdVcw{RO%+iEke8R6qA1(6qdoUN$ia_Dst*Y(7{z{bQ@eHeGmz)mA8U%eiau}j}5 z8h@R48!hXLP7JP-Tc@mhiW$e%*yAG|9o?5$3=1x+VNL;r@nye`9)&5@FLG`d#^+A*Msc~6*KFQAdt}`w2PG)NujaFDF zxC-6OOJ$in1I9%OH!;i)PyhD3^gZLNZ(t)urBKrpp^R^OF||#s-jevWE`8)wh$nQ# z{+j0f%@ba1;c|lRw(4#y{ z`73?=3s&RBZ^vF*-$eBmqW!MrZYZqVAHOk3${SIwAcY%Lzk){T=hUk8Fj_C9xZ#11 zh1Y#+>I4ZbVgp_FY4_1rzFom{8XFdvDArrwGEt#AjXRd_3WxnUr3#lP$gO1*56VXz z5=U?a__FTIzZdnI#}yD2zB_;9+N0ManJl$9Yq_ePx)E)z>Spl;ON{u&qwt5*%fj^f z7k94|GJ9p>V6ay4?I%}dF6k#>DfK!$5GKTN8u=VT7nM%TBb>G*y0BcI*C zzE)M`^$p*Lo_2(g!a67v?^ZDX`)ALX>plzV`*>o6dXYb_Q{=_!xVl+i?9$auI?4B4 z_`B_N|El3WMvuUvL=aBH%Iq_#_PZSkofupN-(_X7c=h}q|LIAz!o4I#N%8%mKQDza z*;T(mY1yB#!F^TCM5LJ%26r>dpXs&bOQFwA#r7B`+bUgu_LS3b&Z<#HYS*%`R`1!2 zAP2=Jd1ONP|LX3%zuA7{zb~XjZCXNYwUr31*qfTQTC_??6xAV8wPNpzy-AHKT2-?H zwMP=9iPDeJVU)&*R%^s=@AP}0``o|Wf5Dw|@@sOg^FHtEdR@=g^Z9sboc4XBVwm4t zn;Qt@>$qi*4np@#|J_-j{-Mv40Xv2@%s^}D?F?H8w6TMm%Ku0<^2*Ox!sV0! zQ#pmEVRth@y%Ja01$BC*1O4jUCrOYbbEKPq!cB#D3ahY~)La5==px@&@}^@vyJWvM z{^HhK2>A&JVdg`!wpKn8=AEt3J)4a2;*RknjYu!FsRvm;JWTnavQQTs}V%hcq<$@#cXi{I&+Ad#7NK*R}vdy7xU&@Bz%VOOrD`# z@Ml8@yHl^KWDGc#{S%kDmB!;1>sA>T@1E z{cPaG*}ue8kJCe?0m^_+`F3{ZirA3`tz{PKML#ue1*)j*jprUN^(I4m&?2xQULE`C z?p5RBzj|8B0Bk)*euaNNiF451FkcFNx2l4j?0|cUYw=KPh4#DKA;57>#9HD!c+{O| zBdtrK&bz0A6Ck|EAj4gu6rRM!yuEs=1UMVR5c&?{fwmdu`GL2Za6BdilW6f9*H$}S zRRw)2yl*ZwoBTn}3D~B4CVM6c^r+3~g7kbaIazTOLe;RgLy_NYzI|}1h+z_ zlf{xK=OfQVso`1}*A15-*0%ZYw6^qPegG=AalmsdWVnL_ThP1xN%zC!_Di@qhMrN= zl|_?!R;VvS5v7XzD-+#EUO#ElU}VXTxy0^WPUjTlK!kjE$H$*d_A|!d`|&DPx7|P| zm6R^eXC2ySmUWdLNxDjZMm@Ii#*Axar_5HkrQ;6Ny2(*^>*4kJ7ha>htBW$0-d9xqW8lj*2W{dqYtIQDXven@JqR92UBx6CvN+8y^ z_?Z_%3}}?!+0u78&Sz5VNDL8!^jZF1xUIf+{Sh~d_^4Hv5b={miBY&Qdu_f}2^lsX zl$^O1^n-c!w3(-={%XSIJNXD~J7^syWi8tiq`)6g!KU-eGXmz5Y9>W{l3F?QJ7KWm zwJ>*|4(xr$Evz({X+7sF_)@zZ)g@1z={t+8I*;uvqvxEv2r>t!0PWMQerdy!9p)gS zK8epLJoK_o>7@R++~>Qy!^Ks_trGA)vB|K^2^*J)uSWLt2l*@2ntoADeK3Ol6EHf< zL!-%C75x~Tw=NvBfdImc^#zVw$5d%2QQ8WBF>;yP9sxr}__o28c$S)Sv0)ss?JuFd zPzR%BahA@<9Q#ehTSBrqUONqNrq0U#IOc}?KEEBJUpRI!Gu)~fOdi28cnex5;)5b_ z@{920@BxM*f0MI)QM~lJW=P$_f@ckfzmJ}|Dh}8GJ=nb%yL?Bjpjlk!3L3UDJH0OZY!E;Zsro4GJFs*( zOGCjSjl_@!-PR{E4yoJe8eAz{D^?P0dh;nLUdwyYf!EsN+W3vG7u{6%pKwY+m!l&{ba`<8XKX4g{b*qB zkuz_Cem^p*vL4XMv`1vHY&%N?NEiQP=HRxLY7R!l$--YlE=cMo;RbM{zWnv557vGP zrqoX=tJ}840wLK}?J2q21`o8Rv?y2&?UZmEhl|GCQRG_Dc-0R-!YqLKbX4pz8mC|C z_dX1s>gQ!Vb;Ficr;OF20mT3v&uyNsR4s^dTG|&0%15m+wt~VIzY62M{tx9|EcUuo zCGK*mmw*8&+w2=e0)`dv3J63Aek3HfX~&0taD2|0^ENLnN}=^;PSpV?4vp&v2JfKE zk_^~)y9=4r%Vk&2M#w%)>bmG0t?$y-_ghSIvUNJxZX@009Q({Ww|5x9J=b})4+xu* z-*+X861nqTO)Ad{=m;P(qNlHo#2zhdP%79j)SFliEoR(<(j#f`7Yl!$1MwGE{3QA> zkgUp2^&caruQ1CSPzq^A^YW0`7RxJ=<=ARsFD$874;QSN4;UB9T6?vSqBU$lY*q-VYfk4dQ8Qt;a1&JzAxPkb&zw4w z=#FGh8aH=QPwq32^q(G!VZjR=8th&06+>JVdSj!%5$tfj44Y;*4XzZ$uElOnP!xGi z8@XG!O9g@e1qz?^K+N*YJLvL0WnRQ7W@xdwlmdWQw14oD-sha&I*PBkq z4J1zH+_9nZSoB+wLHMkW{(Zhxr_*GGQvglhG<8ETf>R(w{>Q7z{KB3h6^Fh9htnSy zqkt^%#9=9+lT_64CGCZdhxDuESG)DTj&F|b36Bm;b7}tmt58})@x4P!-enZ=!0prD z3$ZU|Vx;RIx4`eGc}^|{rTcw-Ya2P~_Um9{3FGzkxiBp++`$*Pq@o z4Z4zYacDrc^Li^&$uFP*|1YgX#&LY7(?9^v-F-Si?MRG))isio4aC~&if-&mp26j` zxH@Q`9@IRNq$O>&gQ=)W?+we)bKlz8g>fiaS=5Xs0dy*X?e=5(`maV9Y~&$!d8k+f#V6~+kJmU?BwgCM`fmX)?8}uC(Ls8` zacn|!V;;Ud?#qo&hRF@yWZrnNa8Z|?kT4m>)}qxC`X5U^dWNa#kMl-}xkJFj0V%z- z_TGrB8YiB2qOCv5M1SoDHfY?MVj({O2AxS(sGgBmh$V&O6OT*fGOW^8zq-1bK$4*q z5b-C?KKmAYnbBmkUp}Cl~0XUyXHLqMfA=DD884O@s5n-)#r_hQ%k}coq1Ia7+Ps;X|Iz((zea zbI~3W2;(LLsuU$mECU9K2rdNA>?ATPFD=6vZp(Nnm?ooF!hJxH3F}f9Y;T7i7xH9 z#2Qu3{?fxb8I4TIv)564Zw!UnFeF&&wBhIW>oxkDqG_K=)}h*#H1~5=g-fA*}02n!)=> z8>mPG2lqBVF}+Vaw(C>PgG-$<{XbvHKYGO7AWuGn8`0y4hi7Lz4}xAYrS6)L-Zx5? zNxmaQzmHB^D!`&2uqYYqDhBj8EKQ!LSSpvk>E<~QHX+lPD+oBT>SMk6bF`X3CZkDh zaBEDFWWd5KW3N{nsd$@VTIX|8EszZ}scGri`sd?RiKz`{#27VwU#$x}gIjo=i1u9(P?zU|z!-C`thd-Z0*LDlJj3-Z$mfEaxidkEY+Ew#&y3WWX_c}y>Dvz2x zflev3V(v|zP=`d;0*j?-94XFa-WqB@F0t0Av||hq#B$(~Pvb9d4-;YJTr!Ke?QSe(}YBL$#EziSw;c9DTH}H^6N2KJjDXxVPtO*MSNwF;;eKz*L1W;kz zQTW74W@hcudU39UjUJkx0_xt|*F5J~=a8*N5As?*DsNc^&ekH!lS5kT2YkVSJ0@{=F9py=X zf9t!r^vp}oyOPl-i=g|N+(wVY_ad=JX~DF90T=~-`^_#^JX_}5vewW5_N!;LuQ z@$VHeVZ;Y?qqCT750+D7Gs_ngBzIL_5-W#dMPe9`{i5=>A;jqO*Uuuf;`#Vq9LLN< zEdUlO5hcMlVZ_c`o0e29-`_UA?dtgq#f$m(dA4KB#On&@ipp59Kr6_m#)<~t!Gh*h zXHURq(=@3m;g(l!oIyh84-4IYn3CA)SvC2DXWO0~L(ViNm5(s81koYyFHWClld|T> z*&$J^gl$n*?#9r37P8dW5X*9di7IM6Y<@y$00 z<#B5mdDct#Sadx6R8O9ty=DY*cxCo?REehL0oiI+rlT!^W-3*u0=0nPxe2WQ0rvYL zrf*SF9uR+OFcMomi49>YKYd2|S zsDt1>Y+wmt>Q&aJbPhykY-HvowB_0E*H}28ZL+EigcjaZK5SME8mij-C2FHTC_LsN z^iBKy1i(S9s&z19_Bq*gNl|Je{bh+JLesYHI`Ca`*-eqYWaKbJxo1P?-H)-G?)4}ZELWC1NO@Yjwa25Qf6Zs1c zvV>8~9Yk%q-Gwy3FT$q~3_hj0x2ohb{+V%B@{84TUhC+Kir3GwVSrJj34p|Q^~;?* z$9G$H(@aMCAtu5Xa2&9d)Le_4(vMBWoNsem`DnmWY`1nxIq2Hj=_Am*X`<#!)%CzK z=q<*{T$BnWHH3)9-HZrXsqFHWtkYAe`LY@U{=Q-(jGT=25()xlcc1w_le#Q#l)BZL z-~U}C{7qYzAQcWR1an~UJ zjUwcD&KfVG8Jw}`Qr+k8rlzIO!C+CAK&4Bnfs3{g)a|G!yP@lA&VXA6)U{x#Rsj@q zA^m+%)G7#C;-b4PyxrLIq;5TJEZ#+WFv3DDW;;dE3VuAG`@i44F?f0NEDv@YBll>YVV|0~jk%qG{ZaYCn5ADg z0-5Xms{4zWsNn?jtfNm5G1x=lNsJ=ww4n2lsnn8r>JAH2I-Hym-Be$zstN$ zOWienrK+-1c$c0hVgyDiWcKI;3{s?kVEH9SW=I4{byud0ew3_ZOk6ca5kMp2>a;+1 zf|8#dPAfby>bT4=BZsFZ%67%gKrQ9gDOQhjd!`jI|3{?z&OeU|Z62$&3(@tF3021T zq8P?L9=`~oltYZ?{8Jj(#|8JQC`8N~ndTvvXOV>W?dhG!1qlnPs`r zV{g=E@Z0`ML&M;gtUt|@tRGNQj@KjzKx2VdangNg5J|?GX|TAHh~f8*KY~T3v@$$) zPZ`#?OX*A>-QOag6%}Xtd9mFL%#Bb>&1w+*u80U?-NO-RV0Za8OORUL;B&n<6QI=wZre=_&1IJcluq7iI<7% z<_-4x3+{dm>ppz`gY9o#tCkGid-tPo`4rW_c+>O-|ITZ^EGa_TKVOH>dW3!cf2UeI zX(tdq!I5m>zkWg3Xl?=UYP5;MP>?|HxoTIDN6-@%)PS?nBbEK08l{o0_Wf_^E3KF1 z3hs^?ubHJjP5GT;DPDqWmNm{+_#5PZfz_l^yt=|!?944Z@9?i;L}tmD$9r!TqK^!J zVQfm5tFuC{0^W{W(OPLDfq%bI9ov`J`a>Q3Ta@8e3vHaxINAtpw+dJ_o7ukqs6Bo02iDoNsXL|`Ev>`_8z~suZ%xDl|lk5B!Vexiq%h zY)-o)-Iqv`v3!=RV10N1&)FqW`+26i;8mt~3~#zWKrM%hB+PHz0|30S>t||1648&T zCC$D0WG3XM$VEhyOqi15bA@ zmpI1(-IGqjK5Z??CX;AM#btM!Erbc3Vp8Soi~(;&dj(&GKJWj-fUHF!OVQM#owHP} zz0a@N^j37X)9b?~v)}F)*BP`9%`=?+)DjPi|EZWA=g0Y3? zn0v&F^M2zyZ0tE)KkwifJR+;8%nxAo6$a#Nq%*)5?bkW8xssfDOo5N|rb&ON$5g&8 zq}iS_f(-vkcrv8#y|d{Ag{5HGIPU-fzub4~ho!KwVtju<(-=!w*QY0!8MaU6Ds-tq zZY(c0+khkG6k4VnfKCoBAW1-L)Kjy6^IBNo0$%YDAK&YnXBg}^u0|LyWe<E7%DINR?n!uMKgd>+ETd-=;s8_lnj1hK|iK_ zJFpzi5^WT!IcJ`^&O0vHp#Ed;V*jBx<=X+;PLGAE)hi!g(Va~rWsET1&&IgT{)I=u z_Pnm#$!bup0VBhQn-}R^bP1|#q~=*B2XVSXLCC-zi?|`cbN{dFH1)j|Y3T+EUq`t}INR0;P7P_Iz$*mOn=hm2_hxczrz( zf-_N+?~@3-EupP{muwMUNJHPR&GOPhNhlsmA1~9h+ogR9qi=maW(7ZjeS$DCZm(lp z*oUw_?L1=Yt-k}ssY{8!3E)y!jnj}VjaofroGbPUF2+(U#6`!ocys5iEC{$lIqT|? z<4M@2>dq|f-&xL#2oxiGjq)LeB%H2AD8Q}{LWmd)!#RHgBX+bUl_ENEfbL+6w{p(| zVk9ZhmD$g*zuGeXUK+LBv6B)hhLqfJ`x*hdD_xFrh8UM~;f9j7K1Z_NbU-=#k(e>% zpu;4H{pf)U@SC<~#!;Z>cIhiaNr`O{s+ynXw1A%iT2D#TmV-upnrClaKpgKLj~P$0 zKC2YOx(t;M%&|RzV9_rTK-QfkxLG->FU+!5d|OrGv(qmL#Mm)hpJd630gkjWW;F4? zieriI&hF^H7%aD7lw}QqDR*AuUT<~H1k4Z4;>8)?UG-=n7bNB&a>Tn(;E-iH4Y9n) z6B8D3e?x!~9KEs(4`)n-}zX zra*|S3$am!AtT_Hm^Qf_+2*E@mhQ^D$KlkHwRvI$R_h@z*^um0js~9Q*PN&c`NqrG zc@E0U?*6hBw!CAl#}hv{tK1&FoDmeeeJleAc%I3#XJnrCFEBKMBK6=mv$bX>OHw=p z(7AncR)8N}g|x-P+Lz5nyM|K+M+9)E$U}BKcsBk~JdUNouN;LWpnu>#5P#%F%uLqj zg!3hCoCSE|toU$BjAjl$_FI}+cwbd0!{IEK;$B`5hZ62@`FJk4%BVz&nV*H1^^R!Y zam+mxBda^>e2?JRCl{Y~sb?}-1Ee>e;G~zoU8eNMX7;58&C4;pxrs2E?+sws+e7rO zjIO?~|0_t=#xBDm9bP$-x1ADzy1c2eGJ*+~V&yE{Zdi@oJt~D$W~o?z8yjb` z5VoWPor*fYZFrrZ#72_Ev&ndSMil*S(2a$xIs}WKst!CjaNr+dM%aB97SZz(U5|?A zD!vb!ag0Z`Q+*HH4W@$fLs-tZVc)@69TT^5x4Y<9nH~#o>!0kIJSUD z^qspDHz?-IJIpIH@l*-OxC^o43-;iUmFrtXOgRhQ9Ls(jIW^4;yk=H_b$Xyp9&y)R z0I;y3`7PNI0}-QKo8XF)`yI{#)l$i7^bZl2pcYX2szJXUkk~B$O;1YM`D|RI!%}3=F?2nf4dfQ=Z8F$D zOd>FrLTUpjj*0!3kW8BV&YEmaWl!$%P#w0)w0(q9k1q?(W;xI;3D}Sguhnb4M@)m6 zskfr+w@M={)L4H`lEexkR=ZoeKSt^EsqRl;sn+(plYgyTzgo(Y<7JpXFvs zV9iQcBa6B`%9HQe)G20#C-v4sDG+oa+;Jz0`65FtER{oxL^1{Ts><{F3xB6=U!?f) zh2^=X)A)B1Z2KbWn9l`c%H7|WT#nr-rag|TXt+~;RW*`{e4*UcB{zWOASo)hB6(e?;{+SO=n>qeF}yJ1I?Dg&^^F3WRkuxrcpBY@;{qfuJ$*v)IVUkCiC$r37vK{a>n}?{ z-;7e$r7e><^((MUhb_}r(XTw+J%Q;? zjOxK1?M7QcT>SIAewouqyWc3QIhj}c{HP#;-x_E#&1((-@YnJ14Vx8Rit_;v2$4n3 z?1bGH%QwV2fjbBaDLkC|7QE7OX(Tg80w}(%{e8gPgA7^T^L!wi>;v9p)iX!Ai`oA7 z^Ua>zbNo^(wykPGB69j-9Gqk#-*6}#gQwD*__{f88LEJ>^E7W4NB6+9zqr3;1rdC7_ z4eD^jLpXPkn1`-=U=2K1l$qUR1mUIN`^fGn%B%t5f`?2BZVawK_GZdTbQ_fEdsa&q zcjn|Db2&tK0;A0;^v>)}7>phd@si84&;5CqX&&pyYbo$|xRUq<*`xL2DpGIg&(JKM zq5M5(Q+p6ssg7;_hl5cU;57xUK(>4Do}ey#Fnryk>LzgW->e4_TG6mBIl{0d+w|0VRxxiy756oQ6Tp^OuMYI>i9G-lcCP z0kpRP7yC0X;)LnQ_(rqqxXZ;yu^_xi-MNZhUP#RBUUtsxw3`fR`clcA37tEil?ft8 zv9HO87Re@|i=So_s(+Y8Wi>Vhk^yvuWpye)cZorNe}~7A+XMD%3+3%vROqFQL*apr zw7D_2-{D`J#o-<)wsyGJ#4`<59uipf<(^Wy6h14Qq=SqhD+_7r&R{r z3%at3BO2++FUL%wrcaXmhIha15An^MqAH;;NeIPjf<8X^B;LR2c$XpX)((O-N4_ys z^s#OD$**vX>UL?z=xZJ>e&2=<1^asC>c(yj&)-~}d+<0a#_)Yt`DVu~EA3JE7%W%< zSGSr>6hfR5ys)$XaWVP;^Wb!23dL{k!GDhIc+0&ifd7 z-@a*vA_=|m3}jql!Z`|C68hX@>}A54nw~Kn9o5>^KVyAMA?^l}dF)PQDZjft_;DAYp+XNOlK zLf*%5B5*Et?pW#8W`~xf+*V|0Hkacl#uG#|kb(QP=)4s=+8x=Fv;O^1v0M2^_SdWR z116`EZB#qXpG00R%ahvo@a1O^pl$#DxW4Ye_<2PmU%u;H7hHV*krHxh7@UKEnmI$e zLizlLY6(?eqw1&7lUC}BnEKS6gz~-=@d*Er#U!C?jKKiko`8E)^&N$B|7VR=da{8b zrI+-#{u-xEFi3aW1y!|Q6l)>_LiuGGu?pQ+`O#jO#tBy6sQWz!R2SCp%QOYX9}b`P z{bqBw{U0=8`L87dmhe;@$(T{{^~>dPjXM=lbQID|P;p1D4tvp9V@FwZ!p75#%7Yt# za_eq1n<{bG2HcNkrW-41F%V+j+i&C#J$#+6d}d7PguXW8Wi065nl5rg_N8AA?qgso zDjNSmGX907pZ`mPldHF$Ux}*kWZaOPy*@MOu#^vsC{|91$-)Q56z>wHecsfaR7<@l z5fgdk`G1rdMcM_Mf0^1d9z6_d7x{DK|E4|sKNt^gZP)%S>HmKIe`iY6uN}m2QPLb? T_P&w-$aYrd_GXPH@c91)i-RlC literal 101686 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 m>eGuD53v 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

      P0w<|l>C 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 BY^DGJ diff --git a/wiki/images/rps-practical-heavier-windows.png b/wiki/images/rps-practical-heavier-windows.png index 4f5560e8ffa6822ef83c59eb0ef05d728fa49bee..0e31eef17b0a81bdaed57f3283a4332bcf3bc6a5 100644 GIT binary patch literal 96065 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 E0O1I|9{>OV From 440efc56bf007daae07aaa536e279c1a50e04b25 Mon Sep 17 00:00:00 2001 From: justcoding121 Date: Sun, 4 Oct 2026 13:24:52 +0530 Subject: [PATCH 02/24] Drop the Linux practical chart another 20k once the legend clears the tall bar. The same clearance also lowers the macOS tiny chart from 100k to 80k. --- tools/RpsLoadProbe/render-practical-charts.py | 30 +++++++++++------- wiki/images/rps-practical-heavier-linux.png | Bin 104278 -> 104073 bytes wiki/images/rps-practical-heavier-macos.png | Bin 101681 -> 101686 bytes wiki/images/rps-practical-heavier-windows.png | Bin 98310 -> 98127 bytes wiki/images/rps-practical-linux.png | Bin 93982 -> 92261 bytes wiki/images/rps-practical-macos.png | Bin 92997 -> 91681 bytes wiki/images/rps-practical-windows.png | Bin 91081 -> 91082 bytes 7 files changed, 18 insertions(+), 12 deletions(-) diff --git a/tools/RpsLoadProbe/render-practical-charts.py b/tools/RpsLoadProbe/render-practical-charts.py index 596259a9d..10da7ff65 100755 --- a/tools/RpsLoadProbe/render-practical-charts.py +++ b/tools/RpsLoadProbe/render-practical-charts.py @@ -666,7 +666,7 @@ def plot_packed_product_bars( # One-row product legend in upper-right. This first limit is conservative; -# render_chart then drops one major y tick when the real legend box still clears. +# render_chart then drops major y ticks while the real legend box still clears. _LEGEND_HEIGHT_FRAC = 0.24 _LEGEND_CLEARANCE_FRAC = 0.06 _LEGEND_RIGHT_CLUSTERS = 5 @@ -733,12 +733,13 @@ def _tallest_bar(ax) -> float: return tallest -def lower_top_tick_one_step(fig, ax) -> None: +def lower_top_tick_one_step(fig, ax) -> bool: """Drop the highest y tick one step when bars still clear the legend and the frame. - The first ylim often rounds up to an extra grid line. Use the next-lower - labeled tick when the legend still has ``_LEGEND_GAP_PX`` of room and the - tallest bar keeps ``_TOP_HEADROOM_FRAC`` under the axis top. + Returns True when the axis max changed. The first ylim often rounds up to an + extra grid line. Use the next-lower labeled tick when the legend still has + ``_LEGEND_GAP_PX`` of room and the tallest bar keeps ``_TOP_HEADROOM_FRAC`` + under the axis top. """ from matplotlib.ticker import AutoLocator, MultipleLocator @@ -746,7 +747,7 @@ def lower_top_tick_one_step(fig, ax) -> None: original = ax.get_ylim()[1] ticks = [t for t in ax.get_yticks() if t > 1 and t <= original + 1e-6] if len(ticks) < 2: - return + return False top = ticks[-1] step = top - ticks[-2] target = top - step @@ -772,10 +773,10 @@ def restore() -> None: floor = max(floor, tallest / (1.0 - _TOP_HEADROOM_FRAC)) if floor >= hi or gap_at(hi) < _LEGEND_GAP_PX: restore() - return + return False if gap_at(floor) >= _LEGEND_GAP_PX: ax.set_ylim(0, floor) - return + return True lo = floor best = hi @@ -786,6 +787,7 @@ def restore() -> None: else: lo = mid ax.set_ylim(0, best) + return True def arm_sustain_c64(csv_path: Path, arm: str) -> Optional[float]: @@ -1045,12 +1047,13 @@ def render_chart( framealpha=0.92, ncols=5, fontsize=13, - handlelength=1.8, + handlelength=1.4, handleheight=1.4, - borderpad=0.6, + borderpad=0.45, labelspacing=0.45, - columnspacing=1.4, + columnspacing=1.0, handletextpad=0.5, + borderaxespad=0.2, ) ax.set_axisbelow(True) fig.text( @@ -1061,7 +1064,10 @@ def render_chart( color="#444444", ) fig.tight_layout(rect=(0, 0.06, 1, 1)) - lower_top_tick_one_step(fig, ax) + # Keep dropping a grid step while the legend and the top spine still clear. + for _ in range(4): + if not lower_top_tick_one_step(fig, ax): + break out_path.parent.mkdir(parents=True, exist_ok=True) fig.savefig(out_path, bbox_inches="tight") plt.close(fig) diff --git a/wiki/images/rps-practical-heavier-linux.png b/wiki/images/rps-practical-heavier-linux.png index d0dc7706166df4ee37706ec50321c82241020fad..edba6051059619c927fa736314e0cf33780df971 100644 GIT binary patch literal 104073 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 R?Gr`@PB=d>b)%tSdrSR8`(sEsg@%@f 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 diff --git a/wiki/images/rps-practical-heavier-macos.png b/wiki/images/rps-practical-heavier-macos.png index 1295a1761aaad9bdecd097f7887d3af40c3db070..15830220a0a28d35f02c425c7e1600aa855a816d 100644 GIT binary patch literal 101686 zcmb5WcU)6T+ct_QqKKdZD&2-uK|w&eh=`(eLN6+W-aCYVfQpSK1f(OK0EzTo6a@*r zm(Y~n5^4eokTcoOyWi*g&iU)$ZwHsGgtcbP+;g>izt`4OJIlbqKtn@w_Q~Uix->NO zGc+{EZ=X5|{^eY=e=qnZ>!oVsrRQqn<@>?|N~7_@%gxEv%gO%b6(6XFr@gC-gy@|+ zqIX2D*m-%mdCH23Isfk&qOKmcVjkni_rRx|c6)5>NkhZ-j{4uRpCk7(XpYg)Jb9?B z@0YSRdAk17JcY8!yf{iMRv}#c@LIi3)V}XQVWW`x=eQdt`X&O13!me%Au;-undXA! z>aU%0em8o$-KMmWSAu(7yHgTnJi8OE7E-nY6nU&{x+jPVBNLvJBcJvs(t9Ak7q|Br z!8QE*HTU>WN-@*FN8tOZ=Hvf8I(Oar|2jN=Vg_94zhCc;(Qf?vckulu%`w0KLcmg1Ph5Rwgl6I|n!sH^|{0_%bJTc&HvxoR4jp>Z z6bNK|6SmfSwaBRCrRZqB)zu^`;W)9TgMKOJ@i`YqSb~|ylS=GGzcmL+8VpyHh}zz4 zn7G2*o2G<4T{B`geMj&TSG~^t98VZjD6yCu=8?%P9>b|^YqD+lG#YPZuK~U z^Sh++Cd$EfRIz#8@G#mEKSf>{D#YGt>5am%d9k{JghpSx`$@9TYEEA%}zd2*2h%yFf3x%pEFzC^g|2!&>bAFpa z84+{eTA0crx#h->Gt1A=o}#&?*UXn>_4F9yE#gKCvs$P2Cm$GthtK->5Uyr1?ORA* z(-EnI2ex(xMx69D&k*`Ti$2S7_uGJ$(j=;8fkTeGRwe7 zSFwg2-BoNAdI)7MhjebuvJ`CI?^R(QE4LpwIOeF8qmC#tuk*o4a{152=(uj@r3aM` z7n{~SFRDt7;FPwhiwJ3RnQe`5o~rjhA6BUlu=DNw^+$V3Fx$>A=RHgl`x+ZpQFTS0 zi{0UKCuE^!tJ!DhY>DgG#YW+!hmk7o*P5A?4xYnFJ0-4-`>pFLT430VRl=DFgL+zT z4sn^p{W05g@3FroO8V17@2`(Xwk{(fg*F`7K?j>{&O1weSIHW&H#OF#V0iDg`}HJ0 zgTUP(L)@1m0@l^}dng_5MDlaln6+V3S8uqqOk%n{n7~_SdBJGEa@q%TZ0D)>U_z3l zBgp_|);@Joyu_+4QiR(Siiz9oN>h-t!8#7+$GCzUWUrL)UeUKK(9Ox5(#+FL^+Rtb zUb67}ZkYM-ef|{X<*yI>Y5og|&#Ks?f_4wKd&nPH1wSu)Hta7X>$rMSjt(1HH1A!V zBq4+#7#+FeQIo9^oZ;r8w{CU$PI`~*Clo^pu>RjZ+OU zGRIxJbAI zbEwcz4C(9*CW!CG%y+ZZS<9e(Xk}!`b6JC|Nu{nN$!+KHazShl9T<$CKMD|FQ0_D4 za}fmdQa+0cKVx@pI@tOsd|f1%a#%I#HyeSH7kjmozvK3N%pQ6UIZ-A4qRM4*<*3rC zjVa-LLI32hkC%G-3H|;3YduO7uf)$VBF;OQyk0duQ6lTVWlix2KG+O5cmKt91g&Sp zygkcVD?Z{7R%+PbG50$dEWO3j!7#F3)}sis0>1{lka>guwhi$M>4W%31fP=i@91dk zC$*-4KW{FrfpO6yN^2l8Jw{bOUi40f2#pk5T^D}K%gT<(`SW?`PU-FvyMx2tLU8e zf$pp-=<#twEPji8ls5@TyoZq^aLE9YUb z(!oXxJeFUJz33$r;Q^Puv?~R-uJdYUY}kjy%qN!nvV15emvIC3*U*s zSIsV<{aAK}TG6~eo^kQc^o0sX}+Lj4AMS**N!W+S0+WZbe8I@$> z!J^+a_v%w^1eLqmX$e$%sFCJs&{jMD9s3SYhlkAiw81*H)Z z)*Q1NH`v$~Jfq3(fMI~#Ocg(hGtOhIv$L-1>N`cO-Qg)RtLdK{Ud1@!7T0jReO%wc zE>Ku(*)+Az0(q{T`@Fj51NDx?^;F4szL}`phTftMC%E=@vBtfZzT_5WB`-20@nf+` z#Rs7dJ+>8M%XX+#n1`WNQ!P-`Ozp515 z_N3t|r?jAX|;%j7WK0XNS?6@Pa zqpu6u&Jm0*uijw;Q&RaaoC>6AqSGa26eerEx5eZF_cp$D9D*BZ>`s-dlPM09n8qZC z;p>P~FgUi#wddOuDA8+{xJWtN@A7qwSBI10pS8+gv(R$@jZ98bt7V{Vn!io$y4{g! zPo*<95bRP39VZwim5^zAo(B$cB~!u1=MQQd$vC;`C;X{#fA*84U2)_iGTy2(xL#yE z*`-!+F0fBfP_VI$2i92yHUq|<95`$)My+-}j{UN|;-6*_x2~_NHJ}1bPJg&~i$kjA zt~R#P`LF|RTGgGv)@OsnfJt`P;eeV;anU08npPU3EsmOC+d+lF7xljze?>lU0|R1v zZz_&k(W>>6*QyY#QZrR{IbP4Qo^nKPu?hURpsj?j-~Q2EhmvXI*GOW8kay)V4-FTb zp3k4a>sB~GM#90mOLl2kOoNF|x?j|wB-}Es+;bQ%TDBy<=TH0nt@G=eAqVf7OQLJ8 zQKj)#h@s+jNP+GzrEqT-+h#OCts~!Fs8Fmh9L$mg)v{tY+QQ4$mFu0)lBK$u@RExG zpczlW=S70vn{WT4SqIQeN`( zdeHF4>{}r_V=K2f5Bzxw6?x=`mm72?vu1iM;AlTEih*E6cjtfpj=6q_)mIIf;5uU^ zlS>N9%`q50~mX4v;ooDue=PZHf5N>X;c86xXtQ~)}n zu=$fkLOw`<40#@{#eeo!Xyh&YjWFu^qYx(;o5d^}Ckz2wp-g-CYulvz|EXk)#Ju74 z8GYem98o9pl|`!l@N2Am;}L1q$#oU*0V22i&+{&(q)ukYusjE;`|tY4PW5pB>AQ}g z-leKO0_SkfSzzB_=NYkmUd_@II)sFD+{z>JSCRZ?jEF0R=v>a@56ngDH-3nuYM+0` zFW`?2*!*?L(_7@zkPleB=Zss&9jMFrrFzaY2+mv|c~}4a3j~YdX-fpW^xM}| zKwo^O{1uL!Tx9q58@F61WFpH>9e!$nP;JrFr@lmw)w@H;tDykj_h6s--rEgM1 zFjF^}$#t-mRrj}rlv~z&tO{L65pP5jvZm-l0z_RnAG5R1IAOB(xmBrtn*vfdCPW z?ko=+2J6X5PQHpXZm3e@a)0=HYg<Lv=o!0*4iC zUW0a`C!%9SpLX1`Z)F6XE^Jl2sXVLcGH@?vb|M)!8*l1T0@%YN1%)T&k3L=glPh=* zQPcDO=#X63zbwR!7C-#jS^yw<9dQN}aBsfv3IGJIlxM?;`(H~GST)Z4)fk&W6!okt9s%Gq zCOsWE>r&{{)LQG=EyF*lPfzO3vASAUUm&zIshYl8BYAP5^`D9M=;pBi>O|AAZcg_Z zw{Had*q#`mIG#BR==v>;*Vv;!m=i#*r-|cN&Ps0n0@Cv4s4+m0hTFKP4*liTdv1r=@^4EA`P6lUFz0; z1fBAmJxi2E7!oith0Jh3DH7vv9f2kFKs4*qGch>`>@Z<3VFc!~@bQdKt;OREe=DycUM!dcESgukqXDn$|E5$a9qqL=q14@N!-X{cu&2_F{%8{l%erMdDDs$l!3}P%pzaMPn=dc)7XiVXnPPgWm*=Mi3XBXjma@QClHHSL>?!y~YS!~(s%w?&u> z&)V!}?iJ(jBd_UxeemYpw2VBGab}kj(p&xKE$4)kKJ5`G-#Zm{eLtE~^|TZu=e)#A zR%X9jrRJvX0VX?eD~rhgtu}nB3M@Em0)!;8+xpFIApfU>$fx;#CKUTW>eQ8!$M!l! zNq4rvN^swVcz5?VSzz*=!xuK~c zp0M!RrR)^9?MX)^7#Y&0^=;x*GrfiW1$hH3gSU<)6+yr4`CSw+k1#wSi|>^^2svzK zVF(oi0A!~pf=7Nz)S~_#Ha+og7nG-q#BdJg+;6LTFG>C8grkmSpIOjzm;3t#0iQa7uDNLfHX1Ovdrh}C_vV?U5v zv(*Dey+hkZUQ%-C=Cdy|F4QV=^!aa1U;KT5$1H!gK~9?F{DizThiXA;WxpNx-l!Q` zu*;t-GPIC2N|p640^$YX#~HC|@nNB>TxK|>q(h0|qd=hH71kARP2MsoKUKFj={xPL z@|MwkJ`y5sh?cH~3*jl!U0hYPo?VR%zFF z%`j9>!o+5*6pH#p25QY=Fj2j&P^s{4P33Z5$q^7p>##{5t`+KC%g)K!ceSnRtWl4G z(PH8GWQ5`+dD(7AylJ}D?&^r|>=0nd6Rs(zcOH?Q$-ol{+A>&f5!JfSJ)F0?-D< zNvmb!L@F_ZYiJ$>d}QZ*oiAR~P*g#hRIR3W&aU>uLxCuMYyR0YPu`&{AV;Gu0(mH*m-AG*LEne&kdY5h8 z{&~3G-%~ohD3qH4CoseFY`as5w3LOjrWe~w`~3MOP#|qaSs3J3^cb2~vuSVPyEw%d zP71!eB0c4o<*21;pEmBGb*qi{aDP zY6b3nWs&jv{1a%sTIOs1Z#kKw=O=MhMbV#P#U1G_CPq#BeknM2r^}c$1%#;M3 z8>`dD@{|!Kx}QMOW!rK;JWRArb5~vjY*Bc?$G-C{$XVlBbEnVrQ=|^xN0dKmhY|%37a|} z0eCr4LGa#qf8P?mi>NEc(_L4K-02Cy(Pc_b`)9{~tdH%W)f#>m-xy`byW%gN_1rgK zk@Z;!P8e1FV_FJ6((9LdzfALHuPXmZ2TfS&v-4|Io(=Tyj^O@}q5ZP)6-An_d#lm2 zR9V(%Hl(rVuFJ$dLy}*HTQG4Dfa#Ut;#JzAko1w5C2xT})Ey0erXT>I6VsMr21;%Z z|1;Ze{!I;~njdrF7j}S%+Otuuo~^h$sCQJO2Kg*Kc#yG};;9*rafV%T7K<}=Z5V3$ zgc*D*1Vi~-s&q;7bX5BFK!6gGPb|RnI9N=xXvyDEIc?HafRdTnbuA9x5YR-95!8{EDV?#2P; z0nEp{zT9b{jDnI@c90|q4XbL5Oz2!tWzMx{RF4-~o^Ay?`rm%^4L8&#(7$VCidvS( z%JPDZyF9rcZ$Ge=vh;R|%OJMWHsnp|Up7uWqgdw77fp&GWmnawNyzPxDvrR#JkT7- z*#DyfzewL?`<-tIY!m!MqBs;|U1+Yxx4<#M2{!dyrr;jA^jXIM3Fu zqB_2HQek)$Z_wVKMqmQmR$2DcxVpWR6-8R)H}v11nZ08Gmv<|Ifh|q~9>Jd;=rPE5 zxI5*qr5xKSB%tp6abp6jjEL42r&-n6VU^rztehp^X?DmX?g~;n-iV^5O&&*)56y^ z$%fDX3D4EyDw70JbF+O5=-;$}l>!{zg53hTgna1X(x<3Lo(D+O7rjUYO7I(HjJ6Gm z(B}&$6{?Uj`SMk{yyu|yfaImtYz6L{rz^spfR6#nChop*Cg$3RJ08(v;8TsMq}P(U z8Unc-XPgEJ5QV5}-$X}V((wPfDPe*s+HE}sy+>~&!@ClcgS<9n`>OJiOJKAks-_jl z?h7vTHoH{+gzC*z7ZIt(#9GN5^iJW8>Z(u3w@dz>>a!n(oXefD!%%nOWMh0C%1YI^ zhs3ozUbrl^Q*S(v*k$5LsBbD{RztF8uJC-dt0&}sZfA<<39zh~jx**dVE9N1dd`ax za)yz1mWMNxk0-bn+g}_^I9@h`SjYFxQpKgW>vsNdLSg@h(s_u51-wJ<=F6cr&n;u# z<^6|=I1VL!d*yW1TJ+k!%AJd?9&%t=|K|D+(o9&Ux9U2E-pUrTFZ?_f0!@Sj4U%KF zsaDbaGtUP(8x5~w)L$zRMy+sd!E_}Jx)onBJ&TV_J${_oSjyaLBJ~9TGK1R{pfLj? zY;~ovQpT!6#LnzKkZ@O;xLq38I_)%{_W-9w+}uLh&b4vHZ5{>r;X7PpjH|@lEw1xF{A3wW<7(cmibza_Fb$f8uim4>IMr6Jj`ejgm^o(T3bdryA;QqYe)FPH zqeV_`*@K+V4dUH3%X6_>l@D{9*X!_&t4colwI<3n+WbcKKn^>4u9JU(n1*knD4II! zEC-04D)5+NICx}=nUeeZxRj+i0@C!k*<&(B{XM-B&pmXdbndeCi7rQ;u6zDN5W^a* z?DA8qM?Gza_MbjSn)tBr zI>jjBP02Xb8qZ{b3sGYMubgy-(`nNzqK!OV!;>us$vQH5^)z+TM5MrFJY7-PVq;fV zj$1ASSG#lveop!97g3dCAK+ zb;YkfkSuP~nWp*uJ?%^W$)W{(&D(ZRelw2 zT#>E3aMiR2#(YE9$5BAG@1b#O4P3`N@?q`=?x}-8K(ou_x?AWPhQeF=PK$%_*&xF4 zClE!zi3o4feIulJf>87LEhGD1W((xHO!4dJ*dRU*l?HhJ$oY1lq^~xur_ROM-3=!I zJ^R48jp4^MoH%)BJuI!+;i~bU^|~3F##Rgbo!v8Z2zq87CxDf`kL?2)*A(~%2l#|3 zSn9i65f3p(;P>=Y7NQ$vP1m;+wHkU#+_rxgPENfSmSrz`5_>b=JS1`F`*(MInRO0ynWQNnIK%RkRUIJRi_{wOZ)rU}hjbSx|ALqFLSzMzu2|Hx4}0+>N+ zUg38u*G331_4>PNK-Fp@@nRd{b-`&yUCziFc-W%iSptxf_kf7XNpSCy#COFaWxhA; zzx1x50&~=*j>?BgSea2EDC6pYv>gbH$cwJrAnjY7W%y&)80n?SS zV{N)=+IK)hdOtx9?AxB@!J@TG*C>@#-7I=rTMRIw$&_C`^4rheLV*vxxR63zU?MD} z4apBt4NYQ?mg4@60jXQYr9W>KdY@#xJR@vS^rfy?rqfeM*i(|ei67rcc8RRIg!Aih zLRlMwIfDOU6}hRDzVM|-jA@>0gX2v7qAY+36PG!j9TI?x|5VztWc>28Z39@;2!J8d zu2c2j*8A?1f{DZ!j0YD{yI2F1N%JNK)x#SbGS}C`RVL9U6%O;$t$^W89&CLNBCktZ zs;hqpu5q7j-RC6(e=g9_%w0A2QbdGFm0e%vQPXmnKw+kgj}m!J!t(tEzJrck+@u^9 zy9Eel+eoekCuIw;q77&pkhk!|R2%DU+f=}6@jFjf;O^W}p%6rqJOcsfZ(QrQja%R) zR_5*ZhLIm^1pXm?Vxp3iDzrEZMb8`9+myOB-%;1Ia~~}C{-o#Lbx!%}W(xgYL4vI5Vn`chCVp+#O+$2ZTrMAWGW4|7TUuVSuHTopXMN)H~63rV2TBoD%a^L#P%oa&M$Y4J~t#4n$4FU?|}QP4tE7peqWFB z+D>rL^y)fR$Y=$9PnFVv-0EmrZWq&m`JnG&$`=4>G)S~@m=;FY|2;za*C9gKG>gVP zzSCVA{lqR|cG|9Mh~o*kX=mI-jcBsQ*uKz5#DWP;xKhq%5EM$Jj(~9zD zwn4N4VjM#fLtw5HKC4g{DQv*J91J2nOO=&WG4L}WM2QbT8b>;G^&g>;T=`}-;wOQ* zwJyY!pHh<0MJ3dA1i!&Q@!@se=9Dgg8*~8{2Wkz4y1t1S5mvEu9^fiP z*3M`!N1F?ct#!eRKL1EWOpUA(7rrXts%M>!4)&MD$)&Xo+T}eXU;^hxX+vnCVMykH zLv7>afb_T+PNQxk$mzI(WL~?Z5D>Ac#jdyt<#9#k-qB9iRvNl{?9W44rn{-HNwLI6 zL9Ai$0J&h9_wIrN>LoM`=6SpDZ@75aagfItYjBl4QayyUWyR|W+U)u(L`^9*Jc1U} zyQ;LslZ>99gwJCTlO7;b{`gq0B{M{*`kJb7Gy6$*G(u8h2il`SY zUIOt}MhKUu>-(6Hhd3SY#yivxRwuJ1p-ssuXe%HH#GCi=)FEBm+W8Xp$RWr8fh_rn z%Da?G!^){Fc;@H*sYR9NxfRGlYg>o2u1>n?1C7kxS4JkbFyqXkA*jY25$gyj#(-ew z)Bxf(X6&S*M*i{u8R|+MEo_7M zSh8KG=6w{yclH;#+cGPuA(!RKEc*ad1Hps>uTUmR=GBotkAH>B*!SNEo*rCGZau~g zE5Xf%SfvVy2zZ*UI?C%Mds$BN-DP`a$gQmRaLF~~?tCvm(1&DgxOjEL_c(TR!D|nz ze@o;WfzTZ=;b}a+923JxApwQ`E#g-LINo)e7CK8Hjhx%ue*hg3?2zFov3qJDUJu+Y z&RtIhKssxN7wk?nq8j0385nd zVtS3?V!Z4A_or76buE%#UX^2C1@?){sK}m?bu+!erFVpW5cseR@(_@ifzJJoNyN>z zFv*FSPctPH%h+~vCHQl8kuSP%V(uxf7L}C_(gVYe=gzDo&*2KF&XFtr>ItIjWT2Fk z?Q&Tdd_%_0Jv4}%q;eg@QtS3_?AQ=22BXS8g!$Xe1hJAi+M7L0Z~9vL3sUk3-wwdS zOdZf7&Ds9(&n)#oiGm-JiN1&@z>bHPWNsb?Q^=ONXiEf?YDsYg`>bZV%MLnfn~K)V zea^4S!fVI0W~2}{n@e!u8nhDTc~*3D)Y+y%JV4xOv3x+Y!z1|2E?nHe>V-&~J{a|f zkN%0h-FtYWcsgHniaCZfDhBC7eJ3l-Xtm%{?YYMTF2*BJUrznfy=QKLX-A2DPo6YcfRgsvR z^f;o?i5bX)TCkjS=(P36{Xs2kJXp}CpPBy}&aTy$a7;pyG)*EEvP8Kub% zszM7Ed(wG*IEDI(N`$^K`s9D4?MXU$t!!&zbH#96Gn?gt{@=hqKi-T@1p&7&lc;q2 z6t7?D1B2rmz`66~_nE)DbO;79PZ-UE-0`i?XRWues)O zE|>)*Rl zN9kWP;j@N_o6PTcmH~AbB5pdr3At&>XXc&h2@s*VKRGK>R%p$qv@F;fOgjSjlsY0L zrw}4#2rYup?iH1FdyqxGsB;xMZ-L~TDG&yKxLCrssiCl*Ea#}pcdormw;w_xgegVh z6H13WvA;qwaM*m;>Tq%LSADO04KN}hAtGp}Pp$Yx%UhXoi~Pol=ig}!{~FDALQG7d z@!n1aT%}X42qpu;#pVlp`)_g~+LV|y1z7Fpjz4zeXV%3K?veVna!Iq#sWRb>>c}#n z9@Gk6EH_6yHw>mMB)d9|etW?_MRe02HszbBFh``1c&_>l>tE*JeZZ~q9aP=684$%Z zPuv5r$pn0e`DuS=mGskn@u#8;oBBud`w2qr#e%XQE{WkHnYjl7P$}94E)iG9`ICb9 z>PkJ=RutG31FI>Gx%_=z>>*eNReW9U>0aB&+}U0uG@&gNQ&8Aho9|k`J8X)|_BXI& z98vszmQ)l-IV74d`|qAX#2E5c@BRH~ewxtPIAWJ{V%HM!VPx@hB=fplg<<+M$*I4b z6-a?})XWg)rSf7hXti7GNmBQnb!B$!BKuNyHnpu%Nm02>{azPjAMK_-n2l~sehqU5 zkI-{|z3f^)v7O2bc=P~>h(7*X{zwmrGn<&P>bL|xS(FrGzYUj9Dbq; zkaKDsdd3U*PLqK+S^Mi;sl7R|?Ox)kn)UrpG=Xp`Uq?+yJa+p}y7tPMQ_U1!sG24) z=b>yM0Xhs_rKJ%cFNJ>eUh4f0a#uKtsjlwlLY_?IX~1PlfkzJDF4?K&?O7?;Dfxu= zMQdJKbw2BBVa$rpiNI~AIW1aC(gNRUUeRjtg(Qes;xImitZ2*$*gWENo!d;ffJf3g1^}}lAg-=rQtGFKaK-#=mHcL>xpqX8vk|xwwz{~L!^Mu21Inn z(fPQmXqi@!3UlmAmR8Dkrbc?B;csrGYx|>s+c)Z5HE9FFz2#ux83VLgq?N9yL!U2c z`v=IXOBj9!xU(%#597hty3hY!0!`-E*wk=lUd;_|n$j7tkg68bgQuiiChW>=x;&bO zc2=!5jUR7)35-34hkiW)(rbBVxn=MEtsSQmnwJbZ z@S{w}-NLOWQT;JzQ{}ay-|arL6{6rhuYU6cAGjNSXaM^Fd+GOWxzsr_aH^_{e4+K0 zo?Vi-hnC6Y$O4npHfWnvJaMMk}wQZLE^K7gAIUhSNS~dh!ba=dfq*=*{ z_WsYC|M`Tm1XuByvQ@CH_;&E1djpr{h%W^C#Obc={SD%Z=V%4hB!S^8$x8}kzc}*0~@`F z-nU3~IC@3fe6oyvn6FZqlpnDS`?i_fSNXjzozwYLm1U;0N;UCj_1Q6hSC8?x4_C8f zoK?!k8iTqa3#_jmU$=TN>DJAlKWIK`ZW+NVdCBMrZ+c@xX zLAU<~ovKG0n&bcdiE7==VoVDlYyP>vn~hHm6L}cYc>Y#?}zccj# z2-yV&au{x59bh;owh^M{yFJ;GT&z;(vF#_VEwsmnJP<+-PpnFEjZtMe_a4p%y0?XtS z#xw&6T@5)vQNcBWLvjLMp|*}RsX!)+H#@3;4Dy8IKy85ecV_|9%A&e=gpUN{=bYtH z6=(Z`hF%pfo?G`_r_4y@M?87*q!LDSAs*3HDPzTqOS3sY?HtipDMuBgminxl5CiIC zRivCoXNJ!>g{7(C-#AS-PMU{eGY<2Ea)~F9({lR9Ir`NIqERTbq zUqVF%IKQg|FQ;%>-YSNPJs%LMQ@$QbFn^2RGqaNqa-q7bg>!RYu+qHJ@^cwHi z$k-W0;|`4*0DoS|ep%_x>ukN^H@OxSKn z!Ov5thRk%we#Dz;qrLyWG^BukqrRLW;ph2Ny*_{ZWevHS?n_cp8~~yCWRMZvT^k#C z%fy|u>@ivATLtn(ugw;K*jNE%3{z_QJi#)ky?@)*78Gk~;W#?6GTWZ+VbXsWSag0V zC-bchzNLmT0k2k-dlo+V2?dG&pXDnI&Y)(ee13lBd-?-+1AoVLY+~wvsuNIRnDs>= zddBuE$mV@9YDu|&cOIoaP^Dtcewmh3!{#DqLY#wIHg_6K|!jfs0{+@ax-yb|K{-{z_)Np z##6sQZgFB-0n9)G=tro*0x!4(T+Jv5D6TI&0oj?wVz6!DN~jJJg7=gUzydXt->HFH z?RT*M9kLF6pQ$sABSppod{@r>vlE?rM$zh}T-u?WJftX7qIxO(FTX~Mr9TUm1VN-a z5Z9M5#{n6%0>E17mTA}8<(r%mHqU;0kC)q9foEMhH}{F|IBPGDyx%uTmx)m@5|_%> zTRkW3%0Ym_90ZYpZ1bNd|1O7`fjaSt+VXPv<)4UV;#h?vl^}IOn?}%!(~!iI!)MZdFe$V|G(k5IQP zFeyF~KsN;nQhbhjl=&yMe)TZ;THcn%$-sK5YliR}VIKy;mN+)n|7kdS^^j_|`@(?% z&{ii%eb?3=g%3RNK=}i(N(mszg#~)GaYiVf`osTxy$Uo7RpbFS;_L!#HIUH$PO|>{ zBQSeX&cEsjp}Grz>lFiCtOTa^-=EU>U-~V z%d``jhH5F zj`C%RrWf3sLN9X03!G$Jy$s%wpdI>uH)tLIpF@F+pu=55DlEAkdG804+}iC9$E^VJ zu{jNZF-t)zqia$T$QZ?LFFd%9(NMzwZTpI*KLoJ?+-Gjp53D7?r0g57a&>(gFH#b7 zT@B>%Ci`z~12Q}c%F{ZK*{JTIHDKhGF7(qFMEeS)A8f*kw zC$#qL4bk0#i?>Xwu^{c`250kc3#B{bwAh`BGaCGIz8%<3PGIZARVqsF?z6wAz6t{Q zsmv-$L289?qJIzM1_TR1r~;sns~-&Cgg#8S=LpXn0?v`JX{8gY^7QigfBV?BGWxRA zu;6-=ioMyqMyuVeenNqWaKRKnt_F}|@d3d>>oUasVK^vH!*#x{Pu0~+L15n)-2HXY zV9;(u?QSxAKGC60Set6V7B_)DFJB6%lvR=3*L!Nn0KQ_2tEM;z?sRuVn+`mD4+Nvr zQk?}da#-D$V`=ywSl&P#e~|70FJ7sjCnF z?dSU)<}jH5A}_^5{cRIDP?36Jlg@PXg`ijHMIu$kT?K@_8tX4f^JN4Z)r+g&)}(G% zRDp;JDihB0ioTMx>AZaDieBZCBf7x`NbFCD)uE0S8|D`N^N451H$pUJmv8u9dzG+U zROI8V)srI?wB02={Ov`Hh_e;onU&Cvi!d;b>wxim1IT(9l5~IS>nC5=gWW09W=<>G zvN*|;=D~-%I_q4J(GBsfU1O9G2oDyyvu^>A=&d{mLXj6EJkanduK^8I&k)*j8kl468L`?K z=Er>5@7hHtcNjxqZ09)dxjnD+Xx@UgRO(=fb^8Th)5P8+(Hmwk$oNFzx9F5-`TXbo_zzOtTiJ0Z zIO%3=yHl1G)yhogA9(s|rQGZ5;zI}J#m3gt)GIpPJ+gb&XPXLgRyDD)gXz092B1^V z3p=owM9M_E=Lf$@exzcR5-$iWA<$NFcTRj|ME1`8*%HODUE?C}a+IAyF>j>)KXT!#Ak)KX@}Tr!&t0asWTr*9lJ4|}yL>7pCP~2#bi0-s?dLGm+!j$Y z!YW{DMqNtA--26d6LZwFclP{$cCz~+88Z36*!UCrDh;5=>Lx)W!6*g7mpWcQkkK9k zJsY0Kd=IOUydG?)dYLIgUBxn0Eiy#VTTHmSSXKI(?Xj+#y3)9Ci@ws4A`o72ZHIPP zF$NERXUNQTE;{duPwHRP9Fo-|R=o>Sn#OaV7t)@^Jld%TXa?2AP?YNSmrTDRu$+8D-Ytd9X^tzO7*laP#@BR6)=85ix zRl4L-^~0X53j^<_ij2!9HbI-CZEZ%35W~`*e)Kj_HN5n^@EVx%td3#D&hQ ze%7Fk_*AUH8hDmlQP*X4__b%OK!PmN7)w>Cgs$1aAU{Nc{PGATmS zPPf+_ZgFVNf0(bd;%PDDNo#L5P+5_Zi#esr&%Pv?<~?kTnrK{lhyYvWbaApVB8dta zZvp((#I??Aok~Iy8j!+EKhvqLK6o=y(I5=PBIMPd?E64FgW6P9Tu2oA+#btcH$SNK zAOcFl<=)ZhDa1#Ry7O6hfavcGx?8)x)wk+8YYnAd>pLxMf&$%TxEnEk|7ny4bD&x4 zm;e+eG+@YTH+8H_rdYUj0>F;^CXk_ES2K|Vt!;AuVb)CI1T z2!rQ7FWk;u>eF#612mQZ>Jb*W5a#SQbgZiED-3h5*Z7;ElIYilpCgCLtJ++6x{0 zasG+Yl;3%WB5g`PD;F>sGFPw5?mtZ*vLMu{&r-wZKzW|mwALkji`S971mzK?LB)2* z?XUHf{Hd@ULAtO!Mz{}F%@^dQZP~Uve%ck^kqipY%0ScROtl-lV}|$W{yLdDn9JzZ z5GDIwaX%W5ckWi8!kT`lAf5kx%)vF;B23#=!$?L;6I=Tc{O zK(lT5t)Wj#`Ojb*i>4cVx@?I17V%`s5i={mZ+51KtFx~7YLa86Enag7m%}w+x1C0B zW2@b>$n_BHP#fY{QEb#;8{~s2oB3TS2X?rP!gi;GsH6FiQ>a8zIt(Y{tNS5zo&gEt zKQDl#x;@5z@fcXm$!QhPo5VFGr9XFycFjx{tBsZg?!gXb)|)5aWRrqh3OW) zKD8>hatVpbaDOzw#mFvxLuL2kuA|1WxzvZ}od$9>aM`RiV1JSbTpXwtko~U1|7%$? zpLsQtF%S_m@}4&&y@Di~i#*FA*Dw=wJ7OAX#yZM8`{rMy{mM!2=9c$}dBW9m*-rd) zQLL|`-IU@3j0p@3C%PepMYeQL5U0_+rl3{2qq_d75NEM?L5QbR;b8rxdwN$MB!*$+ z8B?b9$4rIjMP#}vMVDBYHba+ckAUJoQU3!ZP0zjlOE=2qM@8Ngybyk!j;0i*8y-r* zq+Q(o=(c@bEt5r}{z~C^-kQF(7JjP19Ki^UfawPrK|iaG#WAp+)a}&?9vIDk z0r}QDG0E_`Ez3ExL`7MYPD`>;=u1vbWrOY{gGHaMhi1C)cfFz$milQ55)8TldWn9< zvnBG&YLN3@9`6JO6j*l)K;z@}mM{4w-G${D&kmZOSH(kkcZEJI-3V>|a7#AkeoyhH z!7T38vEv6J8g$Oy6Ly*bbQ{MDE<_sM;-6S098J}DE`FQ6mznix=P`T_BaHr3-KgoI z7i~5Kmp4&k`}6=FuG6GV2*}1$B{5HBFZd<>lYwr6{(Vop7p@R%t>$!i)>=d}KJ0seelI)mV*cKnbf&>&L#FzJlB(pCU_Sjf(7 zBkhcZfu6kA%Anxf!QT*QPYcx8zvE}&`u=;&EK+I7nh{SQ2xSOA^Hy+)m5Y&u?s{Bb zLG%6W*az~Udn2n!OxQ>^aL&A6|0XF_FP$Hoja5E zl5a0F_O5tVbERf>FW2z*fpR~qXw8*(`ciWGj~YuqdW*l+{BaJh`4)zEty`~*4mKP* zr{nJmsG>X4Ci$zyo<3_a5-KE#j4}S+Gd_w>G|2fIb=9OpT8j{~Q zb5Z0}U5fa>NV?(iSJYFm;Zyg_K={D)NhA23esfn z*IuW)!nUDv{N_d7-|6}O_1uRd|h4FjupnfZf|p8lcSz1hoSS#UBS z4ytC4jx}^@wr*g0V9G7`^U?y4g-MzH;|%I26a1MGF}yBJej0KajDNKCyieGir`NT2 zMGHO6-h}Wo3kaZ=*&jsc$@)M39tfZM*xC!iK4NQ95O_AV9hD_hzwfGFq)S9Z2*Nd5 zfrBMZBaNFQ>#l(+N8W=79a$f*(CFNu-h1AFAd-0X#`eJa$UQR%qa_<=D;Cr&djAa< z8d|!+hgN?-o-M?LG|TL9$^=I(OM->YU=+T+jrL|D*-Mg9=w&}QA5KcO!$Q+gNe zZ;QRkVUe@xN#nlL8_@rRe?Q%DdltD?s+q5S+8>b+`DjKe?sR^UDZl6P zF1IX>P%nx~6$taC`TsW~bT(zw3Md?8qG{i7~bhg6wK< zK(>Di&*120eDPE3m{@-Gcn{@-NxWsiGi4kg6#Z26=XK0ajNAa&AG^>4zr#CaitKw| zNY*pec`FPI&4m}ja>F)BO};O~BN5GlA%FjmI<7Nge(CUBA@3|i$j~@BBrW*Jf3+`* z9(FnWCpDEvYrX}VsOp~HU>H_oXck`8oBypKR8e@LQ|KcWdk?6n zwysOGKv6NFU`7EIL_y(#3Mx^>fCyqDC_zC`Bnpxw8m?JDC8J;#l^{73QBjbnq7n;` zs6r8iB3I8{rsCf2ulpbGb@v!=y!yxg=@shKsdM&Od#$S-X)C5}y7ayL z?!7$&r+XyD1E1Vkws(%OS5`{+xE5`mEhce(^A|4kE!?ryUCX&Cb9HM;O~YNWgoW}> ztO}j!cAKRKHC>=w*6=NEwP~S^@nel;ns4`&eq4TYeemQZ+w~S)ndPb7d*8XIIi+M1 zSLgHWjD$%SHq3iuk+R*cUTmEHtf~3=-zQ8K zTA}<%`D}BC7G=}?t~|L}{XNohpqR~cSkL8H{}rWcZ-An8Rbphpmwgm%ll1HJ9NNkc zBkk`j@e?pB?8C3JsorL((~5c{mBYmxFAm-vG!}l^c~@-u zf~B*c^AzsUN*Uc=QMTPRxOvNL1J1ab{WCZD8NtV7maUa@w36v3(e&JX^kvE4E+o+ux{_(y>ycB$jw~A zE6K0>aqFz-%y!fun)`JN@`ln@GKlkno8br7@3yb!A0^T$>6Otp%hn{EQCX0iwqwTR z@Bp#>VlNvutXB4!`+Hle)=+*H||Gl3E ziSDtP7OLctK?65-W*8HBL_E5-DK|e`C4Zj4NFt>iAjm~MWtTVa5|t7qGeeXiGc75=z%SLp0RsMX$BVidLC!uPWh!t{-VAQuIREwrXVnkU8tXofXBr3ZqT+rL98SAN zcmLKIf;Fz~r;SyGCr>wklf{L!scygz=rCfiOEPq!uQjKoCOjLwTXHgCb442=v$zbS zyxz`83AZrfD&DVHE529~isy6JQ2W!|(MDl)7QzfgRh&;d?&t1Iyi&e*{>%l}DR%&aVsOh)lW9|2) z;heRDhnXNoT`s8k$df%+|KxQnJQyhqV_;=bli#= z`!iezERJT2PqK&ZBDD(kQ3)u(O`Q2J@^D>TvlZOt37xoGRzMGJDoaeZi8ri+4-;3ynHCrA8QK-O$GtU{pK6QAovuptxjt7#J4^B}b9r8n7CR4y zZN6}sGZfqw2RB{6*=xM1ilzHiH;VFx8>XYk_$qecOYb#7rJBh5J7%KwrIDm=vcRP& zcYo00J)YX9_jCx)*(X85T1@%NnEbV1|loZWOJN`5DqFF_BeK0##CK#H0*}v&Pko)nMAQaH5OVmST>?^wR-9LI$ zahdJs>*-pC7(7l2OCQ*I_UpuB*7MUP^XB_)`!qVW@a^~ISMFEP$cc*ao zwG;X7aJ`C~A}!W=Uux6FJ@4l6-QtLj$*D?w9jud}Zn>NPLz!RXLa`nL<3Nq+np?Y( zEY$C~y0=))9M&3*UIlR7F-eV36ij1?b*fC|dfUqYlDpM4dfbYv$n~Fkb)QPLLU&Yb z>%#f92TpM2Lf5Wrh*1gpLb&%~^qQ8CGjWse96uamsJN znrq0IZhvjNy`RV>z*PYo=|)X;?K_=x`}-d~lCOxI5%Km){MJ-@G?1er#emXKI>-hAe^f4Iw`gfp@bHrYYM$vJi2k-M}d*XPlx-4!k=K&;EJ<<0bqEc2ZR>z40~$0Y2k zPq}gIcQ^uJ>me))``}NOs1NhglT;jJt;jlNBHaST~+ z_lP+Pw?AVT0wk#XZqiUFvzB9n%?zn^`}W}p+GLZ5@Sl;}uP@P}I#`l$Ogzv0Z|$7K zmG=~kAGs#qz16oma2?~&Wvc|Zkn5%5wH6QDeywoLyJuRBLHRxUB2@U*_oS>StxvKdlQgrt}I2Jo?-Y2QMm1l=9InMcUtGKjS zz1HzU&1kP?8Eo0!q!w_fM5tx4BFE?1W5ip>4e`fjwKX8yo8G3fn*JWMH1m041onh8d9$# ze1-8t&tX2N+H{wsDH*LyoY09G3)}zK|&WU~jU`Vc8ZcaH}2#t?b`vny2d)rBEnO zKkAbct<(q=FZ)rUC0w;by{=0?Gv0e1UW86Lemu*@_YT{d`G51| zeisAe4F4awppLyJWBpU5d^ia6`R7a7U`iH9VwKQ-(Gf@#eRuufzOa6*9Ho}H`4~9= z4#+4ELjMDf>1R#FwZGnsKT|IAvJ?bA|0zdqoI4;(2V`a2(uZLkGtzqdW@cu6V5^uoD{$41E8DBeGIsg-JKeE?MI5#FwoF04SS!b*udRYb zU_rP4AhFrgcc^dIyVP=J5yipFl(mDqFi z+cxD_B%f%o?f$@aF2cSq*6Zp9we5YhlepjxoXwf3DaVUA*&*)C>@0# zB$yw^9#Eomm_g58a6S`VSW8&65w9d&DB3LnHO9D${W%3nw>8CpL<4vc#XvHaL--7& zAwU$sR#EI`yWRKoxU*cqs;~sc^_*-YkeM8TW9gfs$G>+d1Q(A9br0cwCa_wv8-#+2Ra1BWDG1I zMCR;bzqmC#S-Wm;_(=8?NKWj}=fa&kK|t%n ziC1yW)jLGYWsSYozb;nr=fQm4Z-us6)p=GAQN^2Rqe`A)H-+K+Fk z{ApG^hOk9vbE!EY7u^QgQybEyT0rGzF) zXaEtQHO`Sd?#0ju0hddBU%2L`Nd9TJsE98e>~(#~OG8+S+$8cS1CdF&*hE$!xM8Z3iEaU!O2O?N#C)V|vIQiE zKYM76}>#>CE0_o1Q0TRn;Taxw1!_QM{t&vkPhqlq?#55 zllWg|m9SQvIHmBMafBNy1n(2)wqfxPMcRCRAp?E}|Av#tHvOc{vCi`1<_W{3@ixJQ zQ2l*2{1vXB=5#_$P0g-?PPn~!y}90k)@6Ej*KWgmMaKNo$}1O0imxHxrQ$dQY7EO* zlGd=nSy|+3LWnPyM}awEA(se(=!sO|!ziGaWzqoCJD^xGknj~w(^8+7dyJ~;!v&nW`Pm&ps6wvnnptXB_ zpH}1n6DK{B9zQNg&~`4JqULYVo}pK@KTA#r)HvFkDV5D&<=>hC+WqfWtmHNhCzBNO zb_Z(%M{nu+n>TLg9Wtos{7lF>nYW#Gd+M81_^r>t(>2xGJoJ>cRX^xNThnQHU|;K# z^cs%^eX6&3&oGR5b|zV*{p7~6KH-R=SBocUxn;&XA2J;#ey_+S`oMI%pzjD$UHgVT z{;pPpx~u=h;cI!!{Slzeqq*<{HY3P~+;wHU3YYmqAQT_Fu9PL{b*Axj0em2SpFKr+ z;kZs>V7z3@<#M9s&JXDTk$Yt1-8Mn{peFs)lQDpNO?9kcu4*;k3~T6BDb{q`^=$$% z==J7$f#0INff(30hAzNS46jq-tmH1T)U|o3O$XuGlX94cSl-n zirr&s^i!_XXu4DUNS(|V-eiwW2^*_;E#;n1J7q=FKFC>hC-HKnz|(1`A_eGYK`J(M zj^|03R>ER5L(uiu{H&veS>}b~XP>ThS`)e129Q{JU1lb7au1V9Zzd-=jbX$`=E!%BPT!Zj)k8_0ddu*lG&4|8tg6xz=ZZb zbk~m(KRn$2Dz_NovPs9yao{*;k|SQKr`tT)7N#j5+to7j?>a(fQm@+c5K566(x7jD zMz8TMGWg4&;K-IWO}%Qq%Rfh@3+?~M5?&k@@IG)eC}OdA*2L8|(uffCH9`OgT`^93 zf(G!BC4TowOwoVhY|>j2B3t73iHS&5tva3}CCD;}?;GW+MV>62+WHc~!(-(^K;tlg*EUT?O$#nG|bVFud+<4fKBKTc!m>;&I*vQj=~Jj zQO*HM#ogB0K|Q=WM(YCuOrqO{RCI{q<>$-C?aiFcKz`2nNE@S(B` zj9MZ9F#F$HSo*l=I=pH==!d!WRXAWTI_i`L(Fno%s1~-Xo;kPQ|7;0Lt;yj4u)54r zO&|yU^#Rzrhiq5zx|4@b?Oqi~_f!ep*dyg8zKaBtE!KdP-yG#J&@@-}u`3Qxs^AX8 zda}WnuHx?)BkY(P$NSxRKOoNPUeIJLkao-$P_n7>gb&M7TI{=ZP^#*6$^mEsv%&9k z*CjsDN*tUx;}=zhP8t&sqq8Q~p=husq<@Gd%ZP8|5c-@Waz{}%60%vUg{^hPAsF(W zJUxJXe~A@^C%o4yfjjaGvS*UM|^H*kVwZN4P3RDC3X4v<&PLH4x4*> zRo1L<0bqJecVgZw-&-@>`##2an+sTkt0Sr&?-C^Zv7cP$fc6+vzZGQvM>_G48eMqO zBoq$MuV~h2l@_G&Nbm`k0Fgk}=?Ij!&BFR;j^zB(UtKQJutav{JCvL6#P*3TV$};m zf_YZ*@mWW+)WF8GglDe<*m~5d-9+n9M?KR?h-8G+x%g~HEd0P7^`R4=>W$_60r{{M zIC#$sWXf)}O+JGr#k*5|ZDwH2T9ykr{gCwh`kp-VJ2w(K9SG+qO{%cVHJ+)szPuA# z${s?hB$1;UQN>)sW`oGT@ZXzYo+&m#i3HJ-J)c}~Bkmt?05MjgpV$JM zE^wV|a_6Y_n9obl2excVlyLKQ428p4)rH;y}!)uN1qiZJBj!R^Uy2gmpKt5J1) zo!uQYFn*N96ra5z4wgv@W<$L0+vZ5_`5@+3&tOr$^Li<1%_V4 zT&GyBJMuU(;h_yNEs;?0i@a+REf12%T+ee%F1q{?M?XsHO0Z#DVr!7ynh~I~4UB#n z7{F7%+`AG17#CVN?+Pq^qk(v~&&tt{+WFo9ieFGbyRn%_+rjQ^;re z!`DmVK?qTF+n~#`uKV$BPuIoToZzv7xaNWd zi5S5-db6eNKH5#ED2g`j{Wz}*P)&~!&wG8~>g^rGo>QT}?yMG`8tS*F&n)l=U3jX> zcFK+Elr->2EAfDt0JC{4uGH}aHs%GF%Z9rkyi1bMPt`eapz^N80=73@67L0(Z>1jy|I_|=tC#h&h9Ey=b=~!rT$?Emns4gq=ubwKaHcAqY z+cM;Smy-41xk*YA3BJ*f+J@JDeLU+V@~SxcVM{v{SGBrf6%>iLbY$5sf@d1PCrQ{s znCSp2XSTow4G*e5o(3_0)|s-7f&HuFXjTEhg8K)oYBSv0H>_H{3M-lGkOH++72J2L>43{$r_TTRdE}3Ud!%@> zYER@YYClC{HsRDGgsol~2dfcu?|LlYkf(J|g`3*sf6$2bi!MUmIsHkaj&&zA*|E?^ zSAu8WhIAy6s8YE_Zyh3{TP&OM_Yc*`_>R%Gegvp@Xk5=}CFs(xmrv5TPU$0gGstun z6n)79bx<0#N}T@Q52*}2wm_ob+Ol82i$8rB<2uP+3MntK<+8vXmFUkn{Bi&`vA}3u_Jjd>78-M27#S<%|SE~ zNu}tjXjpDi;3s|*#bR;f7#v4-TqgmLQBdc>3wy@LZlEo{ut&{0-{%U6#xJL9H()*Zvj)5tgPoc@TO@UBcY zMy1TTt=mbKY%$9NIr{HzzL46AYK=fS5rA}J+gKenvmIH}hO-l8MiOiv4glw+!;$N9Z!_D*xPAMZnCfz1^nf(XB&N8x zmB&D>u-P1i6~WLUft=$&6vGwQWNYRXjJeLh%aBzi2`HTE@93yZD0qE!{>`ta*e*8f z44n@^7D2F^Bo@CYsc<$@`LkOn%^Ch%v`N9si?@93y919&@ zAJ+-b_JlG+4;oRGV7Cnw-zB(CX&BuNi=2xy`|7VqHf!`nIoZh3~oVx z!_!E3QKPVcW^dtYPGR91Ax$c)xA9T=mOfM>FF0*}B# zTcYeqZG|1>*yp*CKDD1bNJ7KpDFg-?hi5Kz2)C&Cc^eY<#;Bu3!L$GI46d#d1%MN^ zHi>$sV-H#vJ_Q26Hrh`CdHcNpS!d-eOUZ=(8iDgR(Y<2t_y5|B=jue6oMZb{lb;cp z^{WVpPGKc2Q2+tnk0|I(7{>WlCvf($e>)SYX<1OweM0r#z}ZR&(~k;Bwb4F^&gnl6 zH)NN^3TmeyXrH;dj%VSzL!@DsgmYQ+kFPVXlMFea3aqz%K!)ZRnkqU)^^;-+rNt5K zB+vP+)1*F)iM-Ym>xdT>srYDgs6Z>=7u!~1gD^}b&edAj82RNKB4$hIl^dWpubs-C zE~Tw(=5TU`S-K^>AFLGnvFxje0o`aQq>+0cYuL~4BuyeX?U!SYL@>WP+cl{3*-;!h zjRfGRLNY_c8W2|^HssVy@lN+ox<>)`=$k@roEJGJo^?#911ZLc07rf(KuHA&49%{G zx;mHm>-~HQWnM9(5FKV8Q9J{JSSiaE{FJkU$B{uZT4-fd#U0)Cj~`CX5)~2A1>gz- zxn&|Ei;fjr;^KLR&okhlRmv-UMr)bmr+>x;AUdXGM3x1fYKM1Q=2j4H0R&|id)bo@ zAI%%aDKRLxbx{qEFks@k)Ny9fG()lkTS*rM_<5L)3>!8~wo=A`s{>3De7qOQJN?ym z3aO#@KUZEqqDLjcrWI8B?v652>I97s(pU=EQvsS_Uy3$6goB{ za!1;%l+}X9jj7kkcF%sk)@cdCj5UaV2t1FU*Q8 z!H#lS`7;w^eP`vGX;~fEYX|%2Ax*uw5x<(Fte_kP)$gPe*e6>47Sr%h!hiMipa{o0Jz9MpqOO#2r!Q zImzfz?VErdb8#Dcl-pi7wLjt;3Vbb{yE8`|$wDc3Z;h5Ub(Yw^KA$vCP=}olFL&h zlCx4Bt}%ym0lCDY=ajnA@%D_j;A%eG_vD87O(m%I0@OqIZM{Y6PN_=3S@_IxMz53cW%HEub0MmCh?1GuMyxBNvw;=e07tvBUM;bv?}Kk zA06&_>WqE}MUSH~R@Ci)&7FRxj&w8BL**-&8=#Cko}}(qr@d^jDZtPQT3ywP>>pLZ zSDNRDwqS_4{QE5?-(-QK=9f5reJ|3U?MOIQ)OP4x&(~2OqoC8ReAMhiI%PCE5E1E@ ztsm^>h-(%4H86H`<&Ht4`(7yxE;>qRjl={|(9?UiWU~HajYS~#H%QAHpwg0~$Cp+U z)It6qV9;rvEP(V?^oww)NG%``9iA|10@^Z!b;l2rEyOkP0y(XqFZcEgeRlH3EU>@E z979->LNJs>puttR-Z@R+t{k+2?sm>D(mF50D4+=3R5uAZS0p@E?cYf+deJo#a0o(b4)cPV*7NV-dE>)^zQ2wK6YQH|AF1+D)D3h%#-&KJ`;u-D zXL^lEJc-*-te$Y&dh*`c_Qwzc4grNa!2r{e<~E|wz(}vJ9h-l{-!Lt?TY1OwQsSa= z*zdMKTXov9QzKuqYIDNk=Z5Bje#<{`oAKHh}xIGIySj=dpH% zl48Iunriv>1CPKW7c7I`+OjSn&l9IFv|#{^TNFEOkjlcq7f$@{ddk4NlCOF~WW&2e zfbJ!$j;kGFz8!tW=UHun-JJnO`o z>Jz-}L+8uR*PS4^xy?e8l}sMM;=~NYpjaogx1(v|^kIgxpLXNl9ZeT+Ge@@tCXIR* z5e(dAz@z_KlhW|(Zb5hB0pQ%HsYuZwJ-@ znIW_(2?u917r@|Q?CEJ!w1`!i#P%@1kvp*IdCOx0CEF+XPH6MGqt#8oZ(lA!ofm@J zRa#{_p8u}u{rAM|Ok*K;Ld9Cvv}3)3#qxI-*Z9kCsC*g_ZE;B=dN{1}+2g9JFRdXu z_gdv0QWQRzM~I|yyxef$?;R-F$Oh3kuHxE-*Ye|P%spdCv48VpcYDmfL|bk>f|@mUA4)<379?Sa=h`tH zBS){yLQzyjRykFJ{Vb_(goX=S)N z6Z--X)wk$JWnizHBS{cjAk9UzPieh(F?fom4=ifkH+m>wAK>>=WRoGIoaPIJflDop744()Q7T4{oTNn`Q|KK$uLWA*Ng*P9q0_WYOps1Wqld$#>vkdrn|U zMdq-bV6Mb^a#p<`E2c*qpdx>}nUSFlze`;E3&f zP_ZNu&;;y{Yam0rJh=OvR={CMJxKZ$Fw&!hlTI`N`VR=%8I+1jeMj1CTNsyWLxShAYYr-6fjKMpu`}H&l|k1T{bv?53y3!2~~9 zx;LoExE6J7Gv=(&QLY(f!f*5xTW$sI)EDpesbk+nEUpd?V8At!H zM$^~FXg0tq!^?5+pT~%DVk<>)BA6p|wq_Eg@c`vNK|jqjwgWWkrto@_rky3KQ&OCS z`|na!{mtDcznNERB;YA1Wps`VG;4Q2hlUueXx-mBOjM7#WZ_$#W?w6w!`BHd`XK5EbT51?Yn-1ypEVCf3E4VZ36Bj?#5m<2 zHAjYCifucwR;bGK@K`B3?dKcuhjKP|R)I)>o)JMhN)(4yjw$hk4vXZTI!oXk$f-%e zLPv(o>U|6XzBuum__9<5^nX;pJWDTk^P4&|~L#T{=Um|6gr5^!&GOhik7 z!!V}f9s=Yrg=&E5ylqG$ubSX4Nj<7_$qcm?9(G^!SA=m|$nSHU9F8#hyR4~&A ztCyAj_sa#$t0OtDu0b>&rx*)%c*j|e0&ip!46i=1QkMJo;VH_Yn(J!VE(t|QY3xMq zdwzF#`UtfJZIYv;-(Xpt{O-n$8-&{8065^_h3ShTKpjaL`2Odpltwy*U?CAmG6_Om#$wh0U>qSpQVc606*RixZ%z&XUK&(;&-NJm1iV^9 ziO!-nyVoXKhJd>)Qrd*9;ByrCI`jTjyW*=kqm`p zKLRM0)vQ84Jc(f6Z~!6Do`jkKp<|ijuMzBxL*<(3SP`5k90AoMQh|-=U;Dk$8jyD^H$XLcAh7ursug3aUEMO8Q zbXM{TY-?{|DWwCDp%)<^$cC{|cRbJiYpq{&{vVV8F|6*$ucJCEQJ6^b4}jYjfgLSK zq6$>OXTVkAFCzUfkS+J>{D!F2Q?kfj1yk}i>Cc2v@sDoFBF`|`=_pYZR@X>_B7JFW ztA)zZPkPGhX$8J3jDhCmog6^@o7{?2VgP2JGKjWU&X~oq(DqGCO&$CgjL|mDP(bsMTyq^D4Vxq|4b_VOXF^jz zzD4&{-o#u7i}J&linYVRr2lo5D4NeXJ2BDa!j!CC!E4@tsrL;1x) zXMLQ}*cOkJk41_F_M=3z(q+Wij<{k?p1Z7>Edu9x*orL3z!W|MS+dEAB&oCuQIgM(J2aX_q)kfs?E8ayE< zXtBe~Le>Fy2wqAEG<7b>|A}us0e(y;WvCIyL(H9sB`KZ704Qh4ndY~V%H`f$&;Bin zD8ty@El9<-2urvRCgTUNO)r&*cK$5r+PN`cEfX}FD&l)YTEX+br?PFD%BRIQMo08w z-f3=8lOouhjx?lSJIjzyhEPLMH}ul0%2FNZ-_CSPrgfg_{qk<<<07`eBxKE1=a(II zXmGZ+9x>3m90{{uLVpS`BdpSDd(cQMFdCdp$RfVwk%;5#E!lu-iu2>~BOtHR67q9d z1Y``ab|CVyAz(uekdRXE3?qN1)y~%2g(f1jh85_}(rjUg5f5jUaxfID^}5-v$E|T6XVO zvK^rt;efa;9uR4oZ4>a}!@h&bHg`#Z0N1gZ4m5m))K&zq8fFq;u#{G05ls(t+1}q6 zNl81?25}Z{3IWyiH4Qva7nzsalRJB|VB&-tP;Go~nzCWaK8$A1Xx+F+Q|`e^E-!3a zbeqEn9f5IbN-;8(HZuDwY1jIuSf$Q5+3%qWY}tT&&^`% zAM;~8@stRp>wS0-$`Pu~V7+T5$#bW+UBdk0YmQBBwZa1&Vjf=TC#^6 zilRh3Q^c;zlrVlZLfC?!at*ZZABLe$GQl^^pb=f&yjnE$89I2vB9VKy^S&WOYygHy z#4Z|s9k!LiY`3o4fcumgaNdvtH+0UUT!#VNF6d1Ke=bPeIMajaE_>7!rq{;r#=ePS zAb>SSg-JMR%*K+8!OyoA7JKDQh||ZBSR@g2CJ}~u1e37`n5k97cK3y>k^8RPLej}{ zoSQX4gL}W0=HfmbA(~^30fKcNKmL?>j%Eyg69?HR6+bAzPH==gEXb_HwEo$nU`e$I zpS)-a84+1d#MvUGaG_()nBD0?^pgMC?WCmbgQSAEnmWF7?IhNTq@4r;%)V&DCb1j;Y&j%Ux~ zoL7u<2f{0ZX%Ghimy+HOhCo=MDv;kdMi^i;v2M0b7}~UcD|O#%DD-~tDYyz*D;ai( zqPss+6m%sbg$Q+So(~R1zS)=rsY>Jvrf={O=^Ho=%NrZW9x&43!Bm^;8bG?7n2V!- zh^-Y$5&ts3lSqim=IYsOJfAxq1Rj$0fWkAY zK^&kaOo*M?4CIvMsL*cG=__@fXAzUbfJ;$sxOfxAVZ*5o^E;FBR(I6*k!bOA$FZRh zLen|=33&&s?FiKBS{UFl)f-Gw#^Hj}0<`meB`$_dn&m{0lD1oR#W4WxDnP}FO^+nr zXk6Kl#2g8@Zh(FzgF*J-+dg-?J2!9~Mizj!@8@%47`h7UFK2*{QKsKf5hvQ%0JPt( zO!St`ro3EiTFp_jS89w8jvIXxVr9GWD}32kY^!>&%7s$y33UV`tOn24-MDqjf<$X# zhu(=C-eC;vd2uf#13XBH@Mp@yz)C{eWAJS&Fn5VYhx_F@J;RC~%r)jx8=vnGCg&KX z09PyrctAECJIGp5*f$eOHRM*kY!Iuc1-#`*Cem@ouwN_B*22x8dia=mR3u)8qVIk#P(}6qRol$qgJAdFhCDXe9wdJUP%lj3CXRv z_2={-p|{YE|Nl7lbiFwGL7hsS>fjfW*?2=O0_3ny*mbLrRD(|<5#kDHjX(scRRo-T zRf=5gTeEs5J+Z3Icdy2!H!|tY^l>eRc(lMAa*Vt=hxaf|^FaKuncer=29PlhJf1&8 zee-jqwagJHoUx&|4l^+I$^!6ZS1sA=W(spt>oB zQGbaGes))!hlGEN3+m`c6BPFGe?Op5IgzLVVmA)Gl{>K{y0dQtONcgtg`YeGk`6=i zKA$}Lt@W9i@ELckc3HFai?zTiey2Sb6CYY0ue#Ur-mO>e-G{lSM~rcm+cRVn{w|Z4 zwey>3#n=1a0t9-?bXa15zTLDEc!vvYLr2GHVNw2xdqY>7Vgw5kyzLE#c0a16~Fo%u~}*Y8HnkAGN)BgU-Lm{%~rAnyIP`S_z}P{+M4%Ogx%dC6cjLo_3+ zma`wKf($4MI+}hqT0}aA(U8IaS+5*^&0A7iklxkdgZjyXDqTT}h4v2Y?{RS8{(F^D z^i^kT9}=}z8GPT0abZ=*KSh`kx75PKgHY5u(%m%wuDACDS}vNy9`M@48?VfIQpCws zN`mx3Og|1`jG)oW2-v{$=&>ux5n2$J7^4OTvR49rsl0KCV8)? z-~X85<`VE3B*mi`ccG1O?4C?wS%}0X3B1N!H(G?|oU|j3Zs!tDwQhaJvcA`p>RnK%eR`)vNRBHOQjEqYnsl~hV4UgU?si?AxlG%|NWL!Z5LFk+;O#vKLp24&2ExDGUPx zwM~^)*QE7hf?+*sY_EKSp^`3-b(Dr6Jq!8GRnJk@qpF4~2boH6YWuqEh!fiXq zn1?cSt6W(jaK@YL_;lxcM!BnuTmJ0p05He1h)jqSY3ayT$$U44ESLK(SoxAtQ$L8I z0@;NKzoM&Cd9L3gCWxoH$mUQ%S+!dudR{wTC6*oL>)Uu{2vMv+vt|^H-nfAt=Fka@ zc#+f?)22Q#Jr9^E^FJ zZ4GBTa(SS@+cdXxf9EOiy%G^@Trh<$0{x6nNO%jZ*X&BmFBK15G|w{tZZs9h_RRq6 zJx4~V18hrA*S%;hhx(`@t8vB)%8(iyVLH*y!rgmT%zt{<@G&`tGs=%C?=^)Ve%lV#l_=}q< zH7z|U(mlke=^+M+;CkuzAvLFwadrM>$Jz(cg35=goZle`LvXY8F>f|*3u6%Y|%5|U2Wz>mo&KhM8z#zYp74P#Y@rXt+^2R;R?_R=Y2I{1Xpllm`I z)z$4e+5siJFQN)uYBnkp`9}}r)ZeQnuF0hC1AKv8#vr^ny)|K&Z&NB7bTh1dS|4)9W;0?}(bzy>xc3+(?V zWWOENH6f?6k!s+&kqJG=S`0;GX%sM&h>X1~d4#JX6xJyckhm(u;lNlqJh^V$8!4_R zX?~S4ARUs0& zAXCZxi`9e8*L|#>FTXx#21oCeK%oiC?}Z;a6L@C{?~=un!VjHZvwbOzwqphDHiPLD zR@+eQ;o#_CEJlR|Z8yj9 zBs*c_v=bqt2%v#Nu6~AVMH&K2Gy0={!4xIo4FgqWFrb_B4L@bItdrcHEM5mbhLr%| zoz?c=K1_->Og;GqdHKu2Fr`}LDX&P?MZ9JFZwFxdb>)#^2-yw+6`TEQXaegvLWf1` zws|f5s+!SK5K!^~7S)YKA!US&WQw+B^YB1VGbR*B5v=76A;pJ4X%R>g_9LK>EL8e+ zXN5TA9NObkoSI@Ub-aJH!_xN1Aw58c)mh_*i2}0>4(%1^sE&K|UDC;f2#ny$R*WyB zQWyL#O?G#u=M2#sMkI|7mK;9ehS)D8)xi<1Pz^!8Sr~&}C7XY_kLaslY4WmX1ZDPi zcA7NrLmiPiKy;Q825H9%@&n*f(ISOtIFQM+BeZ%AWV z(|KouQ zfAzy_tyL6?@Wb)Lpi1q;8g$KYL}uxk+gKP>S{S@md|}dW_>7k#Qd>)x&(Cp8A5@rG zmV_mIoZCsH0`n^8HW=Hs6fg3^v3|dV4lk=KeW-R6w2tdKwJJoa?#2e?QFtvl6;WZE zg46k#$`0M~hBu!0g=lg{E%L`n5>#pELgR$8OwVcb2ez$oj>1c!`DkdYu;^Jq9vCDI$8j zmip6SgdCf~Ysxta_(&SuX&DTWn)0o`I>qiL`^O6(JG?6kOysv1RwCNx3>vyR(mM6i zoLoD*8{cVDOVGhe{w16vhx9ym+mi|Swyg}wcrb2YFwWup&{FcVpRbFK_YD07#(@|p z3r=->33`Y-x)=TWDd?+5&aLI}Xv&{Gv=+RQW>n5oS{|}p>+Ku3`&a75mghDV1QekY z_0rkw&zmVXG&l`{Wh{^5IXi+j*z9&Sw#(;plD89p?&&wT*2g)+JfaBI$qP4UwztnGctFNom8CHfIE71VKS-i2b;{e&K5LKk|p;Fvw_WLveFT~~gS z6H`tjL@eRW^~H92wZ8xvp-Yp@IY%)-z8N`Px2s2c_4*$4wYcOZ!SEuBXuGnnt7MnE z3tz2e>-v>Z*1x{0&pBL&Flmz=WQMy>38}wcII}NG;kNOvh$2NOFkd>WvV95ObN{8) zn$slEi4n4E5$IFgLZytimI4=;6#e%L1;IZD^%M^BMAiJ*EmY3YY8PjX+p1aZ1Al%@ z5l$KJ3R59<^bFd15D2z8|N9rxZZxChp3=__UaM~GW{U7OpqKy`DuU+I1PEYSi6-!UJ-E7dx|vDV!^e>oy98p(W3MV$3zH=KW4QA%$zh zPJLUk+Ntx!quce%&9OtMUttEaco}eXV43 z*b1Qw0jV-~-CTCf3}bN!$tFm~GMHdKAPTG~MAY4hQ1;So>?w>NM)g_*T3K5UzDmDB zA`reuUUl+y=2xblp?Ey&+-6f%q>>H|1{T&_#5twyYn8l0U%^ z1l)C_4@O4im*Z${kLS&;?987Hc*ALnDQlTfQPh7ILIds);8CpvU zkUtOkc;Aofn%{Sw?HZN!leb@RQ_MIqIRhKkjR))0vyi^jxEG<5srTnzbBIt+y^3ht zBU;0J^z?g(Aa+FI1G&YwW#&ff$#m&g?t7x{H8rSVP{vbug%)=|)>sg@(k>ZFE`1R# zy-<&=sqBeDT7R)AKUiUS7AAB+>F1Po`a`5cG;aOHg z2WR)Ys|UG>z<-uUvrgD1Zu!6{-MFcKL~=Mq@KbK@D%Qz(_WOEzuSC)C2&|4}@J{)h z#@=dD73TnOcB%(Pp67aQu${he`gm6%%wmuQ%UT+Z#@L};d{(tQgtxLibJ%_{dGU=4 zLuVj!kwHUcEqYPcx@$mXu@od!=lS5SVO{?1jIi;Nq-noj!o%a!cv~U*lLm}?sdEr8 z0R5Ze6S&N{<&iFtzoel+``GIlaECk|BL`qAGAWw+hJkXtx+e{sL5H;@Z`_H6{K8Ef zSN>AL@r8C@`#18{t}iQn_47jDlj{$1j-sv843KOYvfyRALgi=HgseX5HBt$@q{N)y z(A@p-hdkdyvge2++R=f2`rmSfYG2dc0>&JOdl1M=rLZeW#{uHXM++*sSCb@USu<3Y z8YQjBdY_G)f`8w?VpABl(-0>mgrxP3?YCNbiRphd>GrBR1@v8>E7JDQ7`Q7$CX$Rs zaZ?1js-%^)TMS!2T+-oWk*y7<%vwI9csm4ZIxFF@gIuFRE`LE0`w2$bRt z#F%ALt`*Ek+`&XY@+V|?3V(g7YAPW(P?F=Q5qp)DR_8Fs52NU_B9e5n0TGD5q!mT} z+J|ZZUN#ZDJ>6O3cmk8j^BiYI+Ykrx8TF_eHfnWfq|_l5eQ7&_R&*d1Mi82Y!Mq|n z0*UBNW5>mkmS0haH`H8PB4n|*_L?r*YNfWztp{-zM@8!}bjX^>>iVirXgGkvx&^xj~*2-efV+~8w!ob5& z30Z+Of3)B`L`BPLZm~TH7q@ZupKAnzB$nGLGDn-YrV4=9PQX8wONh0EEHMQ6T4|lu zbzUI}ylGQh(q$f_!+pI_q6L9jTJ^vkmKH^*y&8(xzf7R2)s1A*BWT|!xPCx_2w9!s z8b`q9+ z1O$>#5V8AB+$s54VvH!ab_9sy1VCsSK~FCjcuj?HvQ}NIvtAhcHx=dXhnPALfbs=b z1Ar|JmYnVcgg3{|wRr>NE%trph?nZ!jTuv>Rby_o%uE4ikyCoN|8WpfS>kFADKsPX zG6nCV8Pu$0Sj&&lrCbKN_AUks|4&Y}$aFD80`dEV=s%k2LRYn(1||)sF2c z>pH^Ik0XU(Ne{ZA0sL;^hLd?|K-^xRShyE03^HhnPmoM0$NEyhqaghV#r9(DaX$F# z7MH6-p)MABVXXyV^fvX}WqP4QE+e`t^!q{=IPTcBl}nW{FrPP(8L1CB{t`*=u@p{L`Oz{Bs3#nUQbbDk*J4v3dUiM;Fm#T+0 zDvzXEbMxtL9)sV_N~Az)jb4AE{#?rtI@!U9B~BSir@n`~6+JYz_fji+zt-OJ-O;Zu zZiz5ie$%4hlxyHdK0if*wySa7w^o5Ax$p8Ab+6yySsqNgP@ZEeq-e`qemm7NG>?8w z*;1gR?|ih3cXZ#@Mj7w=P0R5Q>%KiJ;#==EXx_7Y&OqwKR}zc;YtwW>b*h@UvlCj& z?#0Wxj@(wUvd-!25Vmz$y3jIIlc}^Iyr^M>>HVcr{@sYjhx7}1Ou=d29qUJ!@4k#` z+#6yZOEwxvFlRDWb9U|CWM-VwCFa|AK2yfq$mos?PmH{LO!ZKv{;Y`y+3OXM>UABvsrsy4b*jxKA zR{WIiuph`~fdq$RoATzBC0+kAGy269r`ZNM;*_Ia!$&jRBJ|RjTTaenB&9egXf(gN zuyX%5-(|*+;!n8oUlOp4=)8Arwn2Q1&Hb6`Q4mnmI@bw zhIJcS=DbzjG_%z8m=42}XFo9_DMMx-(qB(}&fYM9-UojzeVn^|KmuD_lHrKo9LIve zl-$?7tmxty((-M8Zd#eizBB!P<~NqIuHvMX8jmZfszynl++B4BqTcu5KKzA1*IRh} zA~&6162;1;zCi5ITi3}%m9Q}{gx`*bThv*483BEA62Psh@aw>*%VL|BS$q7$#gDzD z)0~O%pl??mh+m#R1jKhO0i;Vn_?sbF%yz6CJsq{T@L;SU-Q5l;KuS`C+vSo`60|xu zgS7Pc%HA-Dv(p2$fa0Ct|9!wb+Anr~jh~M9fb92*l+U4MC<83oGnwwx3&ZI29d9na zZGLmemR`BG2gL3wQf95ef^a-%{`%vXaC^g3$$dEa30xYtw~+1bB%G;o{0JGfk-Fyi zhdhg#v?=W3E6JBy8aP@#K5rjHE2n7!<0&XqH zGGBb}sI3*=C6F*<$614iL4AM<0RCm1tx+m<}8@mF+ zbx6i7qYToI^YYSr1= zqSLxBmwaURt$EP!DAF?%;h0Ps901X3C!n(;I5-B?soi~c(hY|8g&>FFx%!pAVC`=I z0wnGe_*IfOkx$#9!7?Ooiq;CjL8Os<4KM|7Nk3FKfMmF386=0x7N;W37*k^DAi)LW z0e3!>z`i96e9-YxMkaI1_6+K?+)P5d31lm!vV?nQ6L!XPL$v$GCg)xNK%p3jW*Jfz!$Ov%CbW3ACv|>k_4*STi#?Ban(=i(*mSY8hAdFXCFniq0QJioK5G$yY$GOxb@JrH z@#1yhRK&d|P+H$Wd5rPWG+Fp94ef9GipE@P&oC}vWi*f+uc9C2-H&(qJZE?Y0QCtZ z(G zASN%LWWG*NtYxs_%K(0qCN-K< zE#j-C)i~;+@MRrIxqj8gj`rFpzc!F}ygE-I&ZS z*d~{~1q!V~aO-AAd9%SiLZ1WJor@`Bk?JX0{}n(v-$sumrTXz@hkbtF5z8{vLN{Df z^^-aXoO6a2+Xr~62v>X*H#G^^uq@-*TkF#)PK`=@wGVgR{PdvUmO_;EIPUT6(6}ru zK|G)cTj}ee+F?7T2=CT|%A79*#$xH>07-wngcfMzUv18biR&6=+!V9laZ_qxigQ1h=wPe~S^CPQ)|q;k?o zucfdvtw#BArS;&Sl-N_{?Cj1}J>GSRU0<7S58+g|V4s!(F4U6-nU~aR%%dC{CcOtRARTYfME`t6VHx2% zz96KK!N9J9(N039TdCrl3D=)y(14Okm|%IVOWyqF9ouhh&k~icY|)3)j|HsH8hQe8 zx@GPk4cNk~XQvQHSYEP86Pez3%=?{UXH70!4re53GB4`1QzJgF&m4utyChz=DzU&(BZ&yLfJXWMr!3%n;2!$vs*kwRV~xxGhTOZtmR=H|Erg` ztc4!q{M8uYS6$s`F$H28=(*wA#X=$}O_6te{D6TR5i zg!ZEd)QWmyq38>+yZ#$x?;Vfz`~DAKXlZGvL`G#4sbp1V(};{*6ro7AlI^nEQAR{% zmc1ohl+`dw*<@2H3Kt=l5Z%x7{e9fO@9+Ne{`2$ryenR>*Lfbt@m$BhGJ+40t|<*- zu`NA9|NDmo6?cA}U9!f9oGo;WvIONdB`LL#Z&+ZFl%*tW{!ABx@fe^d<0@(oERHcdjx*D*+jAp*Fglio{o z@@lw5&i0`rUUqn2wPWfu|{CW3cG@nGU?xZQJ@-?Twe;f%LnCCfV;{>EKOw3^SBo^(p zmu(Hvd&bJAe2tE^e3Kw^9uou~7=pr&Nff4wmYgKjjU=3}?WF-=wcEx=dDAn)g+#SL zDj5VBUW>ls=NiBtl_u5|ap@mf&`T!+xBq*ab&Y<299E;smM_d^cz~(a1jTesaT=_T z45E3`X8=`iFNu}+xFQMr(839pWpYCG8)(Zn?y|y2%lF$OvgHq?dmTBw$bwhHj~T6F zszZR5&@oE?$1iVhGak*67$CDX_E*>5BlUv>T8i>{j%qp*LB8ydpsRmwFOv6L^b=_7 z0A!I;BqsiP1<5f!g?s!7_Zs}ZQef95t(y{auZw|L+J~SCSs=?2IOi`xkoqNFKtOgf zYM|>xu+_%Pn5$T0u|z<+nJB(H?&H}+ksakkO;Pp`e;tp{7$r0Uzw!rpf+J&cW6oi+ zSrX&dcJwI;xgCT_T7p;_EKW%xLDS;bVv3n9@iFeo6LolpT-uG!tUdrDl0mb{$b5ev zR(57tk=Y{jnP=*+*vK>j8sLD7eX1imF8rp}M?`%as^AY;~`Sk$gFVDld zj@f6OGiyfyVmxXE?9Fi9Y-39T(t^(aEIqd=p5nh4LkoKyQNocm3VAs1VFz7o!VWlH zbOMGviQ}<2+^*xK?^}eCLoSJ9pGajs=%;G1-kgc&gmUZT(o6U$Gw(v_M{XD^R)gJHrrCnll-w_pC=49HQWfa-Bcu$PetspJzSQYSk2N2)r zx>D@Xq7u5A-h?qjl&Y6uR5+^n;*vm_+0jMHC5&gg&K5NwJw>60#@#@jFwSU)`f6}z zd1jTefavX^h;)8w8_xG`l=E;yY~(q$jpv|qs%Dw(u?XS6RvUAHS5ylZv(CVVr{Ea; zP0sIf!vd|(Yceq9T8J$W4VjB+`R5>uwOeqH(*Izaql*vRY#49M zl{KEud$%MjINg4S1VW-kx@32OoNMqtY|jp~aBJ~|u~F!Kucd2({14geDFu;17$a9X zKI`tH-1&5MD;wLzU&($;O)p}l?#8OCWKbloP51j_g*no05XFxD+-(vh9vDtp6M&Yn zQzjxuVuw)QSkc$jk`P)NefdZ`9HNxov>(-a?rhhNP_L!;8i$rp?zmwathmb7bWkHY zy*z-?Nt-u_=ggcVUq4?4*ebcdCet|Og+$aecB@CuFVO-_noKrIqF4L+F6_k^<6KdEhTIw#kl;L?NI3VgwU3T{C*%xt*Ht}@{LFh4LN0303Hs^l%cdT+sUTw z&n|IrP|@sgtl#+5Q$mAK7!QygIub&_@?y)P_|TkBZ!rMkG}j3=%$nZ?V5PagcrNgv zxWGWz<#ydio#G!jYa76eUGL7j&lauuQcCpYKanmMcqv{Y8)d%ps|dD_Ourf&7`P$`nN zs5M>O04&5v8_D_Q+NAMun+eM@x3~s_C^f1qN%s{p!4ivBK+ccd7k|D5i_taljLh&K zoeS~6eg|+w^TfIfO22^7HP2Wk4t&b#BnAkEK}?Fxq1Qi<7*5nc|KYZ%2bR-X`sI_T zZ?ZY1%*Y;Q3SfF>JG!c_?2@H^=d83`sbZ(5?xF2J?yj{#Mz2=Gs4Re9pNg`fYJQqK zr)}dF3ZM;v)mCwe;q1Rv)TXe`rE`$fkv{V&4jPR2*KAf6U9W-gnlAK)@``^|$Rh3v z>XjbN^rZm?y=;4jepp?4^@B`F=Yh6>BFIk(N z9(b&Tbwr0);hdUe0sfKMNiqbw` zsNm%tA*DA-hW}g9yaO9;YtbTIUr2%#vs0K+FcshF-r1?q73+<=Y=Dp@^Y5Ya@8XjK zI7suRs6|!1+z|ZteYn`eG<>k{%ul1G3wR#*Sk}!kdNv`FYY`Ndeo=O>{8*U$vm|!T zPR(Vk>J=;#48=2zjiT(e{mq#r$W6TI^$*`JF6qwIH}vn?^lR^xP@P-A_g*uWYbbPI zSd-fcPSE0Dedl~`>h<>y@hd6u35#AZe-dANPu`wK?k=cueri+K7Oyy7Y^L}eBh^E6 z$2$Na7K|UuI6kicI^ z&WH1{w9)Y`DXyoT0nvW zl<0qqllN!}@;IjQbsjaiuzvGf)&&lsA1vK^iK&vfQsvc(2rH9G^O>2j z=(;*Cf!*}%Xo!qXPebmX3@D2gJGXf zQH^YQf7w8Fae$b5x@}J8xu7XNKg=`feHAa(4I6GvKB))lKVIW(Q;m4fSBP-pM|u_u zSUY}I-yxxDpL_1aC$R;nR|Px25*XN^;APTjO#W-Xc!yh1cedi$N{(cdQv`Q8oYh%( zBI(C!x1JyN_TSu?63=$bWg9KR%gn+%4T!Z!TWM2B2qu)vr>vhPAh79B?O&>HDHLK` zWtU)l`{p*5L4*#i2K%sD>=c|`T{{|{30y)^d&pyupMFTJcAn6| zmIV()z5gU!@FZYCz)jGTDzvju8DkTPx!p)hKqFaI=hTg zY#ieGl$(+SX?D{(`cqq{z6;XVuMKxMSf}w`QuY>exUF9J3yYxrQ;mGrxf@qQhkC^Z z3Z@>H+keatIr-j2+>6Mn7<1M<$76ET?YL=u*qspb?KHR#$u)@Y) z$bFAEfVSIzUCzW{{TLMEo9dteG5agYsw&@2Z$?#H|D7bk)^EmXI92FiEQ0?!cK-xU z>5>u$;v~++54_qvv(pwzY5X;$N$GM!*AOsXzf@q{ovdH8BlYXSG(qu*=7tPqG2q5M z`&BVlu$n+y`Xcr#8vWtvcD%3s_>^5Sr}J(#5z>n7w#K62JWS`O=kHPagNb!m;t5<& za%2e_f^s)U4EsP@C*xqXOWj;|p#(}LW;-k(OT4`+pF&#j>1S7APIH!#ERQ6#RAc@I z2b>00rjM};Sf4I-%@R>0jMCs764tWG;Iqsg{Nuo)5?3gr7`ZqaE7KLwSLW{UenW2a z&B%0c!vDqf@1FAEP>p}<+rnTC5Erdan(w5}8jCd)^q(UMCL5n!?D5DkF<^fU=Dwpf zktmB%b0%mcBDLurw{%U!HGS&=<$TjTMWgR4soXHS)FdP5^V9@DV&6wTkkUA8McAEMII;8mp)(ykmS8k=h ze9F`nAR+V;C%WvcsDDWZ{8bPnWT^VSjG@Q$q6YOebUYo8l57t5cHKxDB8#`=zekmx zP*zFaaF(!!_F|Ps3gz>ZI$i$@WuZRQ&rkPM!5sUCW3eD>fCv_kJ`Z14nx>Rg){e`a zH)G)ey-{03mj_z{tm%elobwq~KwN%y=pSj_%+|PEmvLxJGXpEc~x)WkP8)42)|T2MWo0d3t1O0-w)w)@ID@d;F~y+4aa98^z{G|kzmZb zwgbAk^TDk(yR)*D&~Z*8Gh;tC94rz$%2J^U@u=O|_YZc41#0z9B7F*Q~Dic_|p+OSnt5m4&x!zJXlCkkat z^c;2YU)e`H_8Fn!dS&|%X$O4Br*xZxS#LOoNH1p4M$YV6EO22ci5#Ullsg_p*r_Xl3GUa3)?zUuo2+~am#>9{!PHX*ZjNbJBQ z^Q{KuQG8bM-oD6sTgy!$5E4TVx((5qTq4_lkZB-N!!K0Qz3(Py z(*W(r4+b+<6ii@#l9=zTeAf~j{f2uuJPU(ZG2lcfSGg^{QmXyJtSDreVK9}&EIr@YMFBIY& z5fC@QzuZqtoihe|emeVt+^%RaQs6zSCy~fK`?fzvnylzy-JUp;6&J8FZ;yL~O5K6}a?;cOewmDu22lEGV((f3cp^JgQ-V$mYL)W(%j1eHM&dT*1te zUj8RL-CwgJlS%$wQ zu0m&Bmha1U<`1TVf>jBYyS$oU2XAwwhWp#{v?I;8pft<+dgf zQ;chli)pt)FWfe-t=5}n69bz$wRHQ-N6FtxM4haJZn;&f(k|?r$qrAVtgC+V3vj6& zm7iMl2UD=QivnZ(XZA+wO@7l1PJ+15?lG@(==r}j=6!m@(|J1QbQciDlyk4It?h3W zFYGomkh9vi&adK-SS1dI*-|T6`%cabTkG#HnfeBY)x9N583n}2v;GvP*!*KD>rj!j z?Dt`1R%_0Pz36^@e)|4yV!a5Wq**q6 zw(?>79{_Xm;}@}})+e~tJ&HDhggdLbC%xvU0~{l}Qx*EmyBrpU>?a$Fs#Z`R20DzW zdLQC##*#xnu`cPYs@3WBgLj4ZTCe-_Z(&+V?sZpjVA9bN<^uzsmCAa8pRWqqK?6!} zDPDL=-QFi>T?(v+%ar)P>Cq8Ur<+#xl5C0^Wi=p03af4@lN>#o9qxgIl0sa&%Xl|t z#cH!^e19QzXOX~{Q!l=e@`%CS@&=W~)5^lq?jD~)=gzZ5&jvkfBc<=^vYK4qK3Y?+ z%6$);J&uSO6sgNqzYjGx0d;ip@Idp7KFcZ z`w%_!RPfZd1S#G0$|$TwCLIEhT&tpIo-;AHVxM|oO`AoD{4LJYLGIdfnecH#88Fbb-HU%@2Q?gh@=otL z!jLYxn4rfs3f<1!)p5JYm)unQQ-lAHwM0is#zzgG#xSdo_cMKag+P$ zf0Ej$o(I+x%sJaZk&LhGVlB7atE>$<>qSmpNRkU#X4S9x#Ky9BJx9Shh0`|8sfTaZ zothJ;=dP^_C9ZMH1(XY8CWb9k-wAdIq@sB#P_E#z4w76;?jgYu#rqI~=f> zPuNmN)p!|E<6u2->05X#Spl&n<>aj{0iA0-2+Sz@{`z>(md)Si-(_gv-!?4xCY%?Z zufI=GTkX4cTHaGNwbA9vrk{4a@9mzZHf~>&)zX&Rd29Q={tY4ftq%tlA5<1oE8v!- z(*lksFF%G;=7jW$%}+h=>w9`uN5FqyRhIoc^EG`1HE{brp-C1&MZ>iwK*6*;m^kpA z^GDyRWpn`+P3oK4+-skSD(o55d{n*ACbDi^<-1nT`$v(=Yc|{O5*XKJJ;C5H-LPj{ zu+oe59OVEhpXB6te{~6>x3gC-I#R&a!<8Z-};4lS&3kY z>%jHOlUXBAtrZ$(lG#b37bDxV{Ci=J(fs3Ty)C3zy$pq(B`1xs#wC+}^xi$@hBZ#_ zSNREA;Nwb$lZoj8eytX(5Nb)78w@#XGlmhvUrC~|>rI0kiX%2yf7hW^ZJ+PBP>P$nv zO=}GX;);AgK~-1Vk=A?4e)6|*mih8;^Z_LBX?|5?&;j_iFW0dX<&5^=th(apy?5o@4%ElT-E;GBO=$^m52 zwbFdPVLVGH(c)R5Do=EYc!ujQXR4Z?3D~~w$LULWl3DY!EvK{|Ly1~B;SjhJDN`hG zU3>aIwv~qg+&S$l>{ld#&3w&>Tgrn0Z&^-;eSF!&sw@)vhE+;-h|D=}egrSsK1x;M z1S1J!<&t@ip%k*aumnML$yn~3j0!z~9h{P6&(YpnNz=yM!A+J+d3gBI5z;OJ*JHte7XST`(ZE7T3vx2pOC*DFJ2L#JuIoQbv2F+i*_=*k-- zj6R8KGyJ!BB$d)zFB^O%#`kkx7yc;xf9Y@h*SRuLq4u3~pF zNXixVxEkdf&7=;6^q%rsadcc%+ryH=9>=tpHW+`?g|{Z36oam~&# m>eGuD53v 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