Correction package (multi-pair transfer with mixed depths). Run from this directory; window via WINB (default MT).
m2/tstar_mpadv2_w.py k nrand seed   fixed-depth multi-pair adversary for T*(2): T-MPk block starts + random starts
                                    (random near points, mostly doubles; per-pair or common grid depths).
                                    MT calibration: out/tADV2_mt_k{4,6}.txt (-0.0527 / -0.0708, reproduces T-MPk).
                                    b = 1.6: out/tADV2_b16_*.txt (k = 3, seed 7: -0.0103 with depths 0.25/0.30/0.25).
                                    b = 1.8: out/tADV2_b18_*.txt (all >= +0.105).
m2/tadv_verify.py                   reproduces the b = 1.6 counterexample, checks T*(2) by Gauss-Legendre quadrature of the
                                    frame vectors (diff 4e-14), frees the depths (-0.0169), and evaluates the same start at
                                    MT (-0.0798) and b = 1.8 (+0.105). out/tadv_verify_b16.txt
m2/many_blocks_mixed_w.py d seed    true-loss consumer W(pairs) for many blocks with mixed depths (P = 60):
                                    out/tMBmix_b16_d*.txt (min +0.0264; real worst case about -0.012).
m2/tstar_multipair_w.py             closed-form T*(c) (window via WINB), needed by the scripts above.
