From 9bd2c17cc428f000fc8b17407e3ca7b0fb6b722d Mon Sep 17 00:00:00 2001 From: Victor Kuznetsov Date: Wed, 3 Jun 2026 20:52:17 -0700 Subject: [PATCH] feat(auto): content-adaptive --auto quality mode, Phase 1 Add `auto_config.plan(image_path) -> AutoConfig`, the first step of the invisible/all pipeline: it inspects the input image (before the diffusion model loads) and picks the quality modes so the run adapts to content. Quality-priority routing -- ControlNet (text/face-structure preservation) is the default, skipped for plain SDXL only on a clearly structure-less image; GFPGAN face restore when a face is present; a mild sharpen + grain polish when a smoothing pass ran. Exposed as `--auto` on `all`/`invisible` (`_apply_auto`; explicit flags override via click's parameter source). Not wired into batch (its engine is cached per-mode). Detection is cv2-only and torch-free (~100 MB peak RSS, a few ms): OpenCV YuNet (`cv2.FaceDetectorYN`, MIT, 232 KB model bundled in assets/) for faces, a Canny edge-density + MSER heuristic for text/structure (a rough Phase-1 placeholder; DBNet via cv2.dnn is the planned upgrade). ZERO new pip deps. Designed to run wherever the pipeline runs -- the raiw.cc Modal GPU worker -- never on the 512 MB web host. Real-ESRGAN-via-Spandrel upscaling (a new `esrgan` extra) and an adaptive Laplacian-variance polish are deferred to later phases. Co-Authored-By: Claude Opus 4.8 --- CLAUDE.md | 1 + README.md | 3 + .../assets/face_detection_yunet_2023mar.onnx | Bin 0 -> 232589 bytes src/remove_ai_watermarks/auto_config.py | 209 ++++++++++++++++++ src/remove_ai_watermarks/cli.py | 54 +++++ tests/test_auto_config.py | 98 ++++++++ 6 files changed, 365 insertions(+) create mode 100644 src/remove_ai_watermarks/assets/face_detection_yunet_2023mar.onnx create mode 100644 src/remove_ai_watermarks/auto_config.py create mode 100644 tests/test_auto_config.py diff --git a/CLAUDE.md b/CLAUDE.md index 1edd33b..2e0e24b 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -45,6 +45,7 @@ You are a **principal Python engineer** maintaining a CLI tool and library for r - `trustmark_detector.py` — `detect_trustmark(path)` decodes the OPEN, keyless **Adobe TrustMark** watermark (the soft binding behind Adobe Durable Content Credentials, `alg` `com.adobe.trustmark.P`) via the optional `trustmark` package (extra `trustmark`; pulls torch, downloads model weights on first use). Mirrors `invisible_watermark.py` (lazy singleton guarded by a double-checked `threading.Lock` so concurrent callers do not double-download the weights, top-of-module pyright pragma, returns None when absent). It detects *provenance*, not AI origin as such (TrustMark also marks human-authored content), so `identify` lists it as a watermark without setting `is_ai_generated`. Other soft-binding vendors (Digimarc/Imatag/Steg.AI/...) have no public decoder — they are only *named* via the `C2PA_SOFT_BINDINGS` scan, not decoded. **False-positive gate (added 2026-05-29):** TrustMark's `wm_present` is a BCH error-correction validity flag that spuriously validates on a content-correlated fraction of un-watermarked images — AI-generated textures trip it far more than camera photos (verified 2026-05-29 on real files: it fires on Gemini/OpenAI/Doubao output that *cannot* carry Adobe's watermark, with a random-bytes decoded secret, while signal-free camera photos did not trip it). A genuine TrustMark is a *durable* soft binding engineered to survive re-encoding, so `detect_trustmark` re-decodes after a mild JPEG round-trip (`_survives_reencode`, `_REENCODE_QUALITY` 95) and requires the same schema both times; every observed false positive collapsed (none survived even q95), so the gate is the durability property the watermark guarantees. The second decode runs only on the rare initial hit, so the cost is negligible. Do NOT remove the gate to "catch more" — a lone TrustMark hit without it is almost always content noise. - `noai/watermark_remover.py` — the `WatermarkRemover` class has two diffusion pipelines, selected by the explicit `pipeline` ctor arg (NOT inferred from `model_id` -- both use the same SDXL base, `DEFAULT_MODEL_ID`). **`default`** runs plain SDXL img2img (`_run_img2img`). **`controlnet`** (**EXPERIMENTAL, opt-in**; `_run_controlnet`, `_load_controlnet_pipeline`) runs `StableDiffusionXLControlNetImg2ImgPipeline` with the SDXL-native canny ControlNet `xinsir/controlnet-canny-sdxl-1.0` (`watermark_profiles.CONTROLNET_CANNY_MODEL`): the control image is `cv2.Canny(gray, 100, 200)` stacked to 3 channels (`_CANNY_LOW`/`_CANNY_HIGH`, prompt `_CONTROLNET_PROMPT` / `_CONTROLNET_NEGATIVE`). **Removal still comes from the img2img regeneration (`strength`); the ControlNet only PRESERVES text and face STRUCTURE via the edge map -- no original pixels are copied or frozen, so SynthID does not survive.** Canny holds face STRUCTURE but NOT identity (the regenerated face drifts in likeness -- canny carries edges, not identity; face identity is preserved by the optional `--restore-faces` GFPGAN post-pass (EXPERIMENTAL, opt-in, OFF by default) -- see `face_restore.py`). `controlnet_conditioning_scale` (ctor arg, default 1.0) is the structure-preservation knob. Same dtype rule as `default` (fp32 on cpu/mps, fp16 only on cuda/xpu; the fp16-fixed SDXL VAE `_SDXL_FP16_VAE_ID` is swapped in on fp16 GPUs -- issue #29) and the same MPS->CPU fallback (reload on cpu/fp32, drop a non-cpu generator, retry once). - `face_restore.py` — optional GFPGAN face-restoration post-pass (cv2/torch/gfpgan boundary, top-of-file pyright pragma). **EXPERIMENTAL, opt-in, OFF by default.** Runs AFTER the diffusion removal pass (`InvisibleEngine.remove_watermark`, params `restore_faces=False` / `restore_faces_weight=0.5`; CLI `--restore-faces`/`--no-restore-faces` + `--restore-faces-weight` on `invisible`/`all`/`batch`). **Restores face IDENTITY while still scrubbing the pixel watermark:** GFPGAN re-synthesizes each face from a StyleGAN2 prior (codebook/GAN pixels, NOT the original), so the composited face regions carry no watermark and no pixel-copy -- oracle-validated clean at weight 0.5 with identity preserved. Flow: GFPGANer.enhance runs on the ORIGINAL (watermarked) image -> identity faces + RetinaFace boxes (`restorer.face_helper.det_faces`); `_composite_faces` feather-composites those restored face REGIONS into the diffusion-cleaned image. `is_available()` gates on gfpgan + facexlib; lazily-built `GFPGANer` singleton forces CPU unless CUDA (the pip GFPGANer has an MPS device-mismatch bug; it is a cheap post-pass on a few face crops). `_apply_basicsr_shim()` recreates the removed `torchvision.transforms.functional_tensor` module that basicsr imports. The pure `_composite_faces` helper (Gaussian-feathered rectangular alpha per box, `out = restored*a + base*(1-a)`) is unit-tested without the model (`tests/test_face_restore.py`); the model-running path is gated behind `is_available()`. **Commercial-safe** (GFPGAN Apache-2.0 + RetinaFace MIT); the CodeFormer alternative is NON-COMMERCIAL and is NOT shipped. The `restore` extra (gfpgan/facexlib/basicsr) is kept OUT of `all` (heavy + the GFPGANv1.4 + RetinaFace weights download on first use, never bundled). **`restore` pins numpy<2** (same trap class as the removed faceid/insightface extra): basicsr/gfpgan/facexlib are an old ecosystem, so the extra caps `scipy<1.18` (>=1.18 uses `np.long`, gone in numpy 1.24-1.26) and `numba<0.60` to keep the whole env on one numpy 1.26 resolution; verified the `--extra dev --extra gpu` gate env stays numpy 1.26.4 + `diffusers.loaders.peft` importable with `restore` present. **basicsr 1.4.2 builds only on Python <3.13** (its `setup.py get_version()` uses `exec(...)` + `locals()['__version__']`, which the 3.13 fast-locals change broke -> `KeyError: '__version__'`), so the project is pinned to Python 3.12 via `.python-version` and `[tool.uv.extra-build-dependencies] basicsr = ["setuptools<69"]`. basicsr ships sdist-only (no wheel). +- `auto_config.py` — the `--auto` quality-mode planner (EXPERIMENTAL). `plan(image_path) -> AutoConfig | None` inspects the INPUT image (before the diffusion model loads) and picks the pipeline modes, so the run adapts to content. **Designed to run as the FIRST step of the invisible/all pipeline, wherever that runs** — locally or the raiw.cc Modal GPU worker — **never on the 512 MB web host** (image work there OOM-crashes the container; the planner is `_apply_auto` in `cli.py` for the CLI, and raiw-app would call `plan()` inside `RaiwProtect.remove`). **Quality-priority routing:** ControlNet (text/face-structure preservation) is the default; it is skipped for `default` (plain SDXL) only on a clearly structure-less image (`not has_face and not has_text and edge_density < _STRUCTURELESS_EDGE_MAX` 0.008). `restore_faces` is on when a face is present. A mild polish (`_AUTO_UNSHARP` 0.5, `_AUTO_HUMANIZE` 2.0) is added only when a smoothing pass (controlnet/restore) ran. **Detection is cv2-only and torch-free** (~100 MB peak RSS, a few ms — measured): OpenCV **YuNet** (`cv2.FaceDetectorYN`, MIT, 232 KB model bundled at `assets/face_detection_yunet_2023mar.onnx`) for faces, a Canny edge-density + MSER region heuristic for text/structure (the text part is a rough Phase-1 placeholder — DBNet via `cv2.dnn` is the planned precision upgrade; it only ever ADDS controlnet so a miss is backstopped by edge-density and a false positive only costs a controlnet run), and `edge_density`. `min_resolution` stays 1024. **`_apply_auto` (cli.py)** overrides only the flags the user left at their click default (`ctx.get_parameter_source(...) == DEFAULT`) — an explicit `--pipeline`/`--restore-faces`/`--unsharp`/`--humanize` always wins — and prints the chosen plan (`AutoConfig.reason`). Wired into `cmd_all`/`cmd_invisible` (not `batch` yet — its engine is cached per-mode, auto needs a per-image pipeline). **Phase 1 adds ZERO new pip deps** (all cv2 core + the bundled MIT model); Real-ESRGAN-via-Spandrel upscaling (a new `esrgan` extra) and an adaptive Laplacian-driven polish are deferred to later phases. Unit-tested without the model where possible (`tests/test_auto_config.py`): flat/text synthetic images for routing, monkeypatched `detect_face`/`detect_text` for the face/text branches (a real detectable-face fixture is private, never committed). Production adoption path for raiw.cc: validate (must keep SynthID removed, not hallucinate micro-text, beat plain SDXL on the real upload distribution), then bump the library SHA in `modal_app.py` and pass `auto=True`. - `image_io.py` — Unicode-safe cv2 IO (issue #17). `imread(path, flags=None)` / `imwrite(path, img)` wrap `np.fromfile`+`cv2.imdecode` / `cv2.imencode`+`tofile` so non-ASCII paths work on Windows -- bare `cv2.imread`/`cv2.imwrite` use the platform ANSI code-page API there and fail (empty decode + `can't open/read file`) on Chinese/Cyrillic/accented filenames. `imread` keeps `cv2.imread` semantics (defaults to `IMREAD_COLOR`, returns `None` on missing/empty/undecodable). **Every cv2 file read/write in the package routes through here; do not call `cv2.imread`/`cv2.imwrite` directly.** `imwrite` returns `False` on an unwritable path (`OSError` caught) instead of raising, matching `cv2.imwrite` semantics. macOS/Linux already accept UTF-8 paths, so it is behavior-neutral there (the bug only reproduces on Windows). cv2/numpy are imported lazily inside the functions, so the module is cheap to import in a bare env. ### Doubao clean-reverse-alpha distillation (re-investigated 2026-05-29) diff --git a/README.md b/README.md index e916480..8a94569 100644 --- a/README.md +++ b/README.md @@ -284,6 +284,9 @@ remove-ai-watermarks invisible image.png -o clean.png --humanize 4.0 --unsharp 0 # GPU/MPS, cap the long side: --max-resolution 2048 # Strength is vendor-adaptive by default (OpenAI 0.10 / Google 0.15); override # with --strength. To preserve text/face structure, use --pipeline controlnet +# Or let it choose: --auto picks the pipeline, face restore, and polish from the +# image content (controlnet when there is text/structure, face restore when a face +# is present). Explicit flags override it. Experimental. # (SDXL + canny ControlNet); tune preservation with --controlnet-scale. Add # Check / strip AI metadata (C2PA, EXIF, "Made with AI" labels) diff --git a/src/remove_ai_watermarks/assets/face_detection_yunet_2023mar.onnx b/src/remove_ai_watermarks/assets/face_detection_yunet_2023mar.onnx new file mode 100644 index 0000000000000000000000000000000000000000..f9beb3044f3791affe1c2f0932af31927e2e4705 GIT binary patch literal 232589 zcmd3M2{_f;_r7_mWGbQ&rO0%Q=Qy9WrD&csXf{LB+6MZC&h`uPoagU7$In^bSzfY8Q%zxx zw{OeuNPka5O?h5eXn?QZJZCv)Iq@PjJ@LNQTrGKPM_YX*cfX+dp4Ns6lK<62vTBm= zsu}utPY?77neAs09OCO2WMwg3Y!#>FqqRl2U%*WNFtzS~wZ+ z+aK5lNuYI<{DiBoI^28VsF08#Pdh{9AD@cdQJwA=5acOATuIIkd)ve}+jr zF<)GpA51#_oF!bFKgRa2v*bIr(lt_S#c9}*{@m6$_FrSWLXst1TM4XO@dq0#3AT>< z$}J{Xw@QM#|513hN`ii*Nhitfl4RgI=qrDhAgKniE#^7=9$hJBe-*jET_Z*J7uWtB z5&90VqXb!wae?7jTm4{@^RpI-zx~JXN)zFaljS?S(ltNewU+7t=ik#JjN_* zR_tX9#hg}Y(LVyOt+>W;ti@T{qD3637Dx4&5O16&)a$lCmiN@UZ5t3>VXB&T0HY5v&$drD*{X=H8064(N+tyGCJ zTEG=s#<7*8mc68c+gj_Zy8F!wSnTI%Yhx&$DoH*ywN&dmJtQR5H(<7y0ne~d@7eQa zgoFmS47OSZ9foS&^A-gM`-uls(=%n|O?B1UO`q=*FkMWQ-;5ca-W_CQoN1=4tT<5> zB!dw{<=KATp?>qiB#ZUb+Wz?J``=QW5hUJB{1dg#Em|otP;v;e6_0@W`TBa=+8WA> z|5s}X4%e!EIBb6n4oL{v{S+MB|1W~WTHHX1&63#mBRK4=ehLn|KMs!XbI@Pr zW`7hM(j`BF!%nIkcH-pu`-=0=RJ|5OwwD}{?Iptpd+DLWu2qMQe@#`A^1iExw48_Ahvms@~u8B3&uavyx2>RBzCRpaQ@Jj|Ckq>zvSh2-OOLam~`b2UVfDYantlK zNK;FU*<1e=FW)U}4KLD_QeUK_53|Y4OJ1M(yvt`GuOl_vY7}kq&3=TU7!T{@dYfi#K8|`zvpx67@sO{>mHa zQYkmmHr&2d#q=NI#;z6Kw2GVG>zQ=CVc)7l`9H&rSkL~78>vjSf*a{lDL2v%!2aLq z0KVsqLo2*#6*s@vG-(fD->M$qzvkv|db1FpS-+RGKdCi8uaq()?E&on#U8-^PkVr0 zE&PR;zxCx8J#&!u0QUc45Af%`nZy^VM*Vef_Vdagyf{dY2KN7A58&{pJ;1LPwuYDA zX_S@Maj^Nb-t1RjTEollbj(3o z{~cOY|NpRJ{wKZJ-{@H2oYtN(e_ko&MOytG{+;Uoofo@5zK6eJG83q|1-S& zxsFMEk*d>Q>)6jLrMyV%zQey*_Z|MU?*D3GYk2vcjyX!}zC)|({(sGjWQ5u>V|BFF zZ#z~pI-e6V&(G7r(NOi5uUg&$`h^CIA4STEpMZ+BQ(4Ve{Cke#+kOsLa_P>s)>jh` z<0WrIJsoWg#lzZ`&((TJ7FcU3ibrmqj{0h20%it>1o(P7iZ9=Pe6A)jKr&tCh#$cH zWPqc6D-007j{9zajg`%>25`l8VZ+r@lGq^T;#VWA9e!to_^QW7eAV+a5aP#8 ze{Y23`N?-9#CHL|vLSv6@(U0WBg7N=79)PchU7trG$ti@O75F%#Dn#pjo|!UQ1+Jm zb#YMI*mJa$T1GKquz!gP$u+u^kd`gPSMWCWw!hgzd~f~Ne)f_4b@9D|WDDh%EhJd} zx`&w1-|Qj2Ke2JJ`^_HWyS=~P!$BO`zwRM{>X$vl*FV46!$IPQqy2C9aQK@&OvHcQ zQJnlXTstjAv1CfZ@|PXNqx|3QAn`){i1TMM!~^)h_Ci7iSB$e{2PMf4zX3`-_4>^g zj^g~WwQ~H;7UEgb-)5S52?-4|t!k&Dp&~E& zry=Viey3_Rq@?+=@Cs6{2uo}U}nH*kD&pv{93t6Z86FWP- zpKT++pmsuo@eWSC+8h+jTsU6X;o>dcwh@s6uTWE7uQTnOraf{Ntk97cI;=2q>Qay| zm^F_lRQ7tv6V=%YF6`USd!{o%5Vv@;!10QlU}J4g@!Fse!Rdy{#hEFC1jkhF2u7#2 z7o1$5SKL`Ivv}8BC>|N<$z^2=iv4d7=6<`-Szu>UBKVYBUwp831kd=|03H`jd2+RP zcmw*ZY-S8V0iBp8}@ zqIl{48N8&j-Ml_~dKV2#uohe#b3*WV&p_Ubn~Qj7Y)2PA+jvrtZJ#3;$?qVrT(2P9 z)1jlVqKk>JIWtty{=Q@J^1>AY&9nP?(-s`yrH+5b+xcz^ue;(IuJh!&qJ$TEPFp4MUEKRIX}qUq7Tkrp#k_*2zE0-p zZcd{%3k7Co+z9fHtJYn%*eCNocVs|s-t$76q6+2Jygnlj@^<8J<6SPS<9!(W zf#>q+ATRX5JKiRNqEq>O5${$HDp)LcP(Xzn1edNS3N8fh6r}hF1cPNa2~5{y2v(eB z1;+w6@q#w@f%QP7+yEA-E-6(}w$ z670BZDV*#3UU1pXMc`ezR?y{xjbQ1WEZ*8;Bi_aikGNJV6nO(z$_wbsX%2dad+-KC zwBcpEci|0sVbA5r+w+tfEqInT>x$n^P35iaB+FCcx8Yg8=;YKZ*PVCg=odj%b&en| z_Jg2$O$XsP5nte8(MGtX>Z?E$+rP+cLMNe#0mJLRRM|k!(k)QE{;suVT z#RXTBc!L@{@-mkV;dy;j;t90WieD%Oaeb!Q^JJP1a=X8?;u%a%~J5}5a=6&7k zFW7PLF?Ym}yMpy02}0S!YaPM34=>Piy&xgGgOi)?dG5KM(Smy(<9RQ;W*6(7Cc-+4 zp}c|@*Lg*+Y6|nsEuGqrSi`fftSCOeWGe6IyVKnF2Fgy#Ya)4zvdSFx4Voi3bNGGH zfj*hszN;;ScfNKme!u@dZ%JT?)AkNsoIE^g9ak1k6&SSBC_bnhCGfV~AZ*+GT(IX` zA@8eKgj1)%+D^`zPTZ#I{l%-Bh8B~rs|C$(7YX+j*9$gQ2RRtdvM-+UI+lCdQ&^mI zQb+LQr5@M0(UwOxRyy{%gsU#2>KSM`SS%;wUq_;6HEn@x^57Jywl|7E&<-Ty~+-@*Jkr>G^+9@?aX!@G;boe ztMFh^MrYSzom+1mGjC1j9vhfeluX<6CT()#)xQ14y;7gRZGO+^u9G>zRpDLbejc{9 zcz;D!@wiTPj#!}L*yCd^7c?8V9n-zJer5}J6Pq)6wMwpng>9mXZ4yLW`?_64{ibPg zw`vKBXLr&ssz@DBZ1Z-Uz-H5Z?!jaBj#riJ1s)gX2%ZwF9!mH*F-WC0B5YhCIlra>!e3h{{jD z&FrFCFg3D0x#&^J*d~a;v`Rr-A!UE9kTyd~6jBtt==84w8Wu5(e!!i`ri&e?de$EZyCe zoED}q?DSq}GTnr%?Q2S6Qj1~!sw&j&pCdF1n8SbW`v9qpDfOeP(IhzuGgCe@`}@j+ z^W3kDmi`OTj+!vK;!^@m@$shlCfCWb=DyBHb=94-+d0#WQlu%EON}mchltY;=ws1z zO5WxWwUHmmiy3>VOow>bq?$lN&5A^~dUpk-;}v*4{}f}?HV69`KSkf=8?YvHFMGC0 z0n0;D*e_SRkf-75WaU(f<^wXIvH1m=cgebB(bLqlLcMp)CogJp$o+zF651h$tcj^0V{YGIF7H(#SHd1sli|~;&pmy5a)CTm zHi$?2zvad-pV1%bBB>sZ9YAa zy%LVxJO;U;Tb1@8#}b4lQ&nA{VE@5{p0Oea+gExYkeU;R=z~>^(f+cdndW;+=D*f`HHyjTZq3# zsO=Evb88NPmv040er!)8x36PYTidZ#wPTru?+$^_^XcrM>ORcn+4WqJ`v* zx)q>H851|thRo7k!yLa=EmB+R0YP=~teeLO5iKhd?eH#jy5|)HQ%rV{d2|xk#Z>Ta z_9&)D_iblXUC*-5pyiElhrq!S3v$Mi`&kb6l^kaO? zQ}Yu&o-2U)S#S8kBf^-69F?3ckS=S79@lt&!B<$)ElC!$1cXFd>lIU0>Q2NOdWU%+_Vk>a-_~ zR(im0w_#q>dm>-YHKLJJ8JuGFlg-L8?Ah$e5EFcw3j0)IRpU`6dRQQg^WVx&3|Y-j zIWBGl>}5npvn!dtpSIFvb6gm>HJ@E|YdPq((`G+D0@h@R20WTQk8P@2#hzngh+*y; zzTDvz%vm!#yy0fbc$*e7FYR$a7V8MvYhS=3*(odSo;d3^fz${G)Ybj>7nW^^ABoV}EQvAfl&M_elFzP1o% zc)rDX6Qgk0xc#)$+zxmhliB^z9TChg!HP+}nd*!SY?pIQOdrD<)_h(pJ^#oQ%Ac4q z>t#N&8#?S|m{Iz$_oXgvs(Oqc)9omI&KK^m=mev#$eBu~-i^9*#G;Rmw@=+a`55agGJ3)58F z(5>eli|!tM#^{H4WjP~CnNO27iTt1}5_-x5?b`7nq~bKQRCW~;VZ9I*$;qNA-yKhX z9L1=Ov!wC+IJD}c3~0%Bf~L9}X5O~}lplSCo?fntRx`gstYRh6;rC&SjIT2G1K)t` z^ao7ngD85&Fo^cp)rW>pi)N_6khqCbu_jraEUHT-+S^aTkhz*TLvIb#25!PbCvFM% z^*lg3rWrBI_I3mFm9yc(jiF3Aw>Q2%mIMQq4#L>PI2f!@M3z`u;-LJQIHlW3?00t; zbN9R}`4+X5J}umX`!^~$M{m7=ixeZN$!=|O+ew|CnP$Qair9>$`%0l<^8)tsHhpR~ zGz#%?0~~w313T)+(~+;`aoE@1^pa^u+FrgHWj&9eLee>=Krxr?t|?Et?~Nt;l@DOO z{t3Q$0GDi8+RSDy&_nZxyR_4#JN!FlHVn5EpuP0Oe zjC{u3svN84_QsgPQ1aP|OUF-|hw-!0@x!SSX5cnux~Gz1dfcl-oo;7EeQOn{W$;s& zc9)?q2PMLpJ9=>XKn9r!qppPZ`nC8D+5dJL zGh}E8hATeC(f-d^nyyY$OY`aKvAyw4pK6rpYe;F0HJxgX6zxTdvJ-pf44ie7HlD_3=X3peg-u;w3&=F7*2CuhGNa= zX^^)&&uPq?F=)C@R;7DOn`mP-BvRIJp)aK9AE9$n4e-9<0(PU#6?O|tNv*pkF*Wli zo|lF}{t&{*WPTD})Y`zG4w0nq_*l`3+P8R-n}WPZcXGZv%Y<*WXA2&TCvuy%fMYvd zeodw(-5$0Pj6XZT!f~5nP~2s*k2e`^KP>?n7+WCVyP1depXYTQ59~7mcdTk~C`Z`^--E|dlKrITqSxXzWq^I5m?!yR=z=+>E@8{HG-WXs89aRY4~pFqa< z>Ca3JTFQ*EdIl@cZG=?q1PIqFf+Lfg;PslqA8d_;@aw%ujFmolbD7YP zfqatM=m9dt-S|^oKH)okQ(RL7C_l-RER{84EB2P+-ZOnkRb>YeVzb&Adv5Cm`)D}ZhMm*|G*y|Hs;tJb05SKj}xpnc_t!f2sRv3Y|KOe<6Fp&v2 zDTVHvJy`EdH_%}miPy9&#v3)98fCUa@X#qt?F0(L%qk(G@;MqrEFweG4N0c`cKZIC z3{0R4P*G8Ui)Q50FH8!p%|i?ueV4sxFc;5cF?4kMDd=IY z$G`ibC-t>cVKGjV$?B=kp&8bYuat)Y*okKPWZ~8oJ26;c7EQnBfQPom zlU-#lM0o!M&ayfK@?eYC>hkc?b_Kd_MKk(E-($xtxyYP#G{ji*6q+`#k|}so#A>2E zb#51pUx&75Mt0l7n$%j;uoq+LH`6xsLSi~bY)&V9muj4~yE`miw2Dlw+A4}K&qtcR z09USG;pC)K%ob%2pfA$bIW>D8c*9r7?L}B6WDCM1z6XfPkz!!8?i=un|*}QOEt-mO|PMC=lSg1I6g5s z+JW5R9YoK52B>vMl}z#3#a_rwg{>TISkmh*_Lw>j<~go|&?(;-OI=%BIQgaE>Iqvm zp?xFcmE_X zoPX*gZS00bYV}#rmJYPP$nY|C$Y=Lwn4!B4HVHbDwh3QQ;5Qc%52%vO^A2LM=Ueu^ z=V7)Xd?*Ut_35Ec#!SvWBQz*pkHt@vv3o-&Qmx&QWOn}qBVK%D1lv<^K((Gz4VOpl zs_$S#@+RDW&zvmV`xO);v+?u@85n*!jGS?b1&vx4>XP}DccAxNj&&<-Uxj zhx+s)g*ANeGIOLJ&3hpEQ9GJ*=N(#&nU6&#>F8QeCc0V76KmcE3_9nB(}VkCtp8=4 zA0C2S^$c9~As^p=yU9A;8;CDl8rbT4u2}LglGR!BkX3PiD9Ty>1nXDypgM)e@YM?u z^BfFO)gdYS;~LbY)5U24gb(@Jo2Qz=0gzoFP5|UPkY2 zS&*D;MoO#4&~Yjn7)$rTJmvPZ%>{efA?^^|c<>lr9qd7OU9*Kd-ug7vd>XxG5f5g3 zQ~I(~Z?d?jI$8U%QZ#Y!1!l^TLyV2Eni;Wp0*SS6gq(ylj8(OR0>Mh~IhzVIQp@0! z?I~uPnGjwD*Mm`~9%!CnP4<@;GWuIJFnaqwOzwUIcQ~KH`Im3vIwK=0Qn9AO9&b94B9iId< z2kdmwh6d2v7OFVrWisZKZpCTV$H2e$Q+D{>Z|r-g&16o=WVol=hdI7{8w3WeU{-8! zV^%(LrGD*Z(N}@d^h?ZczGp!RbH<{Q|NNXK6YMn}2E5xUlGlF9k2~Q(zOC#^u99WRfma92KL`@z?yu?8V{GU9O*=k9CwOzdDT~*&fb=dV~2L2 zyrL_(!?zH7biaxXZC0XrO%bRxP1*Kk&8I#wjCx(A>e2^%vc`{a!zX?y)hT!E|@aTUtPdw*JNN4biuIQR`^^;A@$fgCUwja z7@oTU=HEOlOl|H;hFG?N2(2de_QTy|;Mks^)_y-OzL0LTo$PN`f#^sxXkF2T~Mmo<%dg z3sA8`74vcGO(@iT3%i5vp~Y=V8wTdkgSVZT=#{{q)paWv*E$l2P$YYveSzB9^GNUU z3-|{=-at+dXSB*vplWs^_U)n77~pe2G?iM>JIi)qd_xZ!(?1vW-4k()^*uxd9v&wF z#3;jnyxRVrb>ST%>hCl#@6rkM5BUgb4XHSH^E3Rs?iKVa)+e*fPB0U-3SqEiUmSmb z0Vv;erl%FM=+l?-P;a+~eVwIA_3=Eu+;JMT3=UwHP@U$_98da+n&8grD;VKa175vO zpxUY%7!uZx?8xd%FKtk!iC^jgeTLAo)1z=^V=dOyYJtn46v(a8pr=;uLkGnY*!p5W z`!&;<8h&_-DfhHUo1yE#uj5AuJb#$!%x1C~uU^A_t`;?HoJxlV#$e-=D7^S~D0%2Q zhd2-6(5orEXyLjwaOYDtPU_@L!!HiN51TZ}H&rDvqw{1iw+M$7x%psewh1~V@t|CL zE3-j)GQ61D3@HLP=2BDu?mG4ud-WMaw{+e?vpkl8%$BFHYJOK7`I-wB&n;nh=L^hO zH3zWmHUrW*Ht>0Ucc-Ze2@w5d7;Jc*h9QHyfheFexu@_5r{C{So!s4U{?R;9y+#^S z?-fq-WOw4kuq=FMov?EO5{RT!vfi?__xf!+^-PtkPTK{?dWBHzza8Ysn#hCyz{Oj zzCGRsPIOj6m64q(_O4-8Ea`@G+lxmzSFbUw_As{1n~t!vb0-|TzAc+?podGlYGB;8 za3*$}A>Z=jCD?jNg;M49IBnoqa`%HBeZA>5v&USA+|Ufbx)DP7)^rY>Gqaucyme*X zR~^Fl9tZf&6DyqB=o~}!uyEGvxdOY$$OZD9wy*=N_o8ybYu2`*JsVi7NUzT&Fz@<$ zT9Vt1bX~Dm)Hx>=)H|q3XWf%d3Jb{c;ZMJLP9e_9#2by=I~ zaJVl$z0V(2RcsjN&aXhtKa6DM_hH9{c!|L~NIep>S*wpwO;VJHFoOXN*&V6Zy zGcxaELQ^OvE*pTV<%XoB+L{E9t$;!DXW(f1Dll5EL8i?d4$rSfF-v6MFc?_J4CAF? zq4_Z|oKsIcywAW@Id9t7ekHBFKT>=iD}#PK4xD*3AMRxJgDHug#La0BsC{iOgARr9qLLH#*j9Fuh~U zAdEP}>;C3&t2~Gt-g6Rmuie5}x^%|}s`12oj`&PFT!VCKxXADOU=j^bF9DsYR-zF~ z$Qs`T5W1Yh_g>C0O*a5l#@#@7m0j3(**bPb|DIGc-WJ=e?TaIH=fUk>`}u0!m$4r% zf5KynBQc`%I8ii@XJXc`B!_d9n2&E>F*f5DGhZXG!Pj6FXW5V0I9~PvdqYuy-YnS7 zGBNq+f95WYRM@}{Jb#mYY`Kesf9OY!?GfR{mp;VkU>fOY_5|)g0l0rtr&XOf#9;gi zP*63Y^6}5$8Uz;Sg{-DB9c9Rgz3&+Q=|i~TI9#P=IS zhn~hYp^kLX#YyDhh#inmoT;z9DJht?6{3zk!Qf91+0*Ni+4DK?Q0I#!4Bn%PlMX$> z$bHH9=88RyJ7f#T_vd1*Mg^ukP2k@R*^CoPf#zd9e%kSZ%?J#}L7O8n{!l12?5Rvt z{BFaw<7?@|n)~d)d4^ER>S6h~oA9AAj^E``8wku80`(_8^PL9l1rNU^uw}zRI$VdYb6y)tQ<&92WV$O@J`y z>>O#nALq8wruq%Z%)|f>vQXWhx{l6<`0F}k`AQuqce6)@#sH`=^krqPe}uAEZOKgQ z=NR9l0q;4!a4w4tvx8RD>4X~NE8g4Bs zg?05;q1itkRO*+2%9Ej3vt!h@CUibrR_u+v`Z*yS5;PB5Sv zvSX=lc`Uslih}5IX2d3|3wttKJkwk?gY3|DB+c(8VoFXr{nYG=c^gN;{qPg)6JJ~L z8PkoN*yc=3w{;_QuMru1)(A?EyU=Uhoe@=bB_Y7U*<$S6;?41{deGM8q4;v(;{cL*#ix}!X~~7gDq?FpkvV*G+w97T$~-r zjCdx4eb>0t(U0zkYk`Z%>bX050D>o*pqr~Qv7depRzEEVPtHf^FI)ymgQ`VaZCykqU2bAf z?@BmS&>vRHgwYOzRftdWda_JoIy793$3V_@c4c=Fd-ZrI&7Coy8MW4)eKB;kcrbqz zi`V1|mvlD5skZT$vzCW@<4n;Y?IY~JsD#?qaiG0#G&%NWBU97tMDpcd!{p{JV%>kYQF&;C6{Hc%a zMqKo%oQ;AhG+^;XNSRy*=XFw;x#yHf@32LpTTy8cvUnpjRvm)3S!Sf~d=C*OA}Ip-b&E?K)k?yxm!f0l*8!w#@j>qYG49h;$C zNuAi*rb9`Gfy8;FFY|bP2F`i-1S^JiVcdHu((J|&U~GO5&AmnVq2L~y^pvF!NDQ61 z=n^_*KS77OD?}Jy$jtTF4Uas#Fh0wYn2yw+T%J4~&R4!i^A7Fd{G#5ZcX$*vmOTNZ zj9x+;`SJ9p9#MStD%V-%F08+)1fxd220=FmVzxE}daHlt*DUddT&;)j<-lFht7Sp- z=7lJJ=(`$G`t^Kf|Ak8sKWZerOVPlplE>`qf$E~L9m`;42R?Qmd7G*CUkdL16Znqy zTI9rdU6TE(iYa?k%#5Q#f%u&1Y~B;kxJSSoXy7;J$`ji-WzsNW zsmP*7BLq3DXTmDiv;9pDF-Z^H;X%O$Xn2B7L{-ozvq1j^ zNv!+VmC!Y9Eew*K$d$b*VYj77H~_Poz6AV(TSYAXGi;pL+tq)r74r%%GRuSc_qk1hF6i&w#t z{6=_bm;pY56krY8k|bw65|MNc_9pd(zE75e`RCQJbJj6<^)!a5-k8A*YNx;`#cqWU ztKVRuog5XqmY}TTQ_&prJkjVb*HLv(j%ddeC3rJ)Ha;PIGK!5M{@F!r__!5hX**f+ zYDrUZ_If_Ho%IaW^G@<>4)=%6PZu-8#yn%)Vw7;a$x}S6=}$G<7qUU1L$CFEjdsg4 zNM5J~(F-cYzTR`mr?sx+=3yPGQ?VMusR7+#mWRi2BQET603#|^U=r5_4~S<>F`Lh@ zkzTqu#Dd5Fb~TmVJy=V^Q^jujo?9YE+qn@pT(!ydv=JK-E@*} ztvTjYxos1yKjA@l4OJoc{5Rs=0gtg=ojlnm6AsIrO7Y$FNVwXq4Dvfrj9>YgKPyWg zbc2pF;p8q;uq77QO(vkwX*(DSoxruE^^qgh-W z9xL9C>=X;eDy<`|y_@E==~5ENEo){r*)>7l_Hn>jqFz$U3h>jeMy!t)pvtAESn4{H z5hlo@Xr2-Caqv4RFRud&&OoA-ChugO6b)MWD-z--at~v0_LeRv z^xXs7hA+cG@CB5U^vG%TJf}k2t++{RIrda5$1uB4Y_^T(&+R2kXO_KUmn>U}ZlAd1 z*$@FAgr+p+-8M*%8wPhyC8FDQ0n|;9AvqN0l*Dn(7gC;i4DyKolUe0Ua? zRx4md^B(p|XFC|PDxay}^At7)3PFE!Dx5wizDqmai!_~D0zS=y7}Ep!Y;N>w^mw=e z6B;AgezxneP5wO8Oi5se&5aU`+MCbL*VzQaCcJ>h6B8k&$1p4&t%uLnj%U4VdeI}p z9^s9z<}~D!GZA&uB}>Ey>7#d7fa=96{2;%Ajuy`!p2a?8m#;jJU3SHQZu3XBdD=!y zc_vG=I*fv^WFz}xcN}Qmc?Uzf?}5jKS$M;46kR)qhsPS#XtUuZd^q9+97s~2=UgAL z5$*0l==6R3xHgB`gjiS9@86G^P1d4aU@1Pm?t&VtRp{xe7(6_p5TbTQlQ7L!5UbY- z>)V{8+C2nNFEg3h79`;Fx10voUS1eF=OQK?+Kg}fH?XGy*5RxfE_h$G5$`v}@{U^` zz@@vBFgnH@cSdT``B;F_JsI|inK6FVbi~BOU0Cf~ic?&ivA^>pJUH+cn#$c}*I`dO zJ>?-jO4Se64Z_g6a8OC(-$pq1{xxI*W)>E2Yas;QDEQ6spT*>26gNWVI zJ&a}bI;L-sfC)3OgpOMjAnlnA_+426e&*(&JZTM7WEnze@j6)bc_pX^DS#tC2QGx0 zK(AK<*jKGXcJT-(bW?@lXL`V)@TE{wy%{XO?1Kc0Z^EhVo&w*?iV0j=By4|Nh3Io_ zNn3s!4AR^WeU2O;VVp$}er6q7Exw6qOca}Rr7h!qY$wwzDTX<4bvgJOWHM*_DZDra5-F ztWOjg?3&36CMeQ=CsWwKenL^j;c%RKV>EExPU39!>-c8d7Pc2Zo;j$%$Ib`dp^7gT z$7LO4X4)LX4f~@o*eQeg65gHJx7(Md)SlswK48SwmW{xVZ(aE#vlocW=k8&=;4#B= znghp24uti67DD}#Lojv7V5k_s0P+u~fJwXz-*415l(%r9VYBog0CO1w&T;&x+{koG zoCfbg9%8V4JNkB*9z+EvK!VnOG~SVjC&MljNjM zZ_*XxuJLXt_8=AqPvImmBmH|T62*X2;R1#Ixas%4K@V;LNK+YMcmtk9}! zGzzvEAb5^vgN}{E<6DzZ#ilK-9hQb^+?h=9koHu4_&zvVHVRZH)Ux%9w?l{cWT%6l zo{6f*CQ=WhHdHM$hPl3JJxQ8&4md83cxlrJQrypn`L##16+bLh+ImaE) z^*IZMQ*+4ZYabXdwc(7jS15nl=&_(aH4k&&2Sb>NFW$)L08M?ez&BPMduw<==Y4#b zAASupL+*-v=LMkuAWJ6Fx0)4d&xPrE8N{k%F@K&+H|YB84l5Jem050zu+48P%7~wP zHSc1m`{FZ<{)__D8OFs$^W(9*b)Cq5Wmhr>SHqlUd(vAlf_y&m04hsv;jOTfV0~&X zlbGF&81%Uhb2y8k?WFP0QRD;z%DaopbQDZ4A3~!FKQhVs2cUX)0{z_YD!2%*qr=EE z(6@IH6!JS^!{i>!E&J;%qns!DA3dV2xJSG<{Qy0kK7^)xD5PHkJBr?(=u0NIdCwXf zY#__`ttP(Mo@D50(5C5wXlAet4eBM|pwV z?yKyB89AcW{w0+1BiX#T*X&|m5*)U8!GGp5j_%$$lK3U^Nyegf^tnb1sqU5|$0y+x~^q|gDwM++xB5MtRdRcg9#Jvw}lr(TEENvRA%L}o8q z5)uLyA?;VwkA89OP9~Zyr7wh6ap$LKK5x@SV!JDi ziP0Jh4OOnm?La+M<%tGU$FkhTS<^o2=Hl$81#0fz3w} zpwJ=`p6E-v~^Z=FdV?nq*E-o()vT{WRRQG5&;*oXEVyAkij zy#;5ZYv;Bj1P@8g~AC@&^b3a*PbB!zgY2&I!Ud;>z)P9}g zEv$L42o`HNi>$Ohvs1>tAdmac$EqVkF!g~c*|S83q*t^f%(fbK%$(zJH8u}=PHkca zzuiErZcsLEs15BO9ZM(crPKZUim>p-2bK+u#j*A3L_IHoq~2Xf&c4(pkMq*N_>c{B zTy2a8&Xq#6)(ueIyMvCrK8_CC-<56>uA<9F&Lnp~sgO3cu6U$-63P{nk~vj_skeMO z_4Qg#9~VUNJEf?VRO)GA;+H zf;9;kLTuYsqV2|f@#D~JoSUpslB#nyHI{L3cPJJ1x#ovxrZ8gb= zR0Zc_ZO>qqj5(RrE{8mnAC6~ZXEIYyv&_?(NWLhJg|fBVaf?PC8P}|jC*Ad#RQFp@ zUsnwYWCaO0?hZz`qsi6viFk1H8|dS`9cSCfmDsKFhk|@7_VXZ3Je40K8e7{IU+=q0 zUUk(1f$v_n%y%(bw%@^SpIDDQyXVjgtSqUT(+!u@g;BRhv&f$M)2QLcA!VvwVq8|? z$-C{331p) zrX)Mi=?{41h{{H4^d^!T`^RFy?A6pmIRGucabW(9-lSx$4HGl`C|U)5A;PRHtgnBA zC{MT#wG++Qjv@Bgzg8DY_NtLiCdV+^#El#(Q$e|&IVAV^6k6lbuEc-m0216Bhl{S= zq;kVFNxF#~X+!o>qY4-DY|378Wr&ck(YuhXFB$;mN*9@+KK(J{(;X79cMUA~<_bIF z1Hq&DGc!i}BB;8rBc^+=!r^>fywX(5)Q=ILuRQte<+S%GZ)gEKmIQ!HvpfWh&V+Y& zmNW8igwQ;pKMXqzq<;*;CTDqaHgGh7bRBTI6eoVqwT<-a-D}lU=wXf;z!H>^(gQ7d{?>UZn<9U)GWQKfc~Poa*T9|BY0l zsLV8wv4jcpi^IU-L!OI_M#eTDgK<@vo)1iEr`Ytyg4><0g7m z@Py8$^ykXPp4gkS5+^S$!)=~-QS|l#P7W4&1JRdp#`f7*X_pR0O5rqKM+x+E9zvyW z3hmd>3G&gCVDz?G)G22SSjr1~tNE7b?sy-(OW&i$ifN>FR5zHbTSDuN!|-p@B6{?3 zB$YNxqN_KBvDf+z)Wg3W=Gdn3Ps6Um3LPi3TawHt{JH?!zBJP3n^)5Pvj=fKo4K&b zT?OLL46Il8X~lr|8+c#-BNibpg7Z0BuvW_xeEwy^)AlTOSnmk0SrfwjFZf`y)eDlO zu$jf}xdA1@?>EOQi~cdLf+zF@8?Qc?n#uZ;6(#nNz0;pgANdP{b-%#Cs>5`aaT6pQ zIKq;rgmIbH0X+AKHeI;?34Sn&=Hs?%Q{|AcRC1*TUrMe)Mq4RvJ@gEhcjtrQtG76e zDx*x$Ie4CLMR(cE=K~7F@czj(o0t`Et&1PTvG)ntH1p~hI@QCQi`=j9O+1C}S!Tk6 zBOYVVEd$sSR>}VQ_h7WbVRSb?N7J6)K7vH@zod=l6@Wz1}JfLYk-yK;*MXont-9b-UVR??0x}=~);{o0qropFL*mCE( zVEzwY(y%+HdLFh%Y=OgjA$zR!pRyr&Pt?KktJg<)v3BB3^Yc?)yA zqQD>j3$#wydk*Frye1YOj>G?$5iNunamtB}?4(O0E8h53ymNUhXN78H(YKdm{MOmr zWn?w4=r@$B2b-d2Uj_O&onwE8-^Fch`8>z)Gv=R6!#CEsSa8aRbuJpj9rbkisU1W4 zE;%`_WA_`=H`k-|YkgjExf#Pp81u57GwCF~(Xg&Jfo9+8guQ9+*yUg5pqHsa4}Fdm zGVbPdhWBUkdR-*mQjFu0f%3HXk{5p|o-SllJIEuIIvhRE757&8(x~uBg5GUl?Vmo5 zmVX;qFS{xMk995;)dser`^|h9a?>4($Cg2-t0p84wctI{ruF%UW5C4C8hk8^@cVZY z`rAYY@2p7#Ry>(*S^feHzdnNcS5j12&y!kyHfEKxv*7uuYv^8a92HM!5~IsU(QEJn z9By_RA3dbF-s2srMU~4dMXT(@PHT2YHwnmcH5SLc^Fv^XDgvR3ozgnt+$#S-W4pzi1O>FlS`w6O6j z9H}jXqYv9){;MH0GV&F)+>)V%sSD`Y=&^KFU^x`ct|o2P38eRFC%BLN$$r^WEK-_7 zE9O_jNTbbEXN>~=##Hdc3J>_Ba36vk_wpg1OlZ=!hqNbTI{(sKNavZz(X>88zGm`% zt|R<@Uar&S{f9ooSd(TJ75WU_3x$l4RuxWh*$M~6zsS|*eyC7?5x#^e*E@E8Bgee< z)7*nc==(SRR8Bvf*H(G)cK1-eL2?Bd>3@g@&C4g#WD-e2)myT0%LR1YVTci@>u8r^ z5B-{Z5(~cP@~r)4bgu=&!t^#=-nbMu4eY}22^B2&(HMM@xrV!s-UjQVj?+@(H%#+g z2d}U3e2xqPP@FMXRM9{AE4oem%26CHN5;N^{Q$6lHL&^b&~E^VdRqc!P? z?^R@qvo80Xdl{~E2%pc^hkyS)j7QCx#B0Ya;6UPG5bm33%%$mX9F-^p zg~DYyq$_frdxl&&?>R;r=x~!Q>DIqrt>Si*Z?ec_H5^zhU9Vku3=6`-F;lq!Sx`C7 z*6PN;GB$W?eF(a>L|~r8AmRIr!8@_T`M{0ge5+y_i~2K)TFkitonv(AeXo^ZdUzl` zIoFEDY&`)+&37PA$&_Zq$y0rdgvf4vsuZ0JbLOuFg^=TLFa9;8xD2G!d73Z-ZNi~9 z2SU8@I`(LWFBYVq!2=s#;#$*0{Q0DUGm}MEUXSpGWv@C|)R3p5j5lp~4)fs4ynZ-)&MneX z^@nL+j{w^OtNIR~qey1gi53P_vsB-yd}ZY~@v7LNM1rhgy{E=-msbtEa!e{cAF&2? zpKD@`hanSbx-wJO<@|A`1ie^0lBXIitp7fCAw9TCgI50$Q4lm*zxmtnZb}<{VR8Uw zO}t9X)01f9n7{9+Mlcwb3moB*X`lEB++4BqSTW2VCD<2i@Hpihs%?3g@dWiQC7 zo3XfD$O1h2+bOm&6=U^IN3>nG1|8aG@d@#^{6}FpA2zmtKfbNW|LK-v$gU*5baojQ z<7=q9K9CZXB>yxFp!}u0Xl9>s{W6D4 z80~qOX}A_aN0v8qv#nHugb5m;22J|62?l-Ggg>lW$l|-}aZl?8T-2%sz9pOa!xU*g zX5JCZ?-E&d$i8k^#2OlTx?%BdFJUT8tDE^>mFkWJ81`U_%==hFwJCUm~86)d=FEc&rh zm;tX=K#k{g*n2{oHl?XT)7K7I`SuOW*6bjamSf=g$TYb2NS1bQe9k88dy|J1VRYo+ z0LVMJjNW^n#b3{Qgbf;hFtPd+ZaB1;jF=LL3$_pCuMH0AJeil3)y@2+N3`2_@4KQqa8Q5e$h01Xvmb6EL zTi#d>^+uuAqWSk(&6fdCpWIGvEk8;EDI4= zH`=P!von0*nq2@@GQEb`$2YMFU1wmgA+Xsq$Kj8pw~+q*13JI@M+~Yj;N_FQ$?xYU zV2asuv1Q9K*iyWaZtGbCVH*Ygqx72KAAToS=Gx(gt<7jVs9dx{Z!eucaxMG|ZwI#} ztB6S39!^K!6FqE|71gb1r0aJa1I?Cu;?4Q*Sk$8&?2FcSQR?h*=n@hQ)8WqGT#GqfIdvUL^-^}aTyoq?m1KD)wh?+_JyA7pILcjWc#TKZkh@jH83V1f( z5Y{~!ONRxnf^Eyy=vDVZGW*S1QU8rC4&yD(R* zS1})tH;eFx=Lvj)sU++EP3HD!5SlC!(E#xZt+Zj z=z_!Pqu{CCU3mS*0_0W~fnstB3t0Xh6RuvwxF_ca#KNh$+oz1G)Axdi63=y;wT*ox9ysK&4{GBE4 zUX;xvFG3za|0BMNu?Z(Bs-vX47pu?P#@>Gbj(+NzHf7XG3O7knyRl)}F^-)Y&^~6E|lo z&{eX=Y2*o>RwTgZI&!z#ZgAZ;&u)jcoS06Y`)(u}Ie&yj!8a$$K z^*aZgaC#n3e6^h~+lwso*nFC3+5`tb^&?}wh5USVtytGd9>RW2p;lc|uyd0tTsgdw z-;8^U8~u&A&4efLF?;~6sD1}s`zF($b$dbcV=*w>2tK*Tl{aj53Y93VYViJpGC4SHf;V$Gb-P;gw(eb*cE>Djv=OYow` zoT>$#RW%mvg&r`c!~({2uiydmHnDf>$MSBQtHj`)z;AdgXtgVAV3cs}ANn;9$9eh$@ff6OA6?RY;@uW|O&_;}m|)P=?YJMSAS$ zy#JUH&4uWlWM`EkMyj7+blnE*m3@az=eNR+J;D6M6oy^T!%%is+PS0o85k)g4RLCm zh+iKd^(Bq$bZZSuKCzE4?8|_&WBWum)Yqfl(4FvN;u`Grt!K|J92J(Llh9&l&-0x} zAdQRyoy)Bx-RL^luk~TEbKi-4r^vutP{hfrqew`F2BvS!fqpALSO*)- zB%1C%5EHJA8=hogh9W1=bjF}4E(ttd)r$8?w303HmC(>V19Mz;q5W+V44O6>4l2jt zxnqj(W{w(5KXg@Gbj}gqC`Ac9mT3YiW%7j34EOYZ)e3^C|i$6|Lcik z{M7gbxu@J?;!$|^E`zLlnuv*0?P!JH3$evK+qNN8X@x#9$kh({Dk^Se+WX8_*M6g4s`+f?5rdRQcN=m@>c~UOLIsN4K8S zU;DagxXBNAB_qS9t~2FFHXi`%l2QEQnKNj*s|c^852w>y&eDed#x&ybB&zkb4AyL} zqz_vKVb&>!AFy$U9C@%N*wIB_+ka($$@|2;9>?q)+uJ|Xw{Sy;ve9Q9+F9HhNhTyHrybuZ|2YicAqfyh5^?rh~w%> z@%VA;0sejSCa(1RAphBu0AUk@5uK`VNAFGCAuug+xD5KNk>smBf5NN7LvbA5!+=0@ z{={lPeeESBKJwjKKJiN)?#LAwMVE%s75`4~gu{lyT6>d6{I%vvvcB|F#5wl+&o!!$ z|B%_6w?V+zVf?T1Psq#bPap2}qUQp}Q~BpZZSJT?peWg&B-f1=?|Hv~mf1ytYv^S9 zuJa<_Ikl#C&aHJ|WH_E1s;+|!r5sq+F^<=*m*aMI^>}OWK7M~Fpq_p@(%@y{#v}WP zq+C4P+r5bI4)Vm^F-f?5=3M&bkUBMAc?6#CnaF0{ko%KU8K zx8`U3jw^+PH_9~h%PWv*o&x92?u0jLrff(IrH>1j!7LL(ckJH*lP?E>S$i<-v3w89 zcTJ$vMDNM-)3)5quaYZXk>v9uvf#;%1b%(Md0rS=!#C7Mb5D0Oo|$L|&zh1+?PySaQ?Zi5~J;>*8j3^$6}KYrL?I{V@)G={22f=!$dJu1}1r9Tr*zJvL9)2yXjXIN#fkA#DUcC>6qDb9MKM~ycq z&{-zEz*A3Ammp`dZ+!=RQeHtzduC9$t_6QQ<*8-jIVd?N&uaoLconPVrd?fR#QLN3 z$*+m{qHZ?2e9xfztx~iptc^YM7EyYAIGWP6>ASkqsrwukTdu* zGz)oMvvaF?yq*qh-6{_Q1URIY!#VC?sSDfQ>9hSe`th`>dGy-RVCpE}-zNF-GqU>2q9BbI>Iy5lyFF$Kt8l>>U2HbTegF>NaDjlV_b{uc z03x2*!F@Xqkj_oy>Ov-DVa__98W(_mYYW(dEN2|}_Y~@ki$lHP;W$TsDVO?Ufl7rk zbWHzdA)~Vad>?&+VOiSr%bvC3=;5KXow#D%*lRen^f}G_G>I=AxgWXKJX$br5^wjH z;A71m(+Kk{zPh6uzfYCqUe){gxG#b5HMRiuoKNR17qjt9XaT#qcRz2M(}D%j9$Y^p z1K&?RF1lx?%?%^A@flvLan=P#9(*8_M$Zgks|K#4%O7orS!z32-17x6wB$1#dj>_h z4c*jqc`#q3Zop-O*7DG>V2DdR4$plrL9FyP>x5gOY>Vp;!OO0IPlanyN6K92;RloA z!6E1rpMegRL+QE;70hzNF+Nzl3QnC_KvP#Q0_k06M8-R&U{i}P-8K1+K=Jc~_ZEZb z&6Z~n+B*myl`Ej6-*^bl@1eShXG!L>Ozzv~#~0cc^07Iac)@CQ+B5noy}shFwHb8c zj*d3*kiKEqvD6gCyZxYE>4`l0?ij8tJnmKfhM`*X@#Fg0ysvKv&3r0HZ^ZnBZh05j zmLNe_M(c^r3w`mrZWEkZ5D6z7Kk&mBPjREBLa2^h!0+}uEzAxIP_NsC3i};w%J?Q> zUR9&lYbMjyx7S#$>@Ph2AzVCUbOE-8hU4|{r~F}+BzjeRMoXtB{`=gYe^`;r zzTI6RtWj?KO^6K?eh%Yucb3DS<3quEjwb%n38OAI3qUE%lQ^%u1>#SQWc9mQ?B;cI z`cZ2i`K0^#KfGphA$lj7?qY;qV`DJRa5S4aV~Bu(dN20tFoY)?yuoaIm`L;^3ZpcD zPtBIJUcI{lZ!V0ocHWmKeycc*SoI;fE;W(ZCE3G*z+)li6Ivs_u-X6+tKH618zu*Yhfk%U?_O z3iqN2%JJodf!w2KD!%*y^}oYJbmya3VQq1QY5q&OT6-WrdvOx0@mMcjEM3XhOnlBn z&zI9CVU6n0)1<#7d>~0~pZG=hT2NCqrzWze$A6eJda2VioAr>T_z}~$xKj)JkN9s!FEgm0M_td@P_F$K%9}>gH`6ZDc`gmG z&|)&(Y&?p(&JLs}u9dsWx<3sv+KfVasnC=kqxp zn|Zg!AUbvYRE)I#K`WGQk;Jg`pl{xegRQ2~^;JvY%+=d8cyT9RKXwMc|MewKIFpTK z<=%XX{sdS%T8`Vd?&2Huhhkf5FseLgW?{D5x%wP)`ZFmHI`sB&fB#g0v84%;9|rTv ztzlFpa50(wR^SZz45ABetHOlwbx^qdFnvCGGCCEUAdQfX4%_0zUzFG3J>{j`rM!d> zl~~Ece=Y*I3T0+8WFZ{8Cs%JVv>59T6k%6p9G1!X!qbzPB%7Y)KTB@lowlKT;WWv5 zix0#2jrbP4pn8~ppAyC0UyP@B;_5Nzfh?an_$oK2T`*cdlRgZ4hhx{Bhmxi4)NTG8 zzW?}IOv*~3BNw}%)#!u#Uj8jyN@CC_#gx};BtVS6FY@A>JgGGc&zDx?x7>1=Zp0w& z#yR>;$W8Jbp&P^^K;usXM0CFc{~jxw%-r?-Y4t*^x$jEv>m23x#tJmp*@ogh)w%UA zj;!X#i!R{k;R$r9&v2WXHW!-ka5&P*rMTtHa{l(i6&&pN0%t(8s5!eoough#{p*Ad ztlWIMuAc)Mj|+t%LeJvU)tU5)={oAOyMh1KOTbxURX}k5`GNeY{0O@t$|nhY?6Xt+ zla|2x*mO`deDeIdudY-a8nOjtTKD6C=L5OS?zuchKAm3;pU*q4*J8smGxo;w6dUK= zgMO2w_+|ZimbvmT|7B&*SGh~q-#xdO@0QKP@rPsindLsXcr_C*^9VrrH-;N3Z$M=* z;gMtCf<{IX&mAFn5rJ`h|DhWCFMSb>m%KxY?_1j(KiDPK_g`<5{L&NMsy%G3Bqh?* zmVP{X+${R=vV)CC!x_y3O>N%y>xD_5Zo_cP!8A?03wEhbq$dAVspiradRo1W<;q{7 z>u1E^-$9jl?Ux;tZ_498a-8_vcSj+6K`5`UbmRtOQeb9FEFDvF2YBsQ`ZY+4X9R>{ zN=!7}Qmss-E?*VL@9Uy{A7WAZ$7Fn;BS)SkWs~v8$I{!=OJMy)TOkK7hN{j-pnTyQ zKVvjTI%y-#daLpG8pKBzKmguoJcj}u-u;m$)& z{L+JX9;1DLtKHM)m&gC%C4q%F$musfdo-3`-lxlF8wdc&%TM{YkQ#pSMs$7P;7Fzz zxeM3nYq6=@bm(r`%{0lt3E~e6S;~+lG)Fgw?yfQAlKzT3Np1y?y}S{hd}0`7y9jLz zzKLaS$>6AADcIvakpFx58?R1u;GVw=ab!^{vRAvY>!L1-mg>XHtR<*;>N$LtXklBo zSF=yKC2;eEIRp<0#0_&I>BIZ>^r}`o`=CCE7A&=ezomLG#>;_5o*lq?A88ZuTNVdod?pcT(e&%2arDpMPEcKJVpCKehsVu6L5$K$ z0UFMrf`f-TAd2ppDdt}f6mfO+rw17^*7D;QWN;8hSbtP4LpS$V1J?H zy7hMf-S!pQ=tUi#R9%XFQi}X+S~mLaT#a{jjNl<2YW($Zb<|zg2~JwI^&a=# z(PNxDt&1q)O;7H_i?1nI@Bf|1_i6Eko7*wf-H?aBx`NV??aXs=7;ZO{L!XHQ_)`N3 zZsXhE#&`_F(ZBlJMDAWfZ`@D9Df64)+h27XKA?|T%+j_|(wfE3{7yp0n~kuJt>-)E z41mijsZ3jD7C*XfEi~R9YArQ7irfAEB=r2Y^JsCHs4G} z$raK`>ekdTd6120eg(`JmX4zEzcBVw0-SQlz;#P0ZN4Z$-yJyt>rWjb3MO+QDZP>| z@zA2J>nMO3#eDjyKUEfR> z^^2j9qE5%@t8x9MMSS|{dc5c9!_OpN;KK(F<0cb~;6dIAcymw|c5llR?Yc66+F!g3 z!It{eP)(ZN9=MtMTpLC&q>3nul%kDsY4GlLELFW%0{Q0?VB>Z%lPx#Ihl$~|PBxaN zZA_$R%9E+Lk1X9cXE60?)2ZLrFr!}Q;FJH<5rycTWPbQoIAm7~9&6Qv+V*o=eU#8Y z53T9x%_i`E{S%tPezW%9AcPFkSm(%hP^}zA&!5>%lqasm=pWJ4k1s&Q1>+#=z#bZ- zEu!0VjOdqlQy?)Q0h}A;sB32uzS%H{I7p2Kw{eNgv~WEh3ecuTLZ@VG&l-BJS(h4z zMG2=7JY!p$YM5bAIStY|1}7h!fI$U?5V%rUnpzIQxfKU7DrpKGaH}2?c630Ux3E1R zxwPb{Cul8lp^|IfP>1kAbl)gnOwYUr(sHlK7cXfVGsd-6|o|M5?>AC-lZ zBuubCV=GZY^zj)o6@%Hj@-F>KlC<1F#|8PT`ngSe9GVLm-{ z3qgr!c02YLCSBc4%C)80uwU-jlWGZrpSbbz%~gDekn_2jSIqc06H%STR}6XQf$67v zvB;zx=^uSQP&$b=mG`;sd5@?bf!Z%G0-gCzE7LAUTaojE@o!hNOx zU{%&i+z}(>L`=OnJ69^|`K||(8vJm9^CD_<{v9d3Ivg{e52By$ou>X@=Ww5pUDhX^ zRp8n7pLjJ>i5G5Ryak2+ujz4SH`5w79+cU`f#-am(@8$l;dMSD#HoCdrqSDzbts(y)?dWTC8=k-aagB zQRbE|(QL~VeUS`GFinjJcroxO?HjQaL8wFdk~*27CbRcyaFj-Ffdl7#jV6oPnHi4WAwhkt(@aof1N7{C_6e7k%yQY8}K8G55{PzanjVTg^Ss6Wq=J%`8OZGzSKpF{*9vLL&{io<9RH&k_HnO zwZrQP(KydzFc!5wrSGXfE2+B#8)hznl9!vvkGCtirJfqGxYlU>$*+LB_tz)W9S0K@ z@Q-b`olGwG>JY!KU|w&0ovMDhOeWs&;a+>rQ?4(}`qz_T?Zj(XnAJ|4HGA>>9}T+a zMhed|_`;{V%;N(irO6PI2m5nO@vIQ4-ubKrg#ZN9j_js))XRk#I1Sk+ zSlpAQL`m*zAXzT7>-|7}J^d=imRVEFgA1^1&r)#sB?tOXHnOL2_u1$#BZ+qYJTh~% z9WZ}o=*}(%qe4zjrQL%>>;BN~ggBw?m}te_0Z{nyC$(~nB{DIm$nBg~OrF^eL8UjNB*i2b@uR$TPA-tT9DVg zQV5v8Ajhqni1l_KRDDCSbzXmz{TGJ?>u(D=m|U#MJ%H+`e9?AZ04{SMMRV@$qv$!7 zZt0&%ZZ`w@uDXs%I{1J48$G_0_ovEju^y4^cq88XcDsK+cxQ5xGN| zL|x&P=+Cz4q&T>Q2MX87pd}i7h1E|injC^`_Hl8GRU}v(Sq$GM3mqiWd02h&6{alT z!IpAEmiVQPsn$He0WU`Jii`2$ikb^7Lp=i~6^^D4CmEpQ{_E7+Z6Nk+ks*dh|AD*W zOwp%N)kOO1aZv7%svEwxo-~LPxz-pJ(e{H2*`$$G=$O?HLocmjhc|?vk^DdiOddz; zwDq|0<47{zKZcHq-c1W$KVhqGZ(#%1&Eey}Mna>IecRvw>r$b=G;!SKvYm3s@iZPo81==VAq!(}rd z0|p_aw?(x{td;8bm_B7DeceK56#czNrge4Ihujx4ZC8lrb*}dCK-A zwBprU8vOP<6@kO9irQ5V_`1bI*u{P-czTgERT`my!NO^86BHUqpIH#gF0K(>3C|}l zzSJ_K-ODgFActlzU&4-bE3r4}4$Q1Gi>ZD3C+au;0tAlqWO^mSo;iF84K8$oX;S8R z-*+z_^_svGMB|D6S224Ok;AI5j--Bp!{~xgDUfY0fM2b8%<=LwHcDp(xp1rtGa+yn};JMUYeBpx$TBfhyGt%axWbQ>c zx+aRfHP{Jdvq#Z5R|7Pd&WKKDHJzb7mi}3DL&(PbMrAp9@Eh~WdTx0O%|3+xb6 zl6UMpG4xA>p=*l88uo_}EL?f$U>R<6<{LB6l7Tg88-)(U|IJ67B1G>bgAKP+cGeg) z^#}0YZI7Y7(UjiLl;SgSH7R{q4N4LHsYgm0zPMEeh41C~x!nEOv}XWrJ8=`QDi5HS z)Y_Pq>UO+&_$QP59z;u~e}jZI?;-xrNV=)Gi?qaQVA59uYBwT)eD;aO2idMv)$lqF z(d*`~PMySq#ZNKfPA~-bR#Q1$1#Y#jiJCoMOm7QOAiHo%pQvci$6|AwI6V(`XlMw_ zNf${D|r{A?(1>A*mbAD7c=t7APRVb?hO;(^_nC%?+qzuI-41ma zrE>(fk5vbYN9Ty$Eos=hyq#!-TEg9kLGVed8x+ph!LFMh;mtW4@D9uu{4Z(xbeS)U zbFCCTexivP7e#2+`49(`ePi!`s$D=n@A7)T~8{}hV(SGShpy%KMH)56P&aiK6 z&}QMh6<>j2732l>=e6mzyZ=DezZdVyEg@G&Izz$J7?FHCLVJ}3^-WC!-{?s25dfI# zNmC*J=18b@mxCb56>wmx5#-#=B~t^eV3X@+(s}a&*<>;ZWak1}<&47ew27=c_$Stj zlTqG6;Bim*C;q4yjrAWK4cfnBQd7}D1^)POa zDta!^6sIrmW_4xWV)v;^DC;(iK|#d{ffn|1+8 z*Bupi9V5)5B$do)oQ_$k7NUL8itK&xBn-a#KxC#m9wW>WS>wEG%xGFK%e>#n6m0K^ z6Z_p1>n;2&-ZiO~?b0t{ZcmOg%|=(gEO@ZZkw|~8EcFF!js8%%G8O9l-kdLwVAOS8 z5_g(>6t4E#V9jVZFnyCjLn`O<@{i}~>78!$fA2 z1RnNaeHsz88w}iKYCkQWc03~UnBk|mg@8IBpUOW11(E4FfrqgWwJLlis93A)U6A*i9;_v z4l03N<`0O!lRduM@&KIQ#4ty_N2JYYJ{(va$NZML;jt;N*qu#z?1Rt;n9KFhQ7?e> zEoPQ_)6Q9ISq_5oK||^Ep*m<5)QKw!kMTJMgHhM_Q(e=?3wTq@mn^H_$wqA%!t>l) zNaR%EMv)SaFJ(Sp6MKivQ60EQHyd9(eg!%n3(>$ukIFdSgk5<@Me$vCpz)6c)!ymE zwA`LS-o#9p8ZW{_5{L1MObBhvaiW6Z$_D(7f{l+>QJt&8{WtwG`>IgGHGB=}!0I^q zEJ=%3+>GKfp)={_I%#fs_yYbiuL6U3VbkAq3f`~m0y(`dy1)4-D0n;aVS_68r-NEt z)oCgFHTfFNNxKdw{p;zu0|jvIOZo>K=awG`lwrSz-ePKozXK+yk=7oCJgc94?C6l79SJ-Pe$lGzUhZbjT3og)fSw&G!w7kR4~=v z4%3&!vQ4Azz{^9^V4_1fxa_zJI!&7NppYFIGUG2>zfp&eA2fi7aWLQUzz^*`M)Ne` zOp*5;?INgPJHJr|`YK7i+Qi9KYgotzo z!k(r=GIGIl@vigff+sr>{MJZ-=E%t)u5850H4K{_1^vx!G=6nD0Pc2guyMsRX8t?} zmFE^Q6?=Oaukw-HGk!ys#9G3L1Jkhmq=&%T5b}Y|-^fbyhlKjfB3JBo;o>Q&Xs|Lw z{QBfXY%AG=ea;G~7%s(c&G*8n2|hfa-G+vk-GF=Q+^A*C z{sp@-aYl!T;}HlH^odPp1z*?uB3yO52?0lJp?B0qQl8kzj5n4L(@mow-~TJwyiExf zhAe{+{X|e&EDuWZgNcRaQPNwbNfrbR6d10TiCxZIP+g`3-UCO&^n*XiF4KSH&N2g7 z<9dwz2t7v<_WdCvB?DN*rVAvvzpQxs?ZGTS;O93AJf@Q!)1gI0V0<0W0OkGTLG4nL zxLM1YEZ$URy|Q30A67BkX8ohpe9QYfzWG}w+_M=?_m%i!Ku9T1mo5_h$BZaM?hZkC9r#g3uS`(z+(`dNepZ6oRMZ{6hkfl8=u4N2;^0E~Frhv{cQU6 z>u2--zG?oyd2{W5AHAx%%5(MlRsMe7#vA>;yf;iVUhVI$%n5ra__; z&!2Neohx19&tnacyF6y`hx%b={RR@(+Kuvd7O?qS0(tiEr09yXvVbJ1s@pJ28X~TL zVRf2nIKE0+IG6RmPG*%5KI+*2(;p1*_Vro2%|1l>VQzliifk*k{p4wO@#s`M?L&x{ zZV`)qq$suvX|PV1T1CEZPGT|nZsO)d9adsgK_oZr!7*c}(mTW3arRAoL*K&6q7fSg_aWHLsLSbGcg;iw6?%qtBp{wqKxb*9zngoNn-v* zMKW$$JhA0%@Wev^Q-%J+12gxti5K1gTcJv)xjls7z8|8PI7>2Ivz~mF*+4X#>&YaY zM3K}!H|xsFYsj|V>lo;gjC~82vKtMpIQx$hY0n$L=Y6e$%(y<-EMg?9Wj^GkR59x{ zO>DvBB+}X%!n6eTWyktF_RXk2OxnJJRc{Tz-M>=t(M(ll+0{(kPfx_s+oo2YW$&14 z|6gS5rG6sQA9f_JJ0BCQuaM>E{}*3x9!_QWzWpNeJe7z{86ze0dahe4rIaF6G8G!p ztkNV?%9N?hAtj}R2CV104V9>5NM(qU2F)~&dY`?2`@4_*d-wakfB9=2o@24@b=~K6 zo}cp??Q*vzQcN=2u2}+KryYW7?Q)3nxIuiZPob1%2&f3mWgh@1d%a1A)-U(Kki*rQ z4S(Z_rC$Iu_bcGW5^~w(3!DC_5h{NtGX}?(;?onQ^s?PKTs1Jr4%N4zL}NbsNsXf; zk@;xD`66Zq2;z(egSs7M9z-szlw^C>gT#q_knA# zQ1}sBHcgah$*7Y6t0{!PA%=N;J_P*^g^`&lFJZV(m|WSSN)o9km3VavUn?yj(~_>? z@4&fqRcQ-iVHOIi41vMU)8t3~DZ1>iBDte>sKGc4eUoOye(?~<&!u)=c2||a0x4?CvA+(A3_4sO7Lj% zMd*^dffXU4pqY^YPt#-&pm5T3sFTD#hzAkfL>%5GYM-)Z2A$$0Zg0=-wA&C; z#DBBG21DQY(_hxoM5?9j+cMR++ zj+D}}+sANV|C~DOx_;7O5lIhBpFqV1XF&OxadgA(7<$~Wm$pP7WY(+QrC&VdXtB#$ zOiRCp*0sf`6#_VS=V5Z)atFrTzr=0~m`NrdO@iFaR`_P2!6 z29>j{%fFNKz}$SC9-xZ9)f`FAf++fxKB^7lVphsA!Ur>C`V8W-Png7~Ig{Vb-q1B&h~DI+)??3epet@RIDZW%vy!85bdL<(+B(84 z2~&d=i_KuUmM-1a)d_~B$<$EkB57H)1UFnP#qz6f!1#Z8I?ech&ZYnBjQY>%^!cVD zwL4Ugnx|W_>2p3g_e+ermq)RSOb*e+q4C(6H~}qOjfmbf4nA2h!0y>Mo*4Z!rcw*d zc|sk3@&9-_{r6w^|DH~@uk4BRt{L_kiq}xR!x$oz)7S+v0{F`985Onv2mxWG%-|ha z=D{;0L4V}&-SQ-6OFoNs82~CHJ?x@yW#m`lG`jk-2UyMQ;Rzm^1*aA+pwkQ@F^3bs zM58}I$@*$y=FrNlEE|L`_u83=(s6a4b1dr`=s9$0F(UeHmP9S75jCsa@y||e>U()2 zZ=(GP^7nEbO6Dfe=X-dtpSyV7zg|YirQ8Lp74dB7Gf%py{XTk`MNyy5L2}`vDShHG z4?~s4aFqN&=lB;?XFs))6Mxbe=hO)1`~hRWi^vwfUh6UDk-!X)G&DwYQv+5ex!hiUQV!uEVWt+Enl5strBy&2i?zr3+s+tu`E=w$D%r{(s z!0Qe~Kx8)gcKs}dZjFO7$5tZ0EfTbPx|mxXtKg>-%bLEDsB6nlVHA93!a^lWSab3j z*?YSkrW`Kh@1JvpF`TiVS+voJGp)$d1?rAurtv!F`g(nEPL8DBQIqRJ9v&eL8OzA% zwr$kscP>dBpF-}$Ind)nVla66B|YUY54#SE+p9MIfRRum;;lZuF2bBk#m-IQPa0l} zO~$?Oqcn!U4DYeh{1ZH{L4TMuB@DmKJI@Z+-(k-$zREny%|_pYhIQ_h=cu!q8@fcz z#7+e->OF7~(s!xU?UFFVmUboDz5P0l-*gVMk6z-6SH{z(YeKl7Nd?QfpS{0?VCK}n zWNlrH?Zk`=Z2wUiwoAmDeWj^d*V)|9?lo(+JMk-+-;(Q2e5OvNy!qlZ?^Qf=(CIH5 zD0T&f1Rp|{t1Oiozn=-*@{{>7s~Pt8D%cBlCZWQTE;_`&4bQIh(c+cA*@Ovo@N)GX z7L#uh?GRBaYhYXF`6mJ6ZjRxS0$rlBDhaHr#K_vqyBJeyijH{_C^u4p8@&0Hc@$2U zWRL#-FdQFo|3>3dCi~rR0^c7&*K01)O)2U>0p#Mm~40C;8>)K-u&K z9F9wa4!OzpC2NJT@7^zXm?A@D&lbY>K||=#v$Buqa3D6;hRnG!jz|;d4DBLiY)ScP zV*CCpt`>JexrSeiP0<9HYo}5dH1vSyaafa=vbl?G3afxWt+9;k&mP)%Zil^DRX3^r za2gKf6)~bJk3jZ`4vzaX3EVP-G52XEdAp;BQ5PkIJ$ZtiUU3*5T|7Ah$$u4+{!hcx zf1MWpZFq_hocg4aba00MXSO?;Ew_Oy;cdcEyJ%32?qz*HDBvbua<-sR>tCieO+JherXB?erP$;S-5939TrH@yl@LyPHwL3?Z*G-lrpHL{{T zU%}SyI4RDMr$xIaq1a#PI`y)Nbo{EFU|b>3H9G%qrmz40#Q!FbDX-+{p zelHm!JJ%poKN4axW!zAA1{dV7S0ruSapas$Htc`59M;B-;6vU7vPxn(&bn|H!rlHc z(=08a%te~aWs6CCx-Xd|pi2ZDPoRTuH_GHlQkRGI7+=@OtT4>P?2t~^_DqHN@7xQ(-8?Wf7fZ^{nd<)ob@7`bR-yc<_;!#3=or! zcAUK}lKGlF%v-oSgmD_oWjFaOByaw1CP{P}i8L5w>Nn*>-kHn1d0#lViu^symvAOZ zM_!Q=cUo{;jSnm?HU>j!WnAk%pYBusK~8@;#_CoS@%=B&hs*^+UOCUDYHy#6VWO##CWgq z_A4ra>C@%am@kyX%Dnf$(c^_=xMd!Kc@%_HHPmi9c9uWc&yM{V*G}o_Q6}4HkDYtN zY7V0LfK~a{2gZS!q^!l1&e~{A&o!-p8);*(>*Yff3tr8NtZkswLxH;NXK1tjHcXI7 zA=@9z!j{l8IQRY~X6hLQI>jpjPIp}5{szmK)L!mJ$oq+YZ8Je*e?5xFUM1R7$8b;0 za*+RVj2PSvCPCHrne5~QdN=bnDfg@3_3fQUR)0uiYxDz%<5(g@eK4&%kvbVP%>u~p zmHNaWNS|a%M^a1KTe$VbJS3?sX7+8MS@M&}uD8Z~$z^_21p^4z*~!SSvjEH-!+&v- zb<6@j{eU_oBG{CMFXBvPzg3CAU@2*-41wF4^QimC5GE=W(QlLTaNLd=RG0GE=N10! ze&HzC`P7T_e^p>Rtc2|4rdsjht3I=F=5BTUeWy_WwH7X^O~t++PieRPY{Gk43{4e5 z_#k#49{JP4g!)}(l-AE7G{zXaZs}2_Tzw3`I^SOQ^I~o>sY*|Oj)S>5JHW7Q3GUWZ zplADR$ODbjxb#{+vw5*LypMYfn*O1z@pmiEIC+D5b6c7|fi$vlq6tngw4}?FR`A|s z%MsCU60~OZliDtqCons}lL)$5k%!tGP<(G5)BU3lzU_`@v|$xy8&<-N*H`i46D3w+ zvLk~F4eBNxt!4RPA$;``arm4Y0Y67O@%CPJVKhWuAxe|Grlwaz#1JW6d{o>&}nZ zcWeXfe6$$Lqgi(E_gb=s{^iZmJCA6sz(&NT6Kx?WNVptmr(Y+@(QPkba8?x&xV)4e zjhRZqe5GOhr)Vl_^P81TH6Ryj6EL9OnZ${W!)2$W+5Ryd*4SN=&J(&vzYd(nRaN)- zqD66Z(t>XC^Z74ED(^SjsWHI*uu(;yzftVPO>65)*A8NT5)bbjxVC`I4XV7iBVC4hsvEGS`>>RP^Qx|$x zN)d5eANtaD9F^qx601K_98h^2@2tCy{q+ML_)Pm8Zq|6g#=Wvf>BweAcAX#DEER++ z4|_sNwlW$@I?^7uNoa~<;8dMWmbQ7(Et^Hi^0*VQKSPh2MF`tBkKV=N4YzrlBHzK* zHV?L1+n%@!eu9DFDwuUJ0@uIXL>sk77|Da>U>!e>M0V_fCZBlXyHbhv3K4o`{8{w& z`@?EUHj{G~N7=9E87gKkOK&k&a6}~#8<)q^T_u{NbwrXVrgq^#ml$?!7$D*!bJ!PQ z+hN(^cJM#PZ~={l{8OJ~arezHd?5#aYV+?9mbFwfk47jHRxECR^~N_4`mr7oMmXSo z@Nt|vr-S|Cc^QUO83<1!@MC)fy0_Zc+Z?NA@7eS*SIREK=_xlzo=_)y++T;v>7>G& zQdN90m7&=oZV(+439}8(g3M4ZYoQ(rOU};4%G0X$^{*shmi=7zh+_&f_JGoJaoq4+ zSI8>oerG2gH-OgScHV2_ukiEb6>4}ujE3}B(qbQTYDya6PQC!ub~L3sBr=%g2~S}2 zpT{8oN}N7BEl+Oi7|~Df^>O-g7aC}E6Tg=2CI6fG=0B6o|L6J@A=v6_$O!xyPdEHI z2EqMYSboHf*>LA9{5*A$ow8V*joYY5o=H<)hp!r&+W#644~_EQU5kd5vV5%jrc5i; z9MO}Tr~T1_Z1jAwm2-{r4yS&wQiBrno?rK_|AI(j~sD7BaofFEHxsQrHz4Ll#&> z5+{QLSheF5G#Ty0`J7MSu)`KwmC6BmB3q%d?+jyOe#~~{sxU9%;$#$=-bQ>^*Wq=W zO8n=1fPUGzh!aD3^n>;${QjbnEiFY{^y4XnGx6-4O%=>q^-_?V5lGh;wn51BOSJ#o zbGTqPk2-tl5kVJqrudjS3Gi}bME3uL;jD=y_jN4zUr+-pRWp>mG>smw%VuW>%ppGB zI(5kzWw4^z1zkvg3g= z`QusuD!Ox^@60Q^+I3QNAfz6~`>NHw96d{a*S5mGH$52q@(X)oSe}dunG@j~TBN{F zfoLCBppkEK;aTSiOqim8cQ$>2Q;r?%w>e!fgz6~(fU(1r5!_hFyVz+IS z=K#)rb`S0^+JPZ$=dma=3oQH1KxgAVbcj9!IY-)}UGL!d!vnaOIsE ztmm)5plnaNTE>=Ko%0J0S~(%H=wdy8h}a)f{|Y7#Gzm;fMAPSr#BeX-`OCYgKuI9o z*zbjI`{PJXzcZb@mz$lcH{jz6AGc~xCdJ;O%ptAY^!t$LvWWKQ8T5MPG)%a+iBpZ9 z(79oM7{k5=2#W|Rtv^7^Pu_%eoMC$Rx>9Vr(8r3E&L+F49299bgJQZFjS+o>4uTE% z!#ff+1rOrV<7FW9WIMV4*M$r%S0Y@oG|8D5O*M9=&;lPP@|)aY{9i}Xw|(Ux*dv1K)*;_(fNOJA~M!xM>boe>P#+u)k)r$~j=nW7KAyx?z(pzd=3*->@} zFPsu0y6K$4ULZtde#w#QH|2D~u{vg|+*9_!&vIHYnJXE!41lkLLO4xoFVnY12WU$c z7`eQ{Q^IeVzNt3!(7g#HU0#X{D-^)nmV;CzItE8A`xx`&*=T-7p9D54kf(11QB7|# z92QB$M`H=3qNE%j2`nIU8b%nm*K=V&WF3Ai7o_WZB(dem1@>alBx=3YmKG+hg*(&J zZSD8yGYi@(pyaYE(Y>0A3MmKa{%0Xzy8a=NR;tEQJ1G*DUjaw|YI5`c8CI&g6o!ZQ zppZ=n)t3(>%8Meg@2nc5zsHlD9A1LKeYIG-+7zFmA~C+#f?6-Oz$33{a`jFMZ9Hp8 z=HEX;+W*{x`3d)sFL?|bXCRxsNDY=036ixtig`n#6}TX27G!S?rt3SK`D+%P0IAGL z;yCgl!DOQzx>go)5*|yAob27 zs4`WSd>@Hq4!J5&lkLr5JC+BMk^v|Xp-M)EuW&%)JjRvNSoXVUl8;KusmHSp=KI(J z=IKcZYNz{#NbPZ@4ljI(+pJXVwk#n#CQHFW>BkU^H=&NVk$>y8EAV#KgN1hQL`?BdOaxvP+fA<$AIzv* zL2ugmk}#=uG-#YcRM(8dZ`O{u$GQk!mJCtx$4AJ+Xiu{5hdi0L)STxL$j$i+N{PH$ z3FEAHn4AhwBj=SRnLC>YK})k6?(uY~uJ$j6NqvWbLzifNaWW`uT@A|adNf2zhHi9@ zVKap6VMuunCMHbAotFD~n^x-(@@+cF+O-X`!flBvdzu=?w_@baJ#68GSU7Ywi&kUJ?k7QW_-1k`*#vX$Z{giPl}B$%{bLR5ZlFZ& z1=eOQOBZP;G3I6tyosD*_4ReJk&$xm) zq2J7#%OxOvc?#R3e;unIO(C`g3mEGh2l8}PJr&jZ%1U2Ipr33~(ZXmUc_025Di)Q4 z2dAyPZ~MbM;lNnq$5b&gC6s-8;U|npo*=ug_SUG_6~HcKSvqooE7@7|6n^X)U{fr| z(JY6r%)t6tROntk{@I?v-!S(eJbfCDb%m$c04IIm^~4ey>j#yozwyD3T~v9r6DI2h z0JGy19r&X_?@qS><=TF@Yp=@MHgzF0Q4)9emylzR@Zb=cmdV7Ic78`FTG^R{ld7l{X;9XF@{y3x3UWE>)9HGM0gnmrk&Ow^IY5g@{ zJVfSFX$^T2nI8bRbEWY{eG)GBGNYPdX3!q|nlL)M;KlxIX4*G9D)0A_4J})bQEswS z?a^AkevAV75NS__e+*!Ep9E?C_l4b;T?bl|P0?N3nQjdlg?E0s@Z0MfoW1XY2{U3~ z{KE6#eX|}*48v()>sFd_u^LVn@QBq2P52J5ObUF+@me_amlzVWGcyT7KEY>M>1v63Vb!x&#*%Z+cAh+%pi(EveatAX8Jz047{3MiPNKU$SDj!+1*xb$g0Cku>V>TxUL^E&BdV4 zxF1gBAEG@^Pmr$;8}VlCIWoD>oaPFp;?b=mnAs#lPv$Hk`|nDl^0Udr{r5*W@IDl0 z2W=p1Ydj_#Jw%L@QgOpKDRS0FjI5tu!Y=!?kvQ=6$SUp)&8>`Lwu&2p^nxgIIARA; zyqJbYpUZ1PU+n^`IeoBQ+MeDh8^vA22k7qEYgtVtz)Sw(S?o1sYYtR_|6J+Le#Qnz~gn5^=Xrfc4w7o^3@B3drxG2m%#riq%!Q>MWa8_OpeK18l5t^mwOFxkT{VviG6}qio)KiXxEyKuIUlNpG&nuz zJSyyc&q{T*v5ya)W1jRl&?JqW^wN|&I8NXc?r%?{)pok{`Y^&lkxN{VXBhweeO=q2 z%>Dm=dk*O|9wlFV=I0#u#QIITDAnntdBhSQ%s+;j(k&>GpG&XYdJ8w! z+2X2@Jl@`xSh7-kCT{4s2*JmJt^1@!=2t$4DN++@;A}y{Jf_&ipNfmlWinGE>TrEk zHj!MsggkUGB2r~KzzIj##sw7HEIP;m(=;OA90tQ_33%t_UFa%rX4mKFvvX6v;)F>D za9;sSJ_;7Y?QTK*zNCSt-YiaTEIz@fPbbs4d*5Q?RoH1h5P)d^pL=USUh>Ymd*Wr7d*eo5@*9? zy7%q@a;J7Yb?z6ySWAEA?q^+?GCd#moy-9R&iJ}6%NMpysD~*!`modK5IuL~Dej?n z!7gqBgzj*_7xIs=P-ig>Q~6BT$Cv3TLoK??@gY}wpa#A+0c5T1K^UCQ707IfLvZef zT&2_SuUCWQ1sx-Do7>^tmk6q-rb^XD7K6@bN%C5ok8dX?^G-$EF@877Sz+l^^1`N? z2Iqf=m#xd8{?}Z(@MIaTw%ZQndj#M?EcZFMb`!F0Qam%<2x_f)BxijYbm?1>@VnJ0 zXgQNMC_iJ=U)n>BPCAvmB1XsDEQzbfL3(2(it#a*Cep^M&|>r{EOFXLE#{u5Uj*FY zR>~pzqhIy?KGV}vlal8iTkMWg-Ce6y$Kp4Zo~fI8=$c@l5yHqgRNJmkbYYS;-mi$ zyhJ_`hI|uAc}COw4VCYI&&qZ2)->t#JQuJ4U8s6_NbBpWe_e1k*ZY zGG%-edU$A%DlTX~e^N8F%H@Gel_IGzddt4cX~n2B5AcN6E`08M6vGEaR{0ARmW<7%x{@6goCe1_(nM?R7Z2*l+|I29pKkaY+OD*`1X7GQTUm}Dm z5`8%UKnZN>6~p=5vj@H_gn`OBc6f9a z(Rc`nDrXO_I>uJ2pT_q;>LL7w6tm>G5M#`>6huBwwUewZWx@E($}#9#Oh@$!sjX(GK#}vADhJ4x9B)nRD;V5});d)>r=Xj{QepnWfh!O5~h{ z=z${-AbPbKlnbmu+4X|-wR8&%=)S_4BL~5JVTj$jAWh2uBu26W&*P$mGDsPqc(crn z3#gyN!y4SaZO?6Hz4~k#zB?Y@d^(I?l^S%PZZ+%;@&(-`@6hv(EKI!jg^>@dMDx(S z^jd=fW@kLXS)KE!gMBTh02gqCI=9WOl!5+8%8 z;H@GKM&Up>05!v}j$?2BYiFm+SHk-pJ~*Am-~Y#NBB+#a#|S|;6fa56hC)R`)|1AGpRB=N;zOl8tkuy`?r4n-Y? zhSEgnI3Y_PNRn;EN;g`O|km+P4YBmiv)GA8eoB+2BhrR+5sKO}O0*uCy5^rdhT z8++tC#5j3Si^3_SzF?Ru`ATMYsVmTTgFJqxs~bJ`~3k+;(8y^KQ26R93A?!DWK;O2O==E~m+Jq2in@ zG`gWi9)6z(N7g=J#Xron+m=0(E8T2{i5o_dFKEx1mJ?9NNq~AaFmy}!Od`0qh*1nX zhPs__HEAutn@bJbkwh```u^oGuRAg@}Ab_o!pZW`7up$%!Rh8)AuWPtB)R1~c#iGpCU@-Gd zBFFbxfcV=@m}v+ zOj0DyVA4;PEq>k&R>vclgO(xC=&gsVTx!?>MwisSs9_g8jA#C-#^X9}#yR@?1vBJb zj-6v3WO#ZB=dkMGy%9CZK^Xd5v!j(TA z=T(I_f^KIy`Av)1KKXNW(y$W@#7Tm;i3~|v8378vouK9D0Q+*sE5@3Q22*VddVZZd zxx>3h1X{bWMs6Yd#YekV+i3;)5b=!>=^KE_M$$z8hdzBWQ<(;ws)UX>4Ro9;MD+h% zBVP(PvlIRp(3kE}pmF9g=zp*TWmj!|&0WO7r3X);^5qL`xz|Rr*5(szSe}ZXwf@4Zab3)+jbv2tl>RBsLJ*zH$@gyty=eHL43l8!n=d6c_5BY5P z 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�Mg?XM$q`KZ>dLP4p9RnB zN{MonJeQ}TMrEq+(+?XIL2l6{b~1a6UU_8;v11I`1Ba%-3x`&LsV76sq9vI5K5MWs zc{27%w1WrL&Fr|H*DEX&YB2w;3OjbOI}>2EMbPI02r6m@LF377SU#ODn{ zi}OGZRjHLfZy&**DOd^gpM4^YA#QX=xWPbCqK_;&5+H6gxOU5%U5(h~1iOc&Bm(hw<7>3J((TvGX1}IkFf=noq(5%_6ul!W>)9 z$#bti4B&Q!wWA1s4iv7vlFsI1bOP%6T#@1gn`Q4^@&2QmjJuI3MA^Q=n#}>!?bH$6 zcI+lSd>BAH)e*bbn}Dy#bk3Gv^WPEcCUHx*()D?WPCpKk4W0+^y4)AR-jA~}?afj& zA#M0A;2;&|-%Du!2y$bEG)Fo%L)oKSY~NThPGRbPUiV}?w^X#A6TZ0{-wMaDrK7Ln z&J{~()##^aKOqv;wciSK-z*@n&M!c7aekRGb15(cgt`J6y1n4slE8?qH} zPHq&}b8QZ~h*#mPkCODgO#+Ejcc3c_l(-eo7vZ8^x1i&^5XleOOq+`?vX8cyV)N4= zlDB_4)tTx=RxMscs+0QA=YN4UBooU zP}0yTg)tS|=>^R!vcTOApYSnUiZRcr&iiaE)cQm@={p#DXgp>OG~&$8M^RI9hZxw_ z5@NBCkinlo*7pRRQ}7Bl4hbVFKiZ+gE92tO{j9KERta31UC6#CPtoDt5K{bk5+qhl;?5-V z&sL@5@a(KCndf+qmAXNa7w~}!~ zb`X=J1+cyyAwGkp_a2Ugm;6|<65`LL+%%X|U%r57;XFva-XF?q)Ualx9Ao$3t-$2X zE4uG_9htj)G&pP~ID1Vf&Ywf6zVHYvcAO8VJ9{8~qcl9Q`bd^K?7@!#@z6F#52r19 zL!96XRty_WEcM>f!0s2n|PzunMsIfAZLw^(E6BGs(C;M{Ev7L<;gK16aR&>k0+7BPhIHq$OD}GYw_vg zc)CNe12?Rx=I7AsxGaFzH@VHPm$i+t{6RdKv0j%cm>Em_iZ`+WpK4HOx({Y2=CjLE z8c5;7lc@jN3yq@XamSq zMJaA-h%)o0d@*?Xq~n#{7ir9K9d7ZNV65@q#eT3%p#qQ3SUIkxTy^kcS}d`I^OB=D ze1|$`up||$m%pONywk|kuIDmKXEVt();+P^`Vn{djJ zEA%}}L)x9OIaG-|Yt8G%emsuT^-S@Rb(?^ZPC*aD8|bw>5yX@RaHh**u_tyMyuY~< zkA&RB^CqkKTum`qi@0W zViDe$q)(qjKBhW44|wgf^W>7?IPLE{pNvbt1SgujQS)64DIOgUD*Rc@;!z{GMe#0B zf2E3uo)Cv^!rAzvQJowbbO~-}N|7SP9Q;sY3|X@3f&~L5;TC^i<-OmBrStqShUIz2 zCrreY(_6SQQDMBcQh|IowS*}-U+Mf&Z9JE?9Fg?7&T`KNK}XX-uDZDr)+Mb5t-;gK zKuWxioX|KC6EmYJeGIh3MdZZzf2@tB3>ND1udkl}|MlFf%dva{*&3tN&HtcSdFk@kV9}{W8+p=r=9=t$>-y z?~MFg0b^^^Keu3P-P;f9zdrsi8_Z04_o7z;V{6M^AMsxW{znUDrpAA6!Nll)7U+E~ z#`NliY42|KDqv#N+mnAUpeiY1Vq~E(NK%m>!g9Zcu(0?T{%Rj+prhkM@ zjE(+O+r-%TPq3NU|EO*Dr`jgQ=D&f5^Bo)ht7H5i{O^AM1)G_f{s}hW$KfApo0$C0 z^1n6y$Imt~`SWL+{I1`Me8&`jb&MZ7|83e|u$kHKEdL8O;fKW^YMYq+v9_7H$scR; zGuxjUH~n3||1!fhksnf4cKX7N87|D9=n)iyEjJ-&ag1O5j0?sqS^_ucXn{!hOx zdXJJ`aBs_h!vDFT7QL@nFSxf`ME_yAMejk>3+{cd{e=H!d2g@vf_r=IC;T_ddwZ=H z{5!Ax$LE&6^V;9w-+ApnmRtVLYkz}#d+nc2we0P+UT|-(N&ds+Q8(aBr{ug#Y7ntKMGg1^4#aFNg9i2rXCUAClI_y;iFKTIc?nZ~3LjKPRP{^{p`H~tGYGwOY3{kvC^<3uI<$VvS_C)Atn literal 0 HcmV?d00001 diff --git a/src/remove_ai_watermarks/auto_config.py b/src/remove_ai_watermarks/auto_config.py new file mode 100644 index 0000000..8516d3b --- /dev/null +++ b/src/remove_ai_watermarks/auto_config.py @@ -0,0 +1,209 @@ +"""Automatic pipeline planning for the ``--auto`` quality mode. + +``plan(image_path)`` inspects the INPUT image (before the diffusion model loads) +and returns the quality modes to use, so the pipeline can adapt to content. It is +meant to run as the FIRST step of the invisible/all pipeline, wherever that pipeline +runs (locally, or the raiw.cc Modal GPU worker) -- never on a memory-constrained web +host (image work there OOM-crashes the container). + +Routing is **quality-priority**: ControlNet (text/face-structure preservation) is the +default; it is only skipped for a clearly structure-less image (no face, no text, +near-zero edges), where plain SDXL is cheaper and just as good. GFPGAN face +restoration is enabled when a face is present. A mild sharpen + grain polish is added +when a smoothing pass (controlnet or face restore) ran, to counter the over-smoothed +"AI look". + +Detection is **cv2-only and torch-free**: OpenCV YuNet (``cv2.FaceDetectorYN``) for +faces -- a 232 KB MIT-licensed model bundled in ``assets/`` -- plus a Canny +edge-density + MSER region heuristic for text/structure. The whole planner peaks +~100 MB RSS in a few ms, so it adds nothing meaningful to a GPU run and runs anywhere +the pipeline runs. (Phase 1 applies a fixed mild polish; an adaptive Laplacian-variance +polish that measures the OUTPUT is a later phase.) + +The text heuristic is a deliberately rough Phase-1 placeholder (DBNet via cv2.dnn is +the planned precision upgrade); it only ever ADDS controlnet, so a miss is backstopped +by the edge-density route and a false positive only costs a controlnet run. +""" + +# cv2/numpy boundary: cv2 ships no usable element types; relax the unknown-type rules +# for this file only. +# pyright: reportUnknownMemberType=false, reportUnknownArgumentType=false, reportUnknownVariableType=false, reportUnknownParameterType=false, reportMissingTypeArgument=false, reportMissingTypeStubs=false, reportMissingImports=false, reportArgumentType=false, reportAssignmentType=false, reportReturnType=false, reportCallIssue=false, reportIndexIssue=false, reportOperatorIssue=false, reportOptionalMemberAccess=false, reportOptionalCall=false, reportOptionalSubscript=false, reportOptionalOperand=false, reportAttributeAccessIssue=false, reportPrivateImportUsage=false, reportPrivateUsage=false, reportInvalidTypeForm=false, reportConstantRedefinition=false, reportUnnecessaryComparison=false +from __future__ import annotations + +import logging +from dataclasses import dataclass +from pathlib import Path +from typing import TYPE_CHECKING, Any + +if TYPE_CHECKING: + from numpy.typing import NDArray + +logger = logging.getLogger(__name__) + +# ── Routing thresholds (tunable; quality-priority -> controlnet unless clearly flat) ── +# Canny edge-density below this, AND no face AND no text -> plain SDXL (nothing to +# preserve). The headshot measures ~0.022, a busy photo higher; only a near-flat +# gradient/solid image falls under 0.008. +_STRUCTURELESS_EDGE_MAX = 0.008 +# MSER regions per megapixel above this -> likely text. Rough Phase-1 heuristic: a +# no-text portrait measures a few hundred/MP, dense text far more. Set high so it +# rarely false-fires; it only ever ADDS controlnet so miscalibration is low-harm. +_TEXT_MSER_PER_MP = 1500.0 +_FACE_SCORE = 0.6 # YuNet confidence for a face to count +# Downscale the long side to this for DETECTION only (faces stay detectable down to +# ~10px, and this bounds YuNet/MSER cost on huge inputs). Removal runs at full res. +_DETECT_MAX_SIDE = 1024 + +# Auto polish applied only when a smoothing pass ran (controlnet or face restore), +# to counter the soft "AI look". Conservative defaults; the user can override. +_AUTO_UNSHARP = 0.5 +_AUTO_HUMANIZE = 2.0 +_UPSCALE_FLOOR = 1024 + +_YUNET_ASSET = "face_detection_yunet_2023mar.onnx" # MIT (Shiqi Yu), OpenCV Zoo +_yunet: Any = None # lazy singleton + + +@dataclass(frozen=True) +class AutoConfig: + """Resolved quality modes from content analysis (the ``--auto`` plan).""" + + pipeline: str # "default" | "controlnet" + restore_faces: bool + unsharp: float + humanize: float + min_resolution: int + # signals retained for logging / debugging a bad pick + has_face: bool + has_text: bool + edge_density: float + width: int + height: int + + @property + def reason(self) -> str: + """One-line human-readable summary of the plan (logged per image).""" + bits = ["face" if self.has_face else "no-face"] + if self.has_text: + bits.append("text") + bits.append(f"edges={self.edge_density:.3f}") + rf = ", face-restore on" if self.restore_faces else "" + polish = f", unsharp {self.unsharp}/grain {self.humanize}" if (self.unsharp or self.humanize) else "" + return f"{'+'.join(bits)} -> {self.pipeline} pipeline{rf}{polish}" + + +def _to_bgr(image: NDArray[Any]) -> NDArray[Any]: + """Normalize a 2D grayscale or 4-channel BGRA array to 3-channel BGR.""" + import cv2 + + if image.ndim == 2: + return cv2.cvtColor(image, cv2.COLOR_GRAY2BGR) + if image.shape[2] == 4: + return cv2.cvtColor(image, cv2.COLOR_BGRA2BGR) + return image + + +def _to_gray(image: NDArray[Any]) -> NDArray[Any]: + """Single-channel grayscale; passes a 2D (already-gray) input through unchanged.""" + import cv2 + + if image.ndim == 3 and image.shape[2] >= 3: + return cv2.cvtColor(image, cv2.COLOR_BGR2GRAY) + return image + + +def _downscale_for_detection(image: NDArray[Any]) -> NDArray[Any]: + """Shrink the long side to ``_DETECT_MAX_SIDE`` for cheap, bounded detection.""" + import cv2 + + h, w = image.shape[:2] + long_side = max(h, w) + if long_side <= _DETECT_MAX_SIDE: + return image + scale = _DETECT_MAX_SIDE / long_side + return cv2.resize(image, (max(1, round(w * scale)), max(1, round(h * scale))), interpolation=cv2.INTER_AREA) + + +def detect_face(image: NDArray[Any]) -> bool: + """True if OpenCV YuNet finds at least one face. cv2-only, torch-free.""" + import cv2 + + global _yunet + img = _to_bgr(image) + h, w = img.shape[:2] + if h < 1 or w < 1: + return False + try: + if _yunet is None: + model = Path(__file__).parent / "assets" / _YUNET_ASSET + _yunet = cv2.FaceDetectorYN.create(str(model), "", (w, h), _FACE_SCORE, 0.3, 5000) + _yunet.setInputSize((w, h)) + _, faces = _yunet.detect(img) + except cv2.error as e: # malformed input / model + logger.debug("YuNet face detect failed (%s); assuming no face", e) + return False + return faces is not None and len(faces) > 0 + + +def detect_text(image: NDArray[Any]) -> bool: + """Rough MSER-based text-presence heuristic (Phase-1 placeholder for DBNet).""" + import cv2 + + gray = _to_gray(image) + h, w = gray.shape[:2] + try: + regions, _ = cv2.MSER_create().detectRegions(gray) + except cv2.error: + return False + per_mp = len(regions) / max(1e-6, (h * w) / 1e6) + return per_mp > _TEXT_MSER_PER_MP + + +def edge_density(image: NDArray[Any]) -> float: + """Fraction of Canny edge pixels -- a cheap 'has structure' proxy in [0, 1].""" + import cv2 + + gray = _to_gray(image) + edges = cv2.Canny(gray, 100, 200) + return float((edges > 0).mean()) + + +def plan(image_path: Path) -> AutoConfig | None: + """Inspect the input image and return the quality modes, or None if unreadable. + + Pure analysis: loads the image, runs the cv2 detectors on a downscaled copy, and + applies the quality-priority routing rules. Safe to call wherever the pipeline + runs; no diffusion model is loaded. + """ + from remove_ai_watermarks import image_io + + image = image_io.imread(image_path) + if image is None: + return None + + h, w = image.shape[:2] + small = _downscale_for_detection(image) + gray = _to_gray(small) # convert once; the text/edge detectors pass a gray input through + has_face = detect_face(small) # YuNet needs the 3-channel image + has_text = detect_text(gray) + edges = edge_density(gray) + + structureless = (not has_face) and (not has_text) and edges < _STRUCTURELESS_EDGE_MAX + pipeline = "default" if structureless else "controlnet" + restore_faces = has_face + smoothing = pipeline == "controlnet" or restore_faces + + cfg = AutoConfig( + pipeline=pipeline, + restore_faces=restore_faces, + unsharp=_AUTO_UNSHARP if smoothing else 0.0, + humanize=_AUTO_HUMANIZE if smoothing else 0.0, + min_resolution=_UPSCALE_FLOOR, + has_face=has_face, + has_text=has_text, + edge_density=edges, + width=w, + height=h, + ) + logger.debug("auto plan for %s: %s", image_path, cfg.reason) + return cfg diff --git a/src/remove_ai_watermarks/cli.py b/src/remove_ai_watermarks/cli.py index b8d0f14..21aec82 100644 --- a/src/remove_ai_watermarks/cli.py +++ b/src/remove_ai_watermarks/cli.py @@ -159,6 +159,48 @@ _unsharp_option = click.option( "--unsharp", type=float, default=0.0, help="Unsharp-mask sharpening strength (0 = off, typical: 0.3-0.8)." ) +_auto_option = click.option( + "--auto", + is_flag=True, + default=False, + help="Auto-pick quality modes (pipeline, face restore, sharpen/grain) from image content. " + "Explicit flags override. EXPERIMENTAL.", +) + + +def _apply_auto( + ctx: click.Context, + source: Path, + pipeline: str, + restore_faces: bool, + unsharp: float, + humanize: float, +) -> tuple[str, bool, float, float]: + """Resolve ``--auto``: plan modes from the image, overriding only the flags the + user left at their default (an explicit flag always wins). Returns the resolved + ``(pipeline, restore_faces, unsharp, humanize)`` and prints the chosen plan. + """ + from remove_ai_watermarks import auto_config + + cfg = auto_config.plan(source) + if cfg is None: + console.print(" Auto: could not read image; using defaults") + return pipeline, restore_faces, unsharp, humanize + + def _is_default(name: str) -> bool: + return ctx.get_parameter_source(name) == click.core.ParameterSource.DEFAULT + + if _is_default("pipeline"): + pipeline = cfg.pipeline + if _is_default("restore_faces"): + restore_faces = cfg.restore_faces + if _is_default("unsharp"): + unsharp = cfg.unsharp + if _is_default("humanize"): + humanize = cfg.humanize + console.print(f" Auto: {cfg.reason}") + return pipeline, restore_faces, unsharp, humanize + def _restore_faces_options(f: Any) -> Any: """Attach the shared GFPGAN face-restoration flags to an invisible-pipeline command.""" @@ -507,6 +549,7 @@ def cmd_erase( @_restore_faces_options @_min_resolution_option @_unsharp_option +@_auto_option @click.pass_context def cmd_invisible( ctx: click.Context, @@ -525,6 +568,7 @@ def cmd_invisible( controlnet_scale: float, restore_faces: bool, restore_faces_weight: float, + auto: bool, ) -> None: """Remove invisible AI watermarks (SynthID, StableSignature, TreeRing). @@ -542,6 +586,10 @@ def cmd_invisible( from remove_ai_watermarks.invisible_engine import InvisibleEngine source = _validate_image(source) + if auto: + pipeline, restore_faces, unsharp, humanize = _apply_auto( + ctx, source, pipeline, restore_faces, unsharp, humanize + ) if output is None: output = source.with_stem(source.stem + "_clean") @@ -758,6 +806,7 @@ def cmd_identify(ctx: click.Context, source: Path, no_visible: bool, as_json: bo @_restore_faces_options @_min_resolution_option @_unsharp_option +@_auto_option @click.pass_context def cmd_all( ctx: click.Context, @@ -779,6 +828,7 @@ def cmd_all( controlnet_scale: float, restore_faces: bool, restore_faces_weight: float, + auto: bool, ) -> None: """Remove ALL watermarks: visible + invisible + metadata. @@ -793,6 +843,10 @@ def cmd_all( _banner() source = _validate_image(source) + if auto: + pipeline, restore_faces, unsharp, humanize = _apply_auto( + ctx, source, pipeline, restore_faces, unsharp, humanize + ) if output is None: output = source.with_stem(source.stem + "_clean") diff --git a/tests/test_auto_config.py b/tests/test_auto_config.py new file mode 100644 index 0000000..838d9ee --- /dev/null +++ b/tests/test_auto_config.py @@ -0,0 +1,98 @@ +"""Tests for the --auto pipeline planner (content-adaptive mode selection). + +Detection runs on synthetic images; the face-present routing is exercised by +monkeypatching ``detect_face`` (a real detectable face fixture is private, never +committed). The planner is cv2-only and torch-free. +""" + +from __future__ import annotations + +import cv2 +import numpy as np + +from remove_ai_watermarks import auto_config, image_io + + +def _write(img, tmp_path, name="x.png"): + p = tmp_path / name + image_io.imwrite(p, img) + return p + + +class TestDetectors: + def test_detect_face_false_on_flat(self): + flat = np.full((200, 200, 3), 128, dtype=np.uint8) + assert auto_config.detect_face(flat) is False + + def test_edge_density_flat_near_zero(self): + flat = np.full((200, 200, 3), 128, dtype=np.uint8) + assert auto_config.edge_density(flat) < 0.001 + + def test_edge_density_text_higher_than_blank(self): + blank = np.full((200, 400, 3), 255, dtype=np.uint8) + text = blank.copy() + cv2.putText(text, "HELLO AI TEXT", (10, 120), cv2.FONT_HERSHEY_SIMPLEX, 2.0, (0, 0, 0), 3) + assert auto_config.edge_density(text) > auto_config.edge_density(blank) + + +class TestPlan: + def test_unreadable_returns_none(self, tmp_path): + assert auto_config.plan(tmp_path / "does_not_exist.png") is None + + def test_flat_image_is_default_pipeline_no_polish(self, tmp_path): + flat = np.full((300, 300, 3), 128, dtype=np.uint8) + cfg = auto_config.plan(_write(flat, tmp_path)) + assert cfg is not None + assert cfg.pipeline == "default" # structure-less -> plain SDXL + assert cfg.restore_faces is False + assert cfg.unsharp == 0.0 # no smoothing pass -> no polish + assert cfg.humanize == 0.0 + assert cfg.min_resolution == 1024 + + def test_text_image_uses_controlnet(self, tmp_path): + img = np.full((300, 500, 3), 255, dtype=np.uint8) + cv2.putText(img, "INVOICE TOTAL 1234", (10, 170), cv2.FONT_HERSHEY_SIMPLEX, 2.0, (0, 0, 0), 4) + cfg = auto_config.plan(_write(img, tmp_path)) + assert cfg is not None + # Text creates edges above the structure-less floor -> controlnet preserves them. + assert cfg.pipeline == "controlnet" + + def test_face_routes_to_restore_and_controlnet_and_polish(self, tmp_path, monkeypatch): + monkeypatch.setattr(auto_config, "detect_face", lambda _img: True) + flat = np.full((300, 300, 3), 128, dtype=np.uint8) + cfg = auto_config.plan(_write(flat, tmp_path)) + assert cfg is not None + assert cfg.has_face + assert cfg.restore_faces + assert cfg.pipeline == "controlnet" + assert cfg.unsharp == 0.5 # smoothing pass ran -> polish on + assert cfg.humanize == 2.0 + + def test_text_signal_forces_controlnet_on_flat(self, tmp_path, monkeypatch): + monkeypatch.setattr(auto_config, "detect_text", lambda _img: True) + flat = np.full((300, 300, 3), 128, dtype=np.uint8) + cfg = auto_config.plan(_write(flat, tmp_path)) + assert cfg is not None + assert cfg.has_text + assert cfg.pipeline == "controlnet" + + +class TestReason: + def test_reason_summarizes_plan(self): + cfg = auto_config.AutoConfig( + pipeline="controlnet", + restore_faces=True, + unsharp=0.5, + humanize=2.0, + min_resolution=1024, + has_face=True, + has_text=False, + edge_density=0.05, + width=800, + height=600, + ) + r = cfg.reason + assert "controlnet" in r + assert "face" in r + assert "face-restore on" in r + assert "unsharp 0.5" in r