"""fullmovies.xxx — `/get_file` tube z IP-bound fpvcdn. Patrz _source_getfile.py. Ta sama platforma co hdporn.gg (`/get_file/8512/`). 2026-06-04 (DevTools + cross-IP): stary extractor zakładał „get_file IP-bound → 403 → force_proxy". Faktycznie get_file binduje fpvcdn do IP **fetchera** (mobile), więc oddajemy get_file NIEZRESOLWOWANY (mobile_direct, ZERO proxy) — telefon follow-uje 302 → fpvcdn z IP telefonu, gra. Pomijamy 4K/2160p (konsekwentnie time-outuje na fpvcdn ~30s; reszta gra ~1s). Bug 19866e9e: scena z TYLKO fullmovies+hdporngg nie grała (extractor nie był zarejestrowany). """ from __future__ import annotations from app.extractors._models import StreamSource from app.extractors.tubes import _source_getfile _BASE = "https://www.fullmovies.xxx" def extract(page_url: str, *, timeout: float = 30.0) -> list[StreamSource] | None: return _source_getfile.resolve(page_url, _BASE, timeout=timeout)