From 8f7039bbb36f39a9550f49e5b01408cf742ad88c Mon Sep 17 00:00:00 2001 From: WebStreamr <210764791+webstreamr@users.noreply.github.com> Date: Tue, 15 Jul 2025 21:25:14 +0000 Subject: [PATCH] feat(source): add PrimeWire --- package-lock.json | 393 ++- package.json | 2 + src/index.ts | 3 +- src/source/PrimeWire.test.ts | 37 + src/source/PrimeWire.ts | 106 + .../head-https:www.primewire.tflinksgo2jvy9 | 1 + .../head-https:www.primewire.tflinksgo4tLpZ | 1 + .../head-https:www.primewire.tflinksgo5Jc5z | 1 + .../head-https:www.primewire.tflinksgo79JMh | 1 + .../head-https:www.primewire.tflinksgoAhLrm | 1 + .../head-https:www.primewire.tflinksgoBodj0 | 1 + .../head-https:www.primewire.tflinksgoCumXE | 1 + .../head-https:www.primewire.tflinksgoCyrR4 | 1 + .../head-https:www.primewire.tflinksgoDX2MX | 1 + .../head-https:www.primewire.tflinksgoDhzVU | 1 + .../head-https:www.primewire.tflinksgoEJaZm | 1 + .../head-https:www.primewire.tflinksgoFAzyt | 1 + .../head-https:www.primewire.tflinksgoGQeD_ | 1 + .../head-https:www.primewire.tflinksgoHGxM6 | 1 + .../head-https:www.primewire.tflinksgoI4sKG | 1 + .../head-https:www.primewire.tflinksgoIsbCY | 1 + .../head-https:www.primewire.tflinksgoIzjO6 | 1 + .../head-https:www.primewire.tflinksgoKJZRh | 1 + .../head-https:www.primewire.tflinksgoLA0md | 1 + .../head-https:www.primewire.tflinksgoLBX09 | 1 + .../head-https:www.primewire.tflinksgoMORIX | 1 + .../head-https:www.primewire.tflinksgoPLWrd | 1 + .../head-https:www.primewire.tflinksgoPLj4s | 1 + .../head-https:www.primewire.tflinksgoPjiGd | 1 + .../head-https:www.primewire.tflinksgoPlx_D | 1 + .../head-https:www.primewire.tflinksgoQUTu9 | 1 + .../head-https:www.primewire.tflinksgoSCJH_ | 1 + .../head-https:www.primewire.tflinksgoSTTAR | 1 + .../head-https:www.primewire.tflinksgoU36xr | 1 + .../head-https:www.primewire.tflinksgoXrise | 1 + .../head-https:www.primewire.tflinksgoXwFmZ | 1 + .../head-https:www.primewire.tflinksgoY7aNA | 1 + .../head-https:www.primewire.tflinksgo_f2fA | 1 + .../head-https:www.primewire.tflinksgo_oh-_ | 1 + .../head-https:www.primewire.tflinksgoamuYo | 1 + .../head-https:www.primewire.tflinksgoc01dp | 1 + .../head-https:www.primewire.tflinksgocFpdE | 1 + .../head-https:www.primewire.tflinksgodltpm | 1 + .../head-https:www.primewire.tflinksgoeTdMh | 1 + .../head-https:www.primewire.tflinksgoeodg5 | 1 + .../head-https:www.primewire.tflinksgogum1X | 1 + .../head-https:www.primewire.tflinksgoi4Ils | 1 + .../head-https:www.primewire.tflinksgoiObvL | 1 + .../head-https:www.primewire.tflinksgolRJk8 | 1 + .../head-https:www.primewire.tflinksgole1S7 | 1 + .../head-https:www.primewire.tflinksgomlaaM | 1 + .../head-https:www.primewire.tflinksgooPkmy | 1 + .../head-https:www.primewire.tflinksgooVw_n | 1 + .../head-https:www.primewire.tflinksgopEVxr | 1 + .../head-https:www.primewire.tflinksgopLBKU | 1 + .../head-https:www.primewire.tflinksgorE5wr | 1 + .../head-https:www.primewire.tflinksgorLct3 | 1 + .../head-https:www.primewire.tflinksgotgcYa | 1 + .../head-https:www.primewire.tflinksgov5JPj | 1 + .../head-https:www.primewire.tflinksgowIpyb | 1 + .../head-https:www.primewire.tflinksgoyy0yS | 1 + ...imewire.tffilterstt12345678anddse9e0858ee3 | 594 ++++ ...imewire.tffilterstt18546730andds52247969c6 | 614 ++++ ...rimewire.tffilterstt9243946anddsacb98a6f32 | 614 ++++ ...pp-21205005105979fb964d17bf03570023.jsvsnd | 2 + .../PrimeWire/https:www.primewire.tflegal | 394 +++ ...ovie1334196-el-camino-a-breaking-bad-movie | 1747 +++++++++++ ...ire.tftv1423432-the-walking-dead-dead-city | 1342 ++++++++ ...-walking-dead-dead-city-season-2-episode-5 | 2687 +++++++++++++++++ .../__snapshots__/PrimeWire.test.ts.snap | 296 ++ src/source/index.ts | 1 + src/utils/Fetcher.ts | 2 +- src/utils/FetcherMock.ts | 10 +- 73 files changed, 8892 insertions(+), 8 deletions(-) create mode 100644 src/source/PrimeWire.test.ts create mode 100644 src/source/PrimeWire.ts create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo2jvy9 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo4tLpZ create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo5Jc5z create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo79JMh create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoAhLrm create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoBodj0 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCumXE create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCyrR4 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDX2MX create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDhzVU create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoEJaZm create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoFAzyt create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoGQeD_ create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoHGxM6 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoI4sKG create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIsbCY create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIzjO6 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoKJZRh create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLA0md create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLBX09 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoMORIX create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLWrd create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLj4s create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPjiGd create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPlx_D create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoQUTu9 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSCJH_ create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSTTAR create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoU36xr create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXrise create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXwFmZ create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoY7aNA create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_f2fA create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_oh-_ create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoamuYo create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoc01dp create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgocFpdE create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgodltpm create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeTdMh create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeodg5 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgogum1X create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoi4Ils create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoiObvL create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgolRJk8 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgole1S7 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgomlaaM create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooPkmy create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooVw_n create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopEVxr create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopLBKU create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorE5wr create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorLct3 create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgotgcYa create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgov5JPj create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgowIpyb create mode 100644 src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoyy0yS create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt12345678anddse9e0858ee3 create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt18546730andds52247969c6 create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt9243946anddsacb98a6f32 create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tfjsapp-21205005105979fb964d17bf03570023.jsvsnd create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tflegal create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tfmovie1334196-el-camino-a-breaking-bad-movie create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432-the-walking-dead-dead-city create mode 100644 src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432the-walking-dead-dead-city-season-2-episode-5 create mode 100644 src/source/__snapshots__/PrimeWire.test.ts.snap diff --git a/package-lock.json b/package-lock.json index 80051d2..40cff23 100644 --- a/package-lock.json +++ b/package-lock.json @@ -16,6 +16,7 @@ "express": "^5.1.0", "fetch-socks": "^1.3.2", "http-cache-semantics": "^4.2.0", + "jsdom": "^26.1.0", "lru-cache": "^11.1.0", "randomstring": "^1.3.1", "slugify": "^1.6.6", @@ -33,6 +34,7 @@ "@types/express": "^5.0.1", "@types/http-cache-semantics": "^4.0.4", "@types/jest": "^30.0.0", + "@types/jsdom": "^21.1.7", "@types/make-fetch-happen": "^10.0.4", "@types/node": "^22.15.3", "@types/randomstring": "^1.3.0", @@ -65,6 +67,25 @@ "node": ">=6.0.0" } }, + "node_modules/@asamuzakjp/css-color": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/@asamuzakjp/css-color/-/css-color-3.2.0.tgz", + "integrity": "sha512-K1A6z8tS3XsmCMM86xoWdn7Fkdn9m6RSVtocUrJYIwZnFVkng/PvkEoWtOWmP+Scc6saYWHWZYbndEEXxl24jw==", + "license": "MIT", + "dependencies": { + "@csstools/css-calc": "^2.1.3", + "@csstools/css-color-parser": "^3.0.9", + "@csstools/css-parser-algorithms": "^3.0.4", + "@csstools/css-tokenizer": "^3.0.3", + "lru-cache": "^10.4.3" + } + }, + "node_modules/@asamuzakjp/css-color/node_modules/lru-cache": { + "version": "10.4.3", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", + "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", + "license": "ISC" + }, "node_modules/@babel/code-frame": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.27.1.tgz", @@ -604,6 +625,116 @@ "@jridgewell/sourcemap-codec": "^1.4.10" } }, + "node_modules/@csstools/color-helpers": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@csstools/color-helpers/-/color-helpers-5.0.2.tgz", + "integrity": "sha512-JqWH1vsgdGcw2RR6VliXXdA0/59LttzlU8UlRT/iUUsEeWfYq8I+K0yhihEUTTHLRm1EXvpsCx3083EU15ecsA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT-0", + "engines": { + "node": ">=18" + } + }, + "node_modules/@csstools/css-calc": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/@csstools/css-calc/-/css-calc-2.1.4.tgz", + "integrity": "sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-color-parser": { + "version": "3.0.10", + "resolved": "https://registry.npmjs.org/@csstools/css-color-parser/-/css-color-parser-3.0.10.tgz", + "integrity": "sha512-TiJ5Ajr6WRd1r8HSiwJvZBiJOqtH86aHpUjq5aEKWHiII2Qfjqd/HCWKPOW8EP4vcspXbHnXrwIDlu5savQipg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "dependencies": { + "@csstools/color-helpers": "^5.0.2", + "@csstools/css-calc": "^2.1.4" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-parser-algorithms": "^3.0.5", + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-parser-algorithms": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/@csstools/css-parser-algorithms/-/css-parser-algorithms-3.0.5.tgz", + "integrity": "sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "@csstools/css-tokenizer": "^3.0.4" + } + }, + "node_modules/@csstools/css-tokenizer": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@csstools/css-tokenizer/-/css-tokenizer-3.0.4.tgz", + "integrity": "sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/csstools" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/csstools" + } + ], + "license": "MIT", + "engines": { + "node": ">=18" + } + }, "node_modules/@dabh/diagnostics": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@dabh/diagnostics/-/diagnostics-2.0.3.tgz", @@ -1644,6 +1775,18 @@ "pretty-format": "^30.0.0" } }, + "node_modules/@types/jsdom": { + "version": "21.1.7", + "resolved": "https://registry.npmjs.org/@types/jsdom/-/jsdom-21.1.7.tgz", + "integrity": "sha512-yOriVnggzrnQ3a9OKOCxaVuSug3w3/SbOj5i7VwXWZEyUNl3bLF9V3MfxGbZKuwqJOQyRfqXyROBB1CoZLFWzA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/node": "*", + "@types/tough-cookie": "*", + "parse5": "^7.0.0" + } + }, "node_modules/@types/json-schema": { "version": "7.0.15", "resolved": "https://registry.npmjs.org/@types/json-schema/-/json-schema-7.0.15.tgz", @@ -1773,6 +1916,13 @@ "dev": true, "license": "MIT" }, + "node_modules/@types/tough-cookie": { + "version": "4.0.5", + "resolved": "https://registry.npmjs.org/@types/tough-cookie/-/tough-cookie-4.0.5.tgz", + "integrity": "sha512-/Ad8+nIOV7Rl++6f1BdKxFSMgmoqEoYbHRpPcx3JEfv8VRsQe9Z4mCXeJBzxs7mbHY/XOZZuXlRNfhpVPbs6ZA==", + "dev": true, + "license": "MIT" + }, "node_modules/@types/triple-beam": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/@types/triple-beam/-/triple-beam-1.3.5.tgz", @@ -2392,6 +2542,15 @@ "node": ">=0.4.0" } }, + "node_modules/agent-base": { + "version": "7.1.4", + "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-7.1.4.tgz", + "integrity": "sha512-MnA+YT8fwfJPgBx3m60MNqakm30XOkyIoH1y6huTQvC0PwZG7ki8NacLBcrPbNoo8vEZy7Jpuk7+jMO+CUovTQ==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -3403,6 +3562,32 @@ "url": "https://github.com/sponsors/fb55" } }, + "node_modules/cssstyle": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/cssstyle/-/cssstyle-4.6.0.tgz", + "integrity": "sha512-2z+rWdzbbSZv6/rhtvzvqeZQHrBaqgogqt85sqFNbabZOuFbCVFb8kPeEtZjiKkbrm395irpNKiYeFeLiQnFPg==", + "license": "MIT", + "dependencies": { + "@asamuzakjp/css-color": "^3.2.0", + "rrweb-cssom": "^0.8.0" + }, + "engines": { + "node": ">=18" + } + }, + "node_modules/data-urls": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/data-urls/-/data-urls-5.0.0.tgz", + "integrity": "sha512-ZYP5VBHshaDAiVZxjbRVcFJpc+4xGgT0bK3vzy1HLN8jTO975HEbuYzZJcHoQEY5K1a0z8YayJkyVETa08eNTg==", + "license": "MIT", + "dependencies": { + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/data-view-buffer": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/data-view-buffer/-/data-view-buffer-1.0.2.tgz", @@ -3474,6 +3659,12 @@ } } }, + "node_modules/decimal.js": { + "version": "10.6.0", + "resolved": "https://registry.npmjs.org/decimal.js/-/decimal.js-10.6.0.tgz", + "integrity": "sha512-YpgQiITW3JXGntzdUmyUR1V812Hn8T1YVXhCu+wO3OpS4eU9l4YdD3qjyiKdV6mvV29zapkMeD390UVEf2lkUg==", + "license": "MIT" + }, "node_modules/dedent": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.6.0.tgz", @@ -5029,6 +5220,18 @@ "node": ">= 0.4" } }, + "node_modules/html-encoding-sniffer": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/html-encoding-sniffer/-/html-encoding-sniffer-4.0.0.tgz", + "integrity": "sha512-Y22oTqIU4uuPgEemfz7NDJz6OeKf12Lsu+QC+s3BVpda64lTiMYCyGwg5ki4vFxkMwQdeZDl2adZoqUgdFuTgQ==", + "license": "MIT", + "dependencies": { + "whatwg-encoding": "^3.1.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", @@ -5089,6 +5292,32 @@ "node": ">= 0.8" } }, + "node_modules/http-proxy-agent": { + "version": "7.0.2", + "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-7.0.2.tgz", + "integrity": "sha512-T1gkAiYYDWYx3V5Bmyu7HcfcvL7mUrTWiM6yOfa3PIphViJ/gFPbvidQ+veqSOHci/PxBcDabeUNCzpOODJZig==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.0", + "debug": "^4.3.4" + }, + "engines": { + "node": ">= 14" + } + }, + "node_modules/https-proxy-agent": { + "version": "7.0.6", + "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-7.0.6.tgz", + "integrity": "sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==", + "license": "MIT", + "dependencies": { + "agent-base": "^7.1.2", + "debug": "4" + }, + "engines": { + "node": ">= 14" + } + }, "node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", @@ -5532,6 +5761,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/is-potential-custom-element-name": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/is-potential-custom-element-name/-/is-potential-custom-element-name-1.0.1.tgz", + "integrity": "sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==", + "license": "MIT" + }, "node_modules/is-promise": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-4.0.0.tgz", @@ -6448,6 +6683,45 @@ "integrity": "sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==", "license": "MIT" }, + "node_modules/jsdom": { + "version": "26.1.0", + "resolved": "https://registry.npmjs.org/jsdom/-/jsdom-26.1.0.tgz", + "integrity": "sha512-Cvc9WUhxSMEo4McES3P7oK3QaXldCfNWp7pl2NNeiIFlCoLr3kfq9kb1fxftiwk1FLV7CvpvDfonxtzUDeSOPg==", + "license": "MIT", + "dependencies": { + "cssstyle": "^4.2.1", + "data-urls": "^5.0.0", + "decimal.js": "^10.5.0", + "html-encoding-sniffer": "^4.0.0", + "http-proxy-agent": "^7.0.2", + "https-proxy-agent": "^7.0.6", + "is-potential-custom-element-name": "^1.0.1", + "nwsapi": "^2.2.16", + "parse5": "^7.2.1", + "rrweb-cssom": "^0.8.0", + "saxes": "^6.0.0", + "symbol-tree": "^3.2.4", + "tough-cookie": "^5.1.1", + "w3c-xmlserializer": "^5.0.0", + "webidl-conversions": "^7.0.0", + "whatwg-encoding": "^3.1.1", + "whatwg-mimetype": "^4.0.0", + "whatwg-url": "^14.1.1", + "ws": "^8.18.0", + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + }, + "peerDependencies": { + "canvas": "^3.0.0" + }, + "peerDependenciesMeta": { + "canvas": { + "optional": true + } + } + }, "node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", @@ -6938,6 +7212,12 @@ "url": "https://github.com/fb55/nth-check?sponsor=1" } }, + "node_modules/nwsapi": { + "version": "2.2.20", + "resolved": "https://registry.npmjs.org/nwsapi/-/nwsapi-2.2.20.tgz", + "integrity": "sha512-/ieB+mDe4MrrKMT8z+mQL8klXydZWGR5Dowt4RAGKbJ3kIGEx3X4ljUo+6V73IXtUPWgfOlU5B9MlGxFO5T+cA==", + "license": "MIT" + }, "node_modules/object-inspect": { "version": "1.13.4", "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz", @@ -7346,9 +7626,9 @@ "license": "ISC" }, "node_modules/picomatch": { - "version": "4.0.2", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", - "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", + "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", "dev": true, "license": "MIT", "engines": { @@ -7453,7 +7733,6 @@ "version": "2.3.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", - "dev": true, "license": "MIT", "engines": { "node": ">=6" @@ -7732,6 +8011,12 @@ "node": ">= 18" } }, + "node_modules/rrweb-cssom": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/rrweb-cssom/-/rrweb-cssom-0.8.0.tgz", + "integrity": "sha512-guoltQEx+9aMf2gDZ0s62EcV8lsXR+0w8915TC3ITdn2YueuNjdAYh/levpU9nFaoChh9RUS5ZdQMrKfVEN9tw==", + "license": "MIT" + }, "node_modules/run-parallel": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", @@ -7846,6 +8131,18 @@ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", "license": "MIT" }, + "node_modules/saxes": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/saxes/-/saxes-6.0.0.tgz", + "integrity": "sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==", + "license": "ISC", + "dependencies": { + "xmlchars": "^2.2.0" + }, + "engines": { + "node": ">=v12.22.7" + } + }, "node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", @@ -8491,6 +8788,12 @@ "url": "https://github.com/sponsors/ljharb" } }, + "node_modules/symbol-tree": { + "version": "3.2.4", + "resolved": "https://registry.npmjs.org/symbol-tree/-/symbol-tree-3.2.4.tgz", + "integrity": "sha512-9QNk5KwDF+Bvz+PyObkmSYjI5ksVUYtjW7AU22r2NKcfLJcXp96hkDWU3+XndOsUb+AQ9QhfzfCT2O+CNWT5Tw==", + "license": "MIT" + }, "node_modules/synckit": { "version": "0.11.8", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.8.tgz", @@ -8619,6 +8922,18 @@ "node": ">=16" } }, + "node_modules/tr46": { + "version": "5.1.1", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-5.1.1.tgz", + "integrity": "sha512-hdF5ZgjTqgAntKkklYw0R03MG2x/bSzTtkxmIRw/sTNV8YXsCJ1tfLAX23lhxhHJlEf3CRCOCGGWw3vI3GaSPw==", + "license": "MIT", + "dependencies": { + "punycode": "^2.3.1" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/triple-beam": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/triple-beam/-/triple-beam-1.4.1.tgz", @@ -9155,6 +9470,18 @@ "node": ">= 0.8" } }, + "node_modules/w3c-xmlserializer": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/w3c-xmlserializer/-/w3c-xmlserializer-5.0.0.tgz", + "integrity": "sha512-o8qghlI8NZHU1lLPrpi2+Uq7abh4GGPpYANlalzWxyWteJOCsr/P+oPBA49TOLu5FTZO4d3F9MnWJfiMo4BkmA==", + "license": "MIT", + "dependencies": { + "xml-name-validator": "^5.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", @@ -9165,6 +9492,15 @@ "makeerror": "1.0.12" } }, + "node_modules/webidl-conversions": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-7.0.0.tgz", + "integrity": "sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=12" + } + }, "node_modules/whatwg-encoding": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/whatwg-encoding/-/whatwg-encoding-3.1.1.tgz", @@ -9186,6 +9522,19 @@ "node": ">=18" } }, + "node_modules/whatwg-url": { + "version": "14.2.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-14.2.0.tgz", + "integrity": "sha512-De72GdQZzNTUBBChsXueQUnPKDkg/5A5zp7pFDuQAj5UFoENpiACU0wlCvzpAGnTkj++ihpKwKyYewn/XNUbKw==", + "license": "MIT", + "dependencies": { + "tr46": "^5.1.0", + "webidl-conversions": "^7.0.0" + }, + "engines": { + "node": ">=18" + } + }, "node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", @@ -9452,6 +9801,42 @@ "node": "^14.17.0 || ^16.13.0 || >=18.0.0" } }, + "node_modules/ws": { + "version": "8.18.3", + "resolved": "https://registry.npmjs.org/ws/-/ws-8.18.3.tgz", + "integrity": "sha512-PEIGCY5tSlUt50cqyMXfCzX+oOPqN0vuGqWzbcJ2xvnkzkq46oOpz7dQaTDBdfICb4N14+GARUDw2XV2N4tvzg==", + "license": "MIT", + "engines": { + "node": ">=10.0.0" + }, + "peerDependencies": { + "bufferutil": "^4.0.1", + "utf-8-validate": ">=5.0.2" + }, + "peerDependenciesMeta": { + "bufferutil": { + "optional": true + }, + "utf-8-validate": { + "optional": true + } + } + }, + "node_modules/xml-name-validator": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-5.0.0.tgz", + "integrity": "sha512-EvGK8EJ3DhaHfbRlETOWAS5pO9MZITeauHKJyb8wyajUfQUenkIg2MvLDTZ4T/TgIcm3HU0TFBgWWboAZ30UHg==", + "license": "Apache-2.0", + "engines": { + "node": ">=18" + } + }, + "node_modules/xmlchars": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/xmlchars/-/xmlchars-2.2.0.tgz", + "integrity": "sha512-JZnDKK8B0RCDw84FNdDAIpZK+JuJw+s7Lz8nksI7SIuU3UXJJslUthsi+uWBUYOwPFwW7W7PRLRfUKpxjtjFCw==", + "license": "MIT" + }, "node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", diff --git a/package.json b/package.json index 5e19fb4..b3af09d 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "express": "^5.1.0", "fetch-socks": "^1.3.2", "http-cache-semantics": "^4.2.0", + "jsdom": "^26.1.0", "lru-cache": "^11.1.0", "randomstring": "^1.3.1", "slugify": "^1.6.6", @@ -55,6 +56,7 @@ "@types/express": "^5.0.1", "@types/http-cache-semantics": "^4.0.4", "@types/jest": "^30.0.0", + "@types/jsdom": "^21.1.7", "@types/make-fetch-happen": "^10.0.4", "@types/node": "^22.15.3", "@types/randomstring": "^1.3.0", diff --git a/src/index.ts b/src/index.ts index 8990842..8b0b276 100644 --- a/src/index.ts +++ b/src/index.ts @@ -5,7 +5,7 @@ import { v4 as uuidv4 } from 'uuid'; import winston from 'winston'; import { ConfigureController, ManifestController, StreamController } from './controller'; import { createExtractors, ExtractorRegistry } from './extractor'; -import { CineHDPlus, Cuevana, Eurostreaming, Frembed, FrenchCloud, KinoGer, MegaKino, MeineCloud, MostraGuarda, Movix, Source, StreamKiste, VerHdLink, VidSrc, VixSrc } from './source'; +import { CineHDPlus, Cuevana, Eurostreaming, Frembed, FrenchCloud, KinoGer, MegaKino, MeineCloud, MostraGuarda, Movix, PrimeWire, Source, StreamKiste, VerHdLink, VidSrc, VixSrc } from './source'; import { envGet, envIsProd, Fetcher, StreamResolver } from './utils'; const logger = winston.createLogger({ @@ -33,6 +33,7 @@ const sources: Source[] = [ // multi new VixSrc(fetcher), // EN + new PrimeWire(fetcher), new VidSrc(fetcher), // ES / MX new CineHDPlus(fetcher), diff --git a/src/source/PrimeWire.test.ts b/src/source/PrimeWire.test.ts new file mode 100644 index 0000000..a365acf --- /dev/null +++ b/src/source/PrimeWire.test.ts @@ -0,0 +1,37 @@ +import { createTestContext } from '../test'; +import { FetcherMock, ImdbId } from '../utils'; +import { PrimeWire } from './PrimeWire'; + +const ctx = createTestContext({ en: 'on' }); + +describe('PrimeWire', () => { + let handler: PrimeWire; + + beforeEach(() => { + handler = new PrimeWire(new FetcherMock(`${__dirname}/__fixtures__/PrimeWire`)); + }); + + test('handle non-existent movie gracefully', async () => { + const streams = await handler.handle(ctx, 'movie', new ImdbId('tt12345678', undefined, undefined)); + expect(streams).toHaveLength(0); + }); + + test('handle non-existent episode gracefully', async () => { + const streams = await handler.handle(ctx, 'series', new ImdbId('tt18546730', 99, 99)); + expect(streams).toHaveLength(0); + }); + + test('handle imdb dead city s2e5', async () => { + const streams = await handler.handle(ctx, 'series', new ImdbId('tt18546730', 2, 5)); + expect(streams).toMatchSnapshot(); + }); + + test('handle el camino', async () => { + const streams = await handler.handle(ctx, 'series', new ImdbId('tt9243946', undefined, undefined)); + expect(streams).toMatchSnapshot(); + + // Should be using the redirectUrlCache + const streams2 = await handler.handle(ctx, 'series', new ImdbId('tt9243946', undefined, undefined)); + expect(streams2).toMatchSnapshot(); + }); +}); diff --git a/src/source/PrimeWire.ts b/src/source/PrimeWire.ts new file mode 100644 index 0000000..fde3177 --- /dev/null +++ b/src/source/PrimeWire.ts @@ -0,0 +1,106 @@ +import crypto from 'crypto'; +import * as cheerio from 'cheerio'; +import { JSDOM } from 'jsdom'; +import { ContentType } from 'stremio-addon-sdk'; +import { Context, CountryCode } from '../types'; +import { Fetcher, getImdbId, Id, ImdbId } from '../utils'; +import { Source, SourceResult } from './types'; + +export class PrimeWire implements Source { + public readonly id = 'primewire'; + + public readonly label = 'PrimeWire'; + + public readonly contentTypes: ContentType[] = ['movie', 'series']; + + public readonly countryCodes: CountryCode[] = [CountryCode.en]; + + private readonly baseUrl = 'https://www.primewire.tf'; + + private readonly fetcher: Fetcher; + + private readonly redirectUrlCache = new Map(); + + public constructor(fetcher: Fetcher) { + this.fetcher = fetcher; + } + + public async handle(ctx: Context, _type: string, id: Id): Promise { + const imdbId = await getImdbId(ctx, this.fetcher, id); + + // We need any non-protected entrypoint to grab the app.js + const html = await this.fetcher.text(ctx, new URL('/legal', this.baseUrl)); + const appJsMatch = html.match(/src="(.*?app-.*\.js.*?)"/) as string[]; + const appJs = await this.fetcher.text(ctx, new URL(appJsMatch[1] as string, this.baseUrl)); + + const pageUrl = await this.fetchPageUrl(ctx, appJs, imdbId); + if (!pageUrl) { + return []; + } + + const pageHtml = await this.fetcher.text(ctx, pageUrl); + + let linksHtml = pageHtml; + if (imdbId.season) { + const episodeUrl = await this.fetchEpisodeUrl(pageHtml, imdbId); + if (!episodeUrl) { + return []; + } + + linksHtml = await this.fetcher.text(ctx, episodeUrl); + } + + // Yes, we are aware of the risks.. 😰 + const jsdom = new JSDOM(linksHtml, { runScripts: 'dangerously' }); + const scriptElement = jsdom.window.document.createElement('script'); + scriptElement.textContent = appJs; + jsdom.window.document.body.appendChild(scriptElement); + + const $ = cheerio.load(jsdom.window.document.documentElement.outerHTML); + + return Promise.all( + $(`a.go-link`) + .map((_i, el) => new URL($(el).attr('href') as string, this.baseUrl)) + .toArray() + .map(async (redirectUrl) => { + let targetUrl = this.redirectUrlCache.get(redirectUrl.href); + + if (!targetUrl) { + const headers = await this.fetcher.head(ctx, redirectUrl, { redirect: 'manual' }); + + targetUrl = new URL(headers['location'] as string); + this.redirectUrlCache.set(redirectUrl.href, targetUrl); + } + + return { countryCode: CountryCode.en, url: targetUrl }; + }), + ); + }; + + private readonly fetchPageUrl = async (ctx: Context, appJs: string, imdbId: ImdbId): Promise => { + const sha1SuffixMatch = appJs.match(/s\.value\+"(.*?)"/) as string[]; + + const ds = crypto.createHash('sha1') + .update(imdbId.id + sha1SuffixMatch[1]) + .digest('hex') + .slice(0, 10); + + const searchResults = await this.fetcher.text(ctx, new URL(`/filter?s=${encodeURIComponent(imdbId.id)}&ds=${encodeURIComponent(ds)}`, this.baseUrl)); + + const $ = cheerio.load(searchResults); + + return $('.index_item a') + .map((_i, el) => new URL($(el).attr('href') as string, this.baseUrl)) + .get(0); + }; + + private readonly fetchEpisodeUrl = async (pageHtml: string, imdbId: ImdbId): Promise => { + const $ = cheerio.load(pageHtml); + + return $(`div[data-id="${imdbId.season}"]`) + .children(`.tv_episode_item:nth-child(${imdbId.episode})`) + .children('a[href]') + .map((_i, el) => new URL($(el).attr('href') as string, this.baseUrl)) + .get(0); + }; +} diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo2jvy9 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo2jvy9 new file mode 100644 index 0000000..2fc29cc --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo2jvy9 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473f4e599188-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://bigwarp.cc/4tb37obzt6re","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=5gyYWzhG6RoXPZadikiDNxf2LVB4GTRf97%2Fq7l%2F4rPs%2Bw%2BJ7XDI1wWTDBCKe6fksZp%2FLgiisRcgK7laoz04XleXiRsaMJxIlIuK89uuUTbg%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSsiXd_8HIvwJH_uH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo4tLpZ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo4tLpZ new file mode 100644 index 0000000..00953f9 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo4tLpZ @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc467cae98d2af-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:28 GMT","location":"https://voe.sx/grsvpdbxvw3e","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Oei9GlhSFoCfGjGdjbIlEtZuGbefBQnI2SpMb%2FQKmFdSOeZ4l7IHkRM4psu8sRztZDJrnhBwj7yNQ2gNt443luKElavwCZJLLt66KnBXuRg%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQ4fXHdu7En4Qy1eD","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo5Jc5z b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo5Jc5z new file mode 100644 index 0000000..1aea43d --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo5Jc5z @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46a46e001cab-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:34 GMT","location":"https://vidmoly.me/w/g1ob8a8h5pc8","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=NHRf6%2BJCPWMVnVvi6%2Bz1FOuJf09NA582XTuP6BDVb3LIpRGFQ2pbMA1RnIszy4%2BZhE8RCPCBHmFMJUPkWlOdseinvF9J7YnWD%2BieHLRWuaY%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRQKr0B_XEi0StRKB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo79JMh b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo79JMh new file mode 100644 index 0000000..2b23049 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo79JMh @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b38c411e3e-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:36 GMT","location":"https://streamplay.to/m1j7zix6ny8u","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=OYxViKrvwZAsJ4lueS4nDHommDacGPxOutINVztY10cTni%2BOW96RXCPxf7grVWn2cKyfgfpRMD7fcIfNf1MvLyr6NKpuWJlvEeoOlBUDOu4%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRZOybtEOn98JQlOH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoAhLrm b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoAhLrm new file mode 100644 index 0000000..ea4ef41 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoAhLrm @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46ad19eb5c32-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:35 GMT","location":"https://dood.watch/d/sn87i3ru7plx","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=x%2BimEPmTu93YQLi7cK%2BINKzJRq7mbm8U%2FKGhNXzrUBEgAn4OMj5AY2dUTOfyinerKldozT%2Fj%2BkDlpUFVLO0gIx2kjLkGcatk1FH2oi4t\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRVWbP4rTqYARX0gD","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoBodj0 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoBodj0 new file mode 100644 index 0000000..1c4e1c2 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoBodj0 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473e7d06380d-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://filegram.to/erapbfgcdguq","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=8%2FH%2Bet%2BTfp%2BUVCn8V9Fse3u8uGcf35IZHi26n%2FUdCNBJPm2j33jE9ZdOkkNe1HqgGhn%2BewDxsv3J2f4rxvqEFSqqe0bQuawyQUOllOPDzvY%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSsEqs7coTosJRVWH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCumXE b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCumXE new file mode 100644 index 0000000..095c237 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCumXE @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47490d3a0487-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://dood.watch/d/9lw62yyosxc0","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=4ItmdOcd5ERSzaV2QVWeZybDkSG6xexuf3%2F24qrcLBivH0CvyevQbHu8fke%2B62BEuE9raMXCHTogf8Qv%2F8qHIeNmq%2BDmxLOeJuUEtrQgASk%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSyWnnefhGcIRnuwC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCyrR4 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCyrR4 new file mode 100644 index 0000000..05f45d3 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoCyrR4 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4745fd0d18d3-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://mixdrop.ag/f/ql0qrxnjb89nx8","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=unnBbmm0XCL7uFqEQQyxlRZsMaMKnco6N%2FFi9TmQAYyg%2B6xX5L0sV%2BisqRDpXrT4atkkAVWHWumzb3Cz5COQSsQgHeU8c2fw6W8wwoDCfA8%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSweDPq0yU3UF6Y0I","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDX2MX b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDX2MX new file mode 100644 index 0000000..187ac07 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDX2MX @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46a2aff6d9d6-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:34 GMT","location":"https://streamwish.to/s986lkdy8mb5","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ISQ2aIsQJwi1IbvN2%2BPYVUSBrSCnku6kgfIGLHGiS0DWsb22hKAfHTO3hbJPVqF6FizwC3vt1m7UL7pRCTcf8huwBMYOQDearA%2FqDXDIcAk%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRPGkYjeyH9UTP5WB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDhzVU b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDhzVU new file mode 100644 index 0000000..2e4fb5b --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoDhzVU @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46bdfc06383a-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:38 GMT","location":"https://dropload.io/ubaaot4b6pfw","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=5yPK2FXcyNZVo5AzI3YJlrp1AtwhoQZfQRyDhl1cvWzzewPVQpLsEV7K1jQN7f%2BNGqDoLLtJLrok8yCJ3FwfYL9xAQrDl5s5HKw%2FNlYW%2BPc%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRfbiGTeK5GkQ4tsC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoEJaZm b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoEJaZm new file mode 100644 index 0000000..626f3b5 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoEJaZm @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4681fd86e85c-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:28 GMT","location":"https://voe.sx/te40pmzra8du","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oDi3gPgbgwG%2BkuoMpp8hnQI%2FuyidGL16msBhDWDYUyfspEhFdOY%2BxSKBYWfIvIQjAkvxW4mPNsHj0EFvO%2Bkt10iDUrprOOK2gT4sMUHuF24%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQ7oQbwJziGkP_wMF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoFAzyt b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoFAzyt new file mode 100644 index 0000000..20e26bf --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoFAzyt @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47475cc67093-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://voe.sx/xwhvakkexuob","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=SVemVfANoN2jxITCoJauFQoMSC7ctuwOYUyfVIOU2dEgZYnZHhAyNBaDcS8lzU7qRfLHan1GJGnQmpdvjZVH3JQisw5NNmbxfCmnXYGvG%2BI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSxSUatnrz1URY6gD","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoGQeD_ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoGQeD_ new file mode 100644 index 0000000..fba39b7 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoGQeD_ @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46a10c5fd29a-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:33 GMT","location":"https://streamwish.to/h9p9qqgpq2lw","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=sEHmXhBfhwfJ%2FE7gX79ziLnIgS6P6NUnv7mc74Xt2ISVfgw%2Bshi7HTGdU8u1qe7xepr0bSLxI0lepvBFzp1qs6XAicx1uRR02N0aYuCtA7M%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJROLgQ8U4USERMiwE","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoHGxM6 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoHGxM6 new file mode 100644 index 0000000..d8a9af9 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoHGxM6 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473eef4665dc-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://filegram.to/6yuyz0dgqu05","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=3muTvblqLG7maGiMni%2FrgtfO2xn5XEWFCnLfQbcrcGeLnbwIE3OVCRRI6up4zlP2fRJhIlAvbdHwNo54qaJjk2mY%2BilQw3BPtvVAH3%2BJpvc%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSsQ53lemcXQPpqcF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoI4sKG b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoI4sKG new file mode 100644 index 0000000..29d3937 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoI4sKG @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b489518edc-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:37 GMT","location":"https://streamplay.to/yrkzvpayg27o","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=%2FCXc0pTKxwQRcix%2FSKa5LdkFo34GNim7fz0w%2FH6q%2FWJt%2BpSRZq1SVEMe0f7y3QgGwj6884ZbNh41WVYKrBANq8KoINOjX2BrGTijRHh9BFM%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRZz1Xv9wk30M312G","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIsbCY b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIsbCY new file mode 100644 index 0000000..96e9234 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIsbCY @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4749dca55d49-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://streamtape.com/v/qMVMPa49M1hz8BR/El.Camino.A.Breaking.Bad.Movie.2019.1080p.WEBRip.x264_YTS.LT.mp4","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=u8c4VOK%2B5b7K%2FvC%2FEQCBIXg9nL%2B%2BJ49WvsK0WHVpDFMPMl319MqSvuy2%2B%2BYcDcgO6DaQnuqkqPxNwk7kY0NaRod%2BlA8MhP9ZdJQqBGm9I0Y%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSyzsJBi41JoRnvYC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIzjO6 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIzjO6 new file mode 100644 index 0000000..e60fed1 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoIzjO6 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473bbf0c9207-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:58 GMT","location":"https://savefiles.com/i0bj9gazequy","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=sCRxAyfoxaMYOvcZYCwSOEGdjpIf9euxpFP70UKzQx3lfSDt52CFE5JkLU%2FMsI5HpZ1%2Fu4ZqQuq%2B0gmXl6pxYirR6WuJ%2B62osfWi0HgSD6g%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSqmLeGR0CqIQBIAF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoKJZRh b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoKJZRh new file mode 100644 index 0000000..24db738 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoKJZRh @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc462dcdf95c3e-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:15 GMT","location":"https://mixdrop.ag/f/q1pz4k94uxxkgvo","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=BSVjmxdRUalcx5mqZlu0ISva%2B2L4OnqxIDeGmar7bLa%2F4doqwy6MbvTX8kl9gELzVFOdArohl6sUXw6m0PcDeLfG%2B5yC7FT7Z8Huc9bO\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQJebsnpj3GQJP4aH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLA0md b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLA0md new file mode 100644 index 0000000..3976939 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLA0md @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4670ba9a1c22-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:26 GMT","location":"https://mixdrop.ag/f/nlpj3q3ran17rv","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jFaMeyX6xColjjQ0Jpe%2BZCoqtpeA5PsgDgIZa%2FIwfW6uU4gfmXVC36m5rHW1JAtRB5b%2BLwUCv5Y5dywf7gp6irg%2BwLuduhs%2BvmKbKCTu%2F%2FQ%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQxWGjPvYddQQ4JqC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLBX09 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLBX09 new file mode 100644 index 0000000..d1cc02a --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoLBX09 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4740291cdc52-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://bigwarp.cc/u66q6mybilfa","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=bzlrVEIVeiL4CIrFrWfqE7kctzj8EM6EAcha6R85wQKJENOIOTEZXvKKj35WXFwty05o%2BqZCZi8RZZxhGN9AHyfXw8fjOAojucOVI2lymXI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSs_rdZgl_vYNHvmG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoMORIX b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoMORIX new file mode 100644 index 0000000..ff9f1a0 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoMORIX @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473d5da4b84a-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:58 GMT","location":"https://luluvdoo.com/2lyf7xx54140","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=2M9%2F7XqrT1FHDP0OlUdQFWFJ4V3uWAbVfDYwMpz5s8kqxwLdjNmHMmZeKTEY9iIBBgAt6vJ71n4qUHhDhrhzlRtOptkhz1m%2B7DHouubMyV8%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSrU_9_9GkgARnpIC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLWrd b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLWrd new file mode 100644 index 0000000..202b550 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLWrd @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46776a7279fb-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:27 GMT","location":"https://mixdrop.ag/f/9wvz9gp3b3q1llk","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=dqCl0IkFttFT%2B6aePVgFAORMf%2BaALd6iCR%2BArdpg8aZZm%2BIXyU%2BYSige8cqiPjMNlViRyD5nXZUieD%2Bc%2FmOGlzS%2F%2Bdt4rtuYiYsKs1%2BUTtY%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQ1UGTjnUq8AQqsgE","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLj4s b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLj4s new file mode 100644 index 0000000..8224bba --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPLj4s @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473fcb545d91-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://bigwarp.cc/aazhpuex9ppj","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=BHakRP6jd5L9UP0XLzYomDy5GW97llMYO1JzKs5EgB8yKNTEVsP3iSRjN52BEOgUmiP3b66CdaaZgHXuwtQNlHyU4EYOEgwRZO2mj4a8648%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSsy6MbFzwOoTRFuB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPjiGd b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPjiGd new file mode 100644 index 0000000..9be6523 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPjiGd @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46bfdd386934-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:38 GMT","location":"https://savefiles.com/dkq2hy8nt1s8","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ucKMqLnR20U5Q4j8rZwFDE1ZeRYm%2FwdGGoWIfva1kYOgLoFbLdysnS2SCTRTxJ%2BTp1%2BRxtCjroqpmY3fEm29Y1O3Vt%2B8NrmufcoETJm%2F\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRgl2CShwleoQAOcF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPlx_D b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPlx_D new file mode 100644 index 0000000..e052c75 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoPlx_D @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4748c81dd9d0-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://dood.watch/d/05fm25orfeux","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=PFARCs%2FIIo1EPIn4lE9XFUIURemgXOOdRJFOOpxGnkXIuEs0XhWKcCiQQMTOg4FofqzFya3RueaX2hKFvghmtT5RoT%2BAqFXeT9emcTeauRw%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSyGzlURJMAcRNqaE","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoQUTu9 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoQUTu9 new file mode 100644 index 0000000..07e98f2 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoQUTu9 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473c8b552954-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:58 GMT","location":"https://savefiles.com/tsbt84uhcvnv","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=fXX5ORmNULY27LDHFWC4sBIMWw76zoW1lM6Cp8mt4Ph8kmEdWctKLOz7tkccj1xUVhU0BRlsNHkP6vSWLws5XX0fiDeL4sumhtQ3meN3QLA%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSq4FLfFMz5UQBIIF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSCJH_ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSCJH_ new file mode 100644 index 0000000..6443993 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSCJH_ @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46beee5adc86-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:38 GMT","location":"https://dropload.io/boj6hx5v0j96","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=NlkyCEF754YzTamvaEvJRxoO2%2BhBCDy8JwbOxS9AI037X8KuCVDBqtjr0yYAj2WhvGrzCtVzh4fKNFX6If0AptFTV2Exxtp8E1xxkdLlPM8%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRf9OTMRXmL4Std6B","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSTTAR b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSTTAR new file mode 100644 index 0000000..35fd6fb --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoSTTAR @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc469aebe865a3-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:32 GMT","location":"https://filelions.to/f/fpru8wthtsf4","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=nar2YDmTznyi4K6polH61kRxhEnsB0%2FmNnsF8L7LpDx%2FU5TpA9AEy0eogbNU9oBY1r9hCUzgPBuNdfED3ihrC3aBH0S6ihFGYVcGBJ%2FYvOE%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRKgFN8NY5d4QzB6D","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoU36xr b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoU36xr new file mode 100644 index 0000000..4fbf3e8 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoU36xr @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4695eec4d294-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:32 GMT","location":"https://filelions.to/f/odssr9dyjx5n","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=77uweaf4INQUq%2FOLL7SD8L08beFnVcsNulNYAFyxVE%2Bj%2B%2FOILafJQAvBtC3%2FXtayXNYcEiDCXxmGpRHX0tga30Qlb%2B5E4%2F7Sw1LDHQ4kO%2BM%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRHgmIq2cHxsNGpQG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXrise b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXrise new file mode 100644 index 0000000..f83f7d8 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXrise @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473cf9d13a8b-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:58 GMT","location":"https://luluvdoo.com/nrcy0m01ce37","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=vBLbFME9G8j9P%2FDGG87hFHujqJomNBQsWQkyGZZP1mcAlCN0lJXAL%2FjgH0VI2S8NxZ4xEj9ncnzIpTZPDhnMNvvVdNYiIinCyBwLLR6CTys%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSrIERqflU98JRVKH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXwFmZ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXwFmZ new file mode 100644 index 0000000..5db45a6 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoXwFmZ @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47458f858f3f-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://mixdrop.ag/f/2bnmi","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=FwP9mKpPkJ1LgOsM%2B4632cMENRt0HJHmb0brgnUG2XtP1j1rP10birAHWrRcP4I8DpeUdX1%2F8nFcKcawBSoXXH60576rxvcNwZGh%2FlSY3Ys%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSwRI2pjzONoF6YqI","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoY7aNA b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoY7aNA new file mode 100644 index 0000000..dc64dcd --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoY7aNA @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46aa1d5cd265-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:35 GMT","location":"http://vidmoly.me/w/okcwblnaqw3t","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=MPbBv9X1o0R5AUshMG9UG3imZT9tkCGfalG7af%2BYN%2FVVIPYO5VWK5CK%2Ba82GVK6l4wAfT8XTZTvkMKB3bFuLqAAGyvmF%2BP6q3aPaacF9JpI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRTjlFma3WxoRmoGC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_f2fA b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_f2fA new file mode 100644 index 0000000..4555470 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_f2fA @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc474a4e944daa-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:01 GMT","location":"https://streamtape.com/v/6QLoLq0O8DtObX","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=VetlSO4eTEkuDVW%2F7uXQuDBeE9TsMzid%2Fvkngehc%2F%2BuKZHo00sRWks3bysCM8EVV4NJCrjiREy4jaJr4RideDjmlk1OHO%2FXzCK5kuZmNE8A%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSzB71uHjv2MJICgH","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_oh-_ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_oh-_ new file mode 100644 index 0000000..eb87f6b --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgo_oh-_ @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46a88fb991e3-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:35 GMT","location":"https://vidmoly.me/w/awjd3z0t0i9l","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=v7%2FkU9CoZk0MiSykjeWpG4aSDasJWf%2FzO9QNpzvTnbN5Ff1w8ihZNR4AUxg5pXwTEIagjym2AJtUnMNACSeOSxc568EWXpk8lkhuGZluWME%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRSoJL1M-uVIQ4ieC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoamuYo b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoamuYo new file mode 100644 index 0000000..a43b31e --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoamuYo @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc468749d41fad-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:29 GMT","location":"https://voe.sx/y8lrmf2t7jhp","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=TLOyPNHzk0W2BsQT0HJVbfRQDSzReIO%2FgtOfXuQs43fACZWh5kZ7Ry%2Bda4LM0ZsursBAhMVfbYCxQ6yoSGFKxkP%2FpmlR8yBnlEktGhoW46o%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJQ-yBvaKZeXUStBMB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoc01dp b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoc01dp new file mode 100644 index 0000000..491e0f4 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoc01dp @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b56e41d279-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:37 GMT","location":"https://streamtape.com/v/Ap0GJoXglaFbqK/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv.mp4","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oJXs4pMqnPCFQj6qyYHkfJ%2F12t43Nbp523e%2FO2iW2QMgxi%2B%2FhIpRix9x3CZu4NW8Npqra5ktFEIO8gijhezQIZSopOeL9YtfV9tUtt0oOKE%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRaRTUrmlcSIQAIyF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgocFpdE b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgocFpdE new file mode 100644 index 0000000..19917b7 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgocFpdE @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4746aa499bac-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://voe.sx/ysimllytd3zo","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=vHs%2BRva37rHuGqYGlVk3MxKO56R1FRWRDmQESYVvMI6aY4D6qRkS0eGPadp91QSIj%2FBdPDl3Y%2F7INW4sEGtSYHH2QZmS9W0pk3RXeHQxlec%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSxGKCCBU8BgM4smG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgodltpm b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgodltpm new file mode 100644 index 0000000..8664137 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgodltpm @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4749782ed2b6-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://dood.watch/d/j2pa25q11pdu","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=a8TqgcrZ%2F%2FRzCjhgDXK1omT6R37nGdni8uIr6CZCPECbCr%2F7J1iqqwmhMYlsvxq5gX1At5o5uIV7YzxWInbDFp5mFvrr7zC%2FcZBFsIh5Mcw%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSyisR6Eu5f4RnvCC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeTdMh b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeTdMh new file mode 100644 index 0000000..32be76c --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeTdMh @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b65db81cbf-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:37 GMT","location":"https://streamtape.com/v/g3dQvLvy9QsJqo/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv.mp4","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=jHjsPybtawd1QYbxbi4SV%2BY5SMHatLjQC%2BIcQalREh5WFO68gdI1JMSAJN0S4g9nbSN7m%2F4YncgZPXbwTh%2BMKTfQ88Swv0oyDJGffL0secI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRa2lAKg41aYNG2IG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeodg5 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeodg5 new file mode 100644 index 0000000..54bdb12 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoeodg5 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473e2e8bd28d-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://filegram.to/6q8gctbf79gc","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=JQb0CFM%2FmjL9BGHQxZckq5W6rlBci4JQP%2FQ0iFF8SL8s89nTCg%2Fk%2B9ufOtc7NcFA0wyYaN%2BSTKWOQhhU9UAH5apeS%2Flv2iroaB%2FelK5Un9o%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSryypjcnmDsTRFIB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgogum1X b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgogum1X new file mode 100644 index 0000000..6658547 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgogum1X @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46af6c51d264-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:36 GMT","location":"https://dood.watch/d/1qfuy5yiq4r6","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=A1kh%2Bx%2BxcHl7XY9KXaReYdS7ueW6s7xTTXJnAFm0GU10ksQOKqS5hCqVYbq%2FUZKAg4VCz4sF4MIUe%2F7pQUd8ayXKGsk2qvfdZ%2FyE35JSasM%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRWu9Lu_HYA8RMp0E","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoi4Ils b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoi4Ils new file mode 100644 index 0000000..09326a6 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoi4Ils @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46aea9a9d232-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:36 GMT","location":"https://dood.watch/d/8odyvc9bre16","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=pCM3OTFlEWGuQp4GXCGPc%2FuSTdkWDtf3oGT%2FdAIfk5bxgXbZxrT9G3nvi%2BFkXCKKofxTnWkEYtVfrCVN1k68UiLstbOj2lmyfrvEVZl8sDQ%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRWPfIGwQS_8NGy8G","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoiObvL b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoiObvL new file mode 100644 index 0000000..b19c3d3 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoiObvL @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b1a8109764-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:36 GMT","location":"https://streamplay.to/qyn6mtz6w3sr","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=yO2AnTTdEYjLwdVPx9RAiB55dWoONCn%2Fku9SrIvNlPRayaDfwdt1t1KX4CRA6PcJ4qc4loQBizus3hdQSsPZMHnqlLZ5HHqNvmpPCzyZaXI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRYF-P-ScsuMNG0SG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgolRJk8 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgolRJk8 new file mode 100644 index 0000000..5ccbe1a --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgolRJk8 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46bc9ace3a5c-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:38 GMT","location":"https://filemoon.sx/d/ftowmfa7f0ge/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ZH%2BBgQG4VecQ9%2BoXr8%2BraUNzAsc%2BqHl9vB0mMj1Ci0Fwz0h7VktVb2pWTmQH7awvfzBXZQLzw1XVR9mmLvCuVp%2F%2BVWP%2FQkba3K4oIs76Ajk%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJReny9dyczg8RmxIC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgole1S7 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgole1S7 new file mode 100644 index 0000000..f61705e --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgole1S7 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46912b0c9b8c-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:31 GMT","location":"https://filelions.to/f/0i0j0qz5o478","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=dgmYUGXnQNLw62slFffYbpvS59JGwDDWZCaxgLHlz5SDh2PEOXdE49D9Z%2BLPLUuqbis6jln88GR3FrwbLXAqOmKYcVU8P9yBgqul7yLGlC4%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJREudp98ClkwM3lyG","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgomlaaM b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgomlaaM new file mode 100644 index 0000000..f23deef --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgomlaaM @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc473dbaa45d4a-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:59 GMT","location":"https://luluvdoo.com/d/au00sj11vqku","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ouY%2FLsbnE7shX5HWoKBRZU5oSyypH9CPIkn%2BylmC3BgAXNxnFAnpWUmwgWG40jiDI8VR3gXfX9i1cam%2FuCIHoi%2BTLLp8%2BooYdJYVQV7OKnw%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSrmlkZThJ-4RY1GD","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooPkmy b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooPkmy new file mode 100644 index 0000000..1cf8547 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooPkmy @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46ba5f0e9f19-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:38 GMT","location":"https://filemoon.sx/d/8wllnog0cyl7","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=9YLR3%2FR%2BQMZbEDdcM0GJp9wnctSvZOIyb2TPA%2B5FwrvOXq63bBLfie8%2B94%2BYOn9PlksRWP3%2FFADz2rg0AmX16jgk8Qx8sQ%2FEl22XaVp4wLc%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRdhcrWw311wDK6SJ","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooVw_n b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooVw_n new file mode 100644 index 0000000..14fef55 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgooVw_n @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc474879cbdbc9-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://streamwish.to/09q73jf6t6jw","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=zsxdtF9385b4tDWq1uj4bfTQJB0Gndrd7k5TJSMjj6DPg4ECpDHaLn645c2uVWJ699MXiPb5Bj4W0krbhczXwshWfZGxWusijHMOmPspr6U%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSx8HQ2xiU3kQ0J8D","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopEVxr b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopEVxr new file mode 100644 index 0000000..baa3af4 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopEVxr @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc4747b9eebbdf-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://filelions.to/f/wayeo7l1cw7d","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=MSNbus1ePqRmkOcGp%2F9vgGWeuovIpZg5U%2FqRwuM%2FhNTWr%2F1lDBt7Iet6NwPOh4I4EE2pyXX3WX%2FjI1Clmie7zBbif6bmAnnmNQQ3LBkb0GY%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSxjF-Hiyta4TRKKB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopLBKU b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopLBKU new file mode 100644 index 0000000..1c75a30 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgopLBKU @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47452f80365d-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://mixdrop.ag/f/4njk6691b1k60d","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=kP%2FZH9lBi%2FelpV9uubKUPL9faizE4x2twyhlQV7KhH1VuXWyx8EaNP3hNEABoo53cy0wH3u%2FSZEmJYc5dOLMxTCL1cbyQ5eSKAFje6D3k6o%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSv_7_ikXvygSuZ6B","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorE5wr b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorE5wr new file mode 100644 index 0000000..3a3bd11 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorE5wr @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47464d90dbf4-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://voe.sx/paqi7qqku3zi","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=ugD59LLu1qpATVfR%2BMRCMrvKf86zK9zc%2B1s1V75nWgPddxjAfGvbGYqBjFsc25urqhuNPwHmBsyvD1sDhAPxGMuOJmAN5rd3H0xqmJFMhBc%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSwp-rhbm1oERY5qD","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorLct3 b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorLct3 new file mode 100644 index 0000000..3554d00 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgorLct3 @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc47482f30e537-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:16:00 GMT","location":"https://filelions.to/f/bv4b7tl9u1ij","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=YEbItaWKm0AAI4jNOtD2nlZFh90N%2B%2FgrjFvQ0AYfd2NO2AoHfuNMXoJXZ23Gj%2F%2BnzfW0zsPi0%2BsmgCxM0nhGCeVtc%2FUeyrc4b3RO28lR7NI%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJSxwxu5-HJgAQ5oUC","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgotgcYa b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgotgcYa new file mode 100644 index 0000000..3470395 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgotgcYa @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46a66c301e4a-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:34 GMT","location":"http://vidmoly.me/w/46bi0sec0966","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=Em2TbpempLntaXDvhAd2qNc8esGkwtQ4fChilqbuqPvrRdkcJdJeairLjyR0G%2BwnDgOme7%2BEvbyg3QGNb%2FaQVt1kg8nZm4k%2B5oz3DfvcMJw%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRRnUGz7uCIURMl2E","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgov5JPj b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgov5JPj new file mode 100644 index 0000000..c576efc --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgov5JPj @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc468c5e9ddbfb-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:30 GMT","location":"https://filelions.to/f/eqmzrkv5kf5s","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=oFT21NbVrSfVNEPSesG2GMtwGV093RFFf0lKaBr%2FIX2WtkHHxbMMKulUWpCHfgx3RfC88PNxXNgfMHzjf5jVVBg4%2BvNnfdTMQHD5CJFJbz8%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRBy_eq-uP7kP_0qF","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgowIpyb b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgowIpyb new file mode 100644 index 0000000..0c6acbe --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgowIpyb @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc469f5ebd9b2e-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:33 GMT","location":"https://streamwish.to/jult1lcvqjlt","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=1pP3m9Fc1mYB8zujwxiy0cdBpqsTLw34uUa%2BEFgLoXyn0dAtmy203Mx3AEIpv208MwJenv1xDMH4OKt7MPOfwTx125faUZlUa2S0j0St\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRNHjAj2ZiX0TP3QB","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoyy0yS b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoyy0yS new file mode 100644 index 0000000..e95f5fd --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/head-https:www.primewire.tflinksgoyy0yS @@ -0,0 +1 @@ +{"alt-svc":"h3=\":443\"; ma=86400","cache-control":"max-age=0, private, must-revalidate","cf-cache-status":"DYNAMIC","cf-ray":"95fc46b08a9d3410-FRA","connection":"close","content-type":"text/html; charset=utf-8","cross-origin-window-policy":"deny","date":"Tue, 15 Jul 2025 21:15:36 GMT","location":"https://dood.watch/d/reslxv9siz41","nel":"{\"report_to\":\"cf-nel\",\"success_fraction\":0.0,\"max_age\":604800}","report-to":"{\"group\":\"cf-nel\",\"max_age\":604800,\"endpoints\":[{\"url\":\"https://a.nel.cloudflare.com/report/v4?s=BV%2B1STxuaeGePRxlFA9rhSbb0H5dYczNhgc1CSZLOIURIAhFvehhm1iRdfv%2BK3BDd%2FMkuYcrV0n%2FY0g%2Fzud0dekrmyPUZX22GPQ17UKHMp8%3D\"}]}","server":"cloudflare","x-content-type-options":"nosniff","x-download-options":"noopen","x-frame-options":"SAMEORIGIN","x-permitted-cross-domain-policies":"none","x-request-id":"GFKJRXZwfbKQ9WsStW0B","x-xss-protection":"1; mode=block"} \ No newline at end of file diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt12345678anddse9e0858ee3 b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt12345678anddse9e0858ee3 new file mode 100644 index 0000000..2bfa5fa --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt12345678anddse9e0858ee3 @@ -0,0 +1,594 @@ + + + + + + + + + +Movies and TV Shows matching "tt12345678" | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + +
+ +

+Movies and TV Shows matching "tt12345678" +

+
+
+ + +
+ +
+ +
+Reset +
+ +
+More +
+Search Term: +Year: + + + to + + + +Rating: + + + to + + + +Cast: +Crew: +Company: +Country: +
+
+ +
+Direction +
+ +
+
+ + +
+Sort +
+ +
+
+ + +
+Genre +
+Mode: + +
+
+ +
+Streaming +
+ +
+
+ +
+Type +
+ +
+
+ +
+
+
+ + + + +
+
+
+ + + + + + +
+
+ + +
+ + +
+ + + + + + +
+ +
+ + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt18546730andds52247969c6 b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt18546730andds52247969c6 new file mode 100644 index 0000000..5b35fdf --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt18546730andds52247969c6 @@ -0,0 +1,614 @@ + + + + + + + + + +Movies and TV Shows matching "tt18546730" | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + +
+ +

+Movies and TV Shows matching "tt18546730" +

+
+
+ + +
+ +
+ +
+Reset +
+ +
+More +
+Search Term: +Year: + + + to + + + +Rating: + + + to + + + +Cast: +Crew: +Company: +Country: +
+
+ +
+Direction +
+ +
+
+ + +
+Sort +
+ +
+
+ + +
+Genre +
+Mode: + +
+
+ +
+Streaming +
+ +
+
+ +
+Type +
+ +
+
+ +
+
+
+ + +
+ + Watch The Walking Dead: Dead City +

The Walking Dead: Dead City
(2023)

+
+ +
+
+
    +
  • Current rating.
  • +
  • +
+
+
+ +
+ info +
+ +
+ + +
+
+
+ + + + + + +
+
+ + +
+ + +
+ + + + + + +
+ +
+ + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt9243946anddsacb98a6f32 b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt9243946anddsacb98a6f32 new file mode 100644 index 0000000..304cbc6 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tffilterstt9243946anddsacb98a6f32 @@ -0,0 +1,614 @@ + + + + + + + + + +Movies and TV Shows matching "tt9243946" | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + +
+ +

+Movies and TV Shows matching "tt9243946" +

+
+
+ + +
+ +
+ +
+Reset +
+ +
+More +
+Search Term: +Year: + + + to + + + +Rating: + + + to + + + +Cast: +Crew: +Company: +Country: +
+
+ +
+Direction +
+ +
+
+ + +
+Sort +
+ +
+
+ + +
+Genre +
+Mode: + +
+
+ +
+Streaming +
+ +
+
+ +
+Type +
+ +
+
+ +
+
+
+ + +
+ + Watch El Camino: A Breaking Bad Movie +

El Camino: A Breaking Bad Movie
(2019)

+
+ +
+
+
    +
  • Current rating.
  • +
  • +
+
+
+ +
+ info +
+ +
+ + +
+
+
+ + + + + + +
+
+ + +
+ + +
+ + + + + + +
+ +
+ + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tfjsapp-21205005105979fb964d17bf03570023.jsvsnd b/src/source/__fixtures__/PrimeWire/https:www.primewire.tfjsapp-21205005105979fb964d17bf03570023.jsvsnd new file mode 100644 index 0000000..b1355dc --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tfjsapp-21205005105979fb964d17bf03570023.jsvsnd @@ -0,0 +1,2 @@ +/*! For license information please see app.js.LICENSE.txt */ +!function(e){var t={};function n(r){if(t[r])return t[r].exports;var i=t[r]={i:r,l:!1,exports:{}};return e[r].call(i.exports,i,i.exports,n),i.l=!0,i.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var i in e)n.d(r,i,function(t){return e[t]}.bind(null,i));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=29)}([function(e,t,n){var r;!function(t,n){"use strict";"object"==typeof e.exports?e.exports=t.document?n(t,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return n(e)}:n(t)}("undefined"!=typeof window?window:this,(function(n,i){"use strict";var o=[],a=Object.getPrototypeOf,s=o.slice,l=o.flat?function(e){return o.flat.call(e)}:function(e){return o.concat.apply([],e)},u=o.push,c=o.indexOf,f={},d=f.toString,p=f.hasOwnProperty,h=p.toString,m=h.call(Object),v={},g=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType&&"function"!=typeof e.item},y=function(e){return null!=e&&e===e.window},b=n.document,w={type:!0,src:!0,nonce:!0,noModule:!0};function _(e,t,n){var r,i,o=(n=n||b).createElement("script");if(o.text=e,t)for(r in w)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function k(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?f[d.call(e)]||"object":typeof e}var x=/HTML$/i,E=function(e,t){return new E.fn.init(e,t)};function S(e){var t=!!e&&"length"in e&&e.length,n=k(e);return!g(e)&&!y(e)&&("array"===n||0===t||"number"==typeof t&&t>0&&t-1 in e)}function C(e,t){return e.nodeName&&e.nodeName.toLowerCase()===t.toLowerCase()}E.fn=E.prototype={jquery:"3.7.0",constructor:E,length:0,toArray:function(){return s.call(this)},get:function(e){return null==e?s.call(this):e<0?this[e+this.length]:this[e]},pushStack:function(e){var t=E.merge(this.constructor(),e);return t.prevObject=this,t},each:function(e){return E.each(this,e)},map:function(e){return this.pushStack(E.map(this,(function(t,n){return e.call(t,n,t)})))},slice:function(){return this.pushStack(s.apply(this,arguments))},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},even:function(){return this.pushStack(E.grep(this,(function(e,t){return(t+1)%2})))},odd:function(){return this.pushStack(E.grep(this,(function(e,t){return t%2})))},eq:function(e){var t=this.length,n=+e+(e<0?t:0);return this.pushStack(n>=0&&n+~]|"+P+")"+P+"*"),U=new RegExp(P+"|>"),B=new RegExp(M),F=new RegExp("^"+D+"$"),q={ID:new RegExp("^#("+D+")"),CLASS:new RegExp("^\\.("+D+")"),TAG:new RegExp("^("+D+"|[*])"),ATTR:new RegExp("^"+I),PSEUDO:new RegExp("^"+M),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+P+"*(even|odd|(([+-]|)(\\d*)n|)"+P+"*(?:([+-]|)"+P+"*(\\d+)|))"+P+"*\\)|)","i"),bool:new RegExp("^(?:"+N+")$","i"),needsContext:new RegExp("^"+P+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+P+"*((?:-\\d)?\\d*)"+P+"*\\)|)(?=[^-]|$)","i")},W=/^(?:input|select|textarea|button)$/i,V=/^h\d$/i,X=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,G=/[+~]/,K=new RegExp("\\\\[\\da-fA-F]{1,6}"+P+"?|\\\\([^\\r\\n\\f])","g"),Y=function(e,t){var n="0x"+e.slice(1)-65536;return t||(n<0?String.fromCharCode(n+65536):String.fromCharCode(n>>10|55296,1023&n|56320))},Z=function(){le()},Q=de((function(e){return!0===e.disabled&&C(e,"fieldset")}),{dir:"parentNode",next:"legend"});try{m.apply(o=s.call(L.childNodes),L.childNodes),o[L.childNodes.length].nodeType}catch(e){m={apply:function(e,t){R.apply(e,s.call(t))},call:function(e){R.apply(e,s.call(arguments,1))}}}function J(e,t,n,r){var i,o,a,s,u,c,p,h=t&&t.ownerDocument,y=t?t.nodeType:9;if(n=n||[],"string"!=typeof e||!e||1!==y&&9!==y&&11!==y)return n;if(!r&&(le(t),t=t||l,f)){if(11!==y&&(u=X.exec(e)))if(i=u[1]){if(9===y){if(!(a=t.getElementById(i)))return n;if(a.id===i)return m.call(n,a),n}else if(h&&(a=h.getElementById(i))&&J.contains(t,a)&&a.id===i)return m.call(n,a),n}else{if(u[2])return m.apply(n,t.getElementsByTagName(e)),n;if((i=u[3])&&t.getElementsByClassName)return m.apply(n,t.getElementsByClassName(i)),n}if(!(x[e+" "]||d&&d.test(e))){if(p=e,h=t,1===y&&(U.test(e)||$.test(e))){for((h=G.test(e)&&se(t.parentNode)||t)==t&&v.scope||((s=t.getAttribute("id"))?s=E.escapeSelector(s):t.setAttribute("id",s=g)),o=(c=ce(e)).length;o--;)c[o]=(s?"#"+s:":scope")+" "+fe(c[o]);p=c.join(",")}try{return m.apply(n,h.querySelectorAll(p)),n}catch(t){x(e,!0)}finally{s===g&&t.removeAttribute("id")}}}return ye(e.replace(j,"$1"),t,n,r)}function ee(){var e=[];return function n(r,i){return e.push(r+" ")>t.cacheLength&&delete n[e.shift()],n[r+" "]=i}}function te(e){return e[g]=!0,e}function ne(e){var t=l.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function re(e){return function(t){return C(t,"input")&&t.type===e}}function ie(e){return function(t){return(C(t,"input")||C(t,"button"))&&t.type===e}}function oe(e){return function(t){return"form"in t?t.parentNode&&!1===t.disabled?"label"in t?"label"in t.parentNode?t.parentNode.disabled===e:t.disabled===e:t.isDisabled===e||t.isDisabled!==!e&&Q(t)===e:t.disabled===e:"label"in t&&t.disabled===e}}function ae(e){return te((function(t){return t=+t,te((function(n,r){for(var i,o=e([],n.length,t),a=o.length;a--;)n[i=o[a]]&&(n[i]=!(r[i]=n[i]))}))}))}function se(e){return e&&void 0!==e.getElementsByTagName&&e}function le(e){var n,r=e?e.ownerDocument||e:L;return r!=l&&9===r.nodeType&&r.documentElement?(u=(l=r).documentElement,f=!E.isXMLDoc(l),h=u.matches||u.webkitMatchesSelector||u.msMatchesSelector,L!=l&&(n=l.defaultView)&&n.top!==n&&n.addEventListener("unload",Z),v.getById=ne((function(e){return u.appendChild(e).id=E.expando,!l.getElementsByName||!l.getElementsByName(E.expando).length})),v.disconnectedMatch=ne((function(e){return h.call(e,"*")})),v.scope=ne((function(){return l.querySelectorAll(":scope")})),v.cssHas=ne((function(){try{return l.querySelector(":has(*,:jqfake)"),!1}catch(e){return!0}})),v.getById?(t.filter.ID=function(e){var t=e.replace(K,Y);return function(e){return e.getAttribute("id")===t}},t.find.ID=function(e,t){if(void 0!==t.getElementById&&f){var n=t.getElementById(e);return n?[n]:[]}}):(t.filter.ID=function(e){var t=e.replace(K,Y);return function(e){var n=void 0!==e.getAttributeNode&&e.getAttributeNode("id");return n&&n.value===t}},t.find.ID=function(e,t){if(void 0!==t.getElementById&&f){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];for(i=t.getElementsByName(e),r=0;o=i[r++];)if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),t.find.TAG=function(e,t){return void 0!==t.getElementsByTagName?t.getElementsByTagName(e):t.querySelectorAll(e)},t.find.CLASS=function(e,t){if(void 0!==t.getElementsByClassName&&f)return t.getElementsByClassName(e)},d=[],ne((function(e){var t;u.appendChild(e).innerHTML="",e.querySelectorAll("[selected]").length||d.push("\\["+P+"*(?:value|"+N+")"),e.querySelectorAll("[id~="+g+"-]").length||d.push("~="),e.querySelectorAll("a#"+g+"+*").length||d.push(".#.+[+~]"),e.querySelectorAll(":checked").length||d.push(":checked"),(t=l.createElement("input")).setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),u.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&d.push(":enabled",":disabled"),(t=l.createElement("input")).setAttribute("name",""),e.appendChild(t),e.querySelectorAll("[name='']").length||d.push("\\["+P+"*name"+P+"*="+P+"*(?:''|\"\")")})),v.cssHas||d.push(":has"),d=d.length&&new RegExp(d.join("|")),S=function(e,t){if(e===t)return a=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)==(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!v.sortDetached&&t.compareDocumentPosition(e)===n?e===l||e.ownerDocument==L&&J.contains(L,e)?-1:t===l||t.ownerDocument==L&&J.contains(L,t)?1:i?c.call(i,e)-c.call(i,t):0:4&n?-1:1)},l):l}for(e in J.matches=function(e,t){return J(e,null,null,t)},J.matchesSelector=function(e,t){if(le(e),f&&!x[t+" "]&&(!d||!d.test(t)))try{var n=h.call(e,t);if(n||v.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){x(t,!0)}return J(t,l,null,[e]).length>0},J.contains=function(e,t){return(e.ownerDocument||e)!=l&&le(e),E.contains(e,t)},J.attr=function(e,n){(e.ownerDocument||e)!=l&&le(e);var r=t.attrHandle[n.toLowerCase()],i=r&&p.call(t.attrHandle,n.toLowerCase())?r(e,n,!f):void 0;return void 0!==i?i:e.getAttribute(n)},J.error=function(e){throw new Error("Syntax error, unrecognized expression: "+e)},E.uniqueSort=function(e){var t,n=[],r=0,o=0;if(a=!v.sortStable,i=!v.sortStable&&s.call(e,0),O.call(e,S),a){for(;t=e[o++];)t===e[o]&&(r=n.push(o));for(;r--;)A.call(e,n[r],1)}return i=null,e},E.fn.uniqueSort=function(){return this.pushStack(E.uniqueSort(s.apply(this)))},(t=E.expr={cacheLength:50,createPseudo:te,match:q,attrHandle:{},find:{},relative:{">":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(K,Y),e[3]=(e[3]||e[4]||e[5]||"").replace(K,Y),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||J.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&J.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return q.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&B.test(n)&&(t=ce(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(K,Y).toLowerCase();return"*"===e?function(){return!0}:function(e){return C(e,t)}},CLASS:function(e){var t=w[e+" "];return t||(t=new RegExp("(^|"+P+")"+e+"("+P+"|$)"))&&w(e,(function(e){return t.test("string"==typeof e.className&&e.className||void 0!==e.getAttribute&&e.getAttribute("class")||"")}))},ATTR:function(e,t,n){return function(r){var i=J.attr(r,e);return null==i?"!="===t:!t||(i+="","="===t?i===n:"!="===t?i!==n:"^="===t?n&&0===i.indexOf(n):"*="===t?n&&i.indexOf(n)>-1:"$="===t?n&&i.slice(-n.length)===n:"~="===t?(" "+i.replace(z," ")+" ").indexOf(n)>-1:"|="===t&&(i===n||i.slice(0,n.length+1)===n+"-"))}},CHILD:function(e,t,n,r,i){var o="nth"!==e.slice(0,3),a="last"!==e.slice(-4),s="of-type"===t;return 1===r&&0===i?function(e){return!!e.parentNode}:function(t,n,l){var u,c,f,d,p,h=o!==a?"nextSibling":"previousSibling",m=t.parentNode,v=s&&t.nodeName.toLowerCase(),b=!l&&!s,w=!1;if(m){if(o){for(;h;){for(f=t;f=f[h];)if(s?C(f,v):1===f.nodeType)return!1;p=h="only"===e&&!p&&"nextSibling"}return!0}if(p=[a?m.firstChild:m.lastChild],a&&b){for(w=(d=(u=(c=m[g]||(m[g]={}))[e]||[])[0]===y&&u[1])&&u[2],f=d&&m.childNodes[d];f=++d&&f&&f[h]||(w=d=0)||p.pop();)if(1===f.nodeType&&++w&&f===t){c[e]=[y,d,w];break}}else if(b&&(w=d=(u=(c=t[g]||(t[g]={}))[e]||[])[0]===y&&u[1]),!1===w)for(;(f=++d&&f&&f[h]||(w=d=0)||p.pop())&&(!(s?C(f,v):1===f.nodeType)||!++w||(b&&((c=f[g]||(f[g]={}))[e]=[y,w]),f!==t)););return(w-=i)===r||w%r==0&&w/r>=0}}},PSEUDO:function(e,n){var r,i=t.pseudos[e]||t.setFilters[e.toLowerCase()]||J.error("unsupported pseudo: "+e);return i[g]?i(n):i.length>1?(r=[e,e,"",n],t.setFilters.hasOwnProperty(e.toLowerCase())?te((function(e,t){for(var r,o=i(e,n),a=o.length;a--;)e[r=c.call(e,o[a])]=!(t[r]=o[a])})):function(e){return i(e,0,r)}):i}},pseudos:{not:te((function(e){var t=[],n=[],r=ge(e.replace(j,"$1"));return r[g]?te((function(e,t,n,i){for(var o,a=r(e,null,i,[]),s=e.length;s--;)(o=a[s])&&(e[s]=!(t[s]=o))})):function(e,i,o){return t[0]=e,r(t,null,o,n),t[0]=null,!n.pop()}})),has:te((function(e){return function(t){return J(e,t).length>0}})),contains:te((function(e){return e=e.replace(K,Y),function(t){return(t.textContent||E.text(t)).indexOf(e)>-1}})),lang:te((function(e){return F.test(e||"")||J.error("unsupported lang: "+e),e=e.replace(K,Y).toLowerCase(),function(t){var n;do{if(n=f?t.lang:t.getAttribute("xml:lang")||t.getAttribute("lang"))return(n=n.toLowerCase())===e||0===n.indexOf(e+"-")}while((t=t.parentNode)&&1===t.nodeType);return!1}})),target:function(e){var t=n.location&&n.location.hash;return t&&t.slice(1)===e.id},root:function(e){return e===u},focus:function(e){return e===function(){try{return l.activeElement}catch(e){}}()&&l.hasFocus()&&!!(e.type||e.href||~e.tabIndex)},enabled:oe(!1),disabled:oe(!0),checked:function(e){return C(e,"input")&&!!e.checked||C(e,"option")&&!!e.selected},selected:function(e){return e.parentNode&&e.parentNode.selectedIndex,!0===e.selected},empty:function(e){for(e=e.firstChild;e;e=e.nextSibling)if(e.nodeType<6)return!1;return!0},parent:function(e){return!t.pseudos.empty(e)},header:function(e){return V.test(e.nodeName)},input:function(e){return W.test(e.nodeName)},button:function(e){return C(e,"input")&&"button"===e.type||C(e,"button")},text:function(e){var t;return C(e,"input")&&"text"===e.type&&(null==(t=e.getAttribute("type"))||"text"===t.toLowerCase())},first:ae((function(){return[0]})),last:ae((function(e,t){return[t-1]})),eq:ae((function(e,t,n){return[n<0?n+t:n]})),even:ae((function(e,t){for(var n=0;nt?t:n;--r>=0;)e.push(r);return e})),gt:ae((function(e,t,n){for(var r=n<0?n+t:n;++r1?function(t,n,r){for(var i=e.length;i--;)if(!e[i](t,n,r))return!1;return!0}:e[0]}function he(e,t,n,r,i){for(var o,a=[],s=0,l=e.length,u=null!=t;s-1&&(o[u]=!(a[u]=d))}}else p=he(p===a?p.splice(g,p.length):p),i?i(null,a,p,l):m.apply(a,p)}))}function ve(e){for(var n,i,o,a=e.length,s=t.relative[e[0].type],l=s||t.relative[" "],u=s?1:0,f=de((function(e){return e===n}),l,!0),d=de((function(e){return c.call(n,e)>-1}),l,!0),p=[function(e,t,i){var o=!s&&(i||t!=r)||((n=t).nodeType?f(e,t,i):d(e,t,i));return n=null,o}];u1&&pe(p),u>1&&fe(e.slice(0,u-1).concat({value:" "===e[u-2].type?"*":""})).replace(j,"$1"),i,u0,o=e.length>0,a=function(a,s,u,c,d){var p,h,v,g=0,b="0",w=a&&[],_=[],k=r,x=a||o&&t.find.TAG("*",d),S=y+=null==k?1:Math.random()||.1,C=x.length;for(d&&(r=s==l||s||d);b!==C&&null!=(p=x[b]);b++){if(o&&p){for(h=0,s||p.ownerDocument==l||(le(p),u=!f);v=e[h++];)if(v(p,s||l,u)){m.call(c,p);break}d&&(y=S)}i&&((p=!v&&p)&&g--,a&&w.push(p))}if(g+=b,i&&b!==g){for(h=0;v=n[h++];)v(w,_,s,u);if(a){if(g>0)for(;b--;)w[b]||_[b]||(_[b]=T.call(c));_=he(_)}m.apply(c,_),d&&!a&&_.length>0&&g+n.length>1&&E.uniqueSort(c)}return d&&(y=S,r=k),w};return i?te(a):a}(a,o))).selector=e}return s}function ye(e,n,r,i){var o,a,s,l,u,c="function"==typeof e&&e,d=!i&&ce(e=c.selector||e);if(r=r||[],1===d.length){if((a=d[0]=d[0].slice(0)).length>2&&"ID"===(s=a[0]).type&&9===n.nodeType&&f&&t.relative[a[1].type]){if(!(n=(t.find.ID(s.matches[0].replace(K,Y),n)||[])[0]))return r;c&&(n=n.parentNode),e=e.slice(a.shift().value.length)}for(o=q.needsContext.test(e)?0:a.length;o--&&(s=a[o],!t.relative[l=s.type]);)if((u=t.find[l])&&(i=u(s.matches[0].replace(K,Y),G.test(a[0].type)&&se(n.parentNode)||n))){if(a.splice(o,1),!(e=i.length&&fe(a)))return m.apply(r,i),r;break}}return(c||ge(e,d))(i,n,!f,r,!n||G.test(e)&&se(n.parentNode)||n),r}ue.prototype=t.filters=t.pseudos,t.setFilters=new ue,v.sortStable=g.split("").sort(S).join("")===g,le(),v.sortDetached=ne((function(e){return 1&e.compareDocumentPosition(l.createElement("fieldset"))})),E.find=J,E.expr[":"]=E.expr.pseudos,E.unique=E.uniqueSort,J.compile=ge,J.select=ye,J.setDocument=le,J.escape=E.escapeSelector,J.getText=E.text,J.isXML=E.isXMLDoc,J.selectors=E.expr,J.support=E.support,J.uniqueSort=E.uniqueSort}();var I=function(e,t,n){for(var r=[],i=void 0!==n;(e=e[t])&&9!==e.nodeType;)if(1===e.nodeType){if(i&&E(e).is(n))break;r.push(e)}return r},M=function(e,t){for(var n=[];e;e=e.nextSibling)1===e.nodeType&&e!==t&&n.push(e);return n},z=E.expr.match.needsContext,H=/^<([a-z][^\/\0>:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function $(e,t,n){return g(t)?E.grep(e,(function(e,r){return!!t.call(e,r,e)!==n})):t.nodeType?E.grep(e,(function(e){return e===t!==n})):"string"!=typeof t?E.grep(e,(function(e){return c.call(t,e)>-1!==n})):E.filter(t,e,n)}E.filter=function(e,t,n){var r=t[0];return n&&(e=":not("+e+")"),1===t.length&&1===r.nodeType?E.find.matchesSelector(r,e)?[r]:[]:E.find.matches(e,E.grep(t,(function(e){return 1===e.nodeType})))},E.fn.extend({find:function(e){var t,n,r=this.length,i=this;if("string"!=typeof e)return this.pushStack(E(e).filter((function(){for(t=0;t1?E.uniqueSort(n):n},filter:function(e){return this.pushStack($(this,e||[],!1))},not:function(e){return this.pushStack($(this,e||[],!0))},is:function(e){return!!$(this,"string"==typeof e&&z.test(e)?E(e):e||[],!1).length}});var U,B=/^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]+))$/;(E.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||U,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&e.length>=3?[null,e,null]:B.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof E?t[0]:t,E.merge(this,E.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:b,!0)),H.test(r[1])&&E.isPlainObject(t))for(r in t)g(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=b.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):g(e)?void 0!==n.ready?n.ready(e):e(E):E.makeArray(e,this)}).prototype=E.fn,U=E(b);var F=/^(?:parents|prev(?:Until|All))/,q={children:!0,contents:!0,next:!0,prev:!0};function W(e,t){for(;(e=e[t])&&1!==e.nodeType;);return e}E.fn.extend({has:function(e){var t=E(e,this),n=t.length;return this.filter((function(){for(var e=0;e-1:1===n.nodeType&&E.find.matchesSelector(n,e))){o.push(n);break}return this.pushStack(o.length>1?E.uniqueSort(o):o)},index:function(e){return e?"string"==typeof e?c.call(E(e),this[0]):c.call(this,e.jquery?e[0]:e):this[0]&&this[0].parentNode?this.first().prevAll().length:-1},add:function(e,t){return this.pushStack(E.uniqueSort(E.merge(this.get(),E(e,t))))},addBack:function(e){return this.add(null==e?this.prevObject:this.prevObject.filter(e))}}),E.each({parent:function(e){var t=e.parentNode;return t&&11!==t.nodeType?t:null},parents:function(e){return I(e,"parentNode")},parentsUntil:function(e,t,n){return I(e,"parentNode",n)},next:function(e){return W(e,"nextSibling")},prev:function(e){return W(e,"previousSibling")},nextAll:function(e){return I(e,"nextSibling")},prevAll:function(e){return I(e,"previousSibling")},nextUntil:function(e,t,n){return I(e,"nextSibling",n)},prevUntil:function(e,t,n){return I(e,"previousSibling",n)},siblings:function(e){return M((e.parentNode||{}).firstChild,e)},children:function(e){return M(e.firstChild)},contents:function(e){return null!=e.contentDocument&&a(e.contentDocument)?e.contentDocument:(C(e,"template")&&(e=e.content||e),E.merge([],e.childNodes))}},(function(e,t){E.fn[e]=function(n,r){var i=E.map(this,t,n);return"Until"!==e.slice(-5)&&(r=n),r&&"string"==typeof r&&(i=E.filter(r,i)),this.length>1&&(q[e]||E.uniqueSort(i),F.test(e)&&i.reverse()),this.pushStack(i)}}));var V=/[^\x20\t\r\n\f]+/g;function X(e){return e}function G(e){throw e}function K(e,t,n,r){var i;try{e&&g(i=e.promise)?i.call(e).done(t).fail(n):e&&g(i=e.then)?i.call(e,t,n):t.apply(void 0,[e].slice(r))}catch(e){n.apply(void 0,[e])}}E.Callbacks=function(e){e="string"==typeof e?function(e){var t={};return E.each(e.match(V)||[],(function(e,n){t[n]=!0})),t}(e):E.extend({},e);var t,n,r,i,o=[],a=[],s=-1,l=function(){for(i=i||e.once,r=t=!0;a.length;s=-1)for(n=a.shift();++s-1;)o.splice(n,1),n<=s&&s--})),this},has:function(e){return e?E.inArray(e,o)>-1:o.length>0},empty:function(){return o&&(o=[]),this},disable:function(){return i=a=[],o=n="",this},disabled:function(){return!o},lock:function(){return i=a=[],n||t||(o=n=""),this},locked:function(){return!!i},fireWith:function(e,n){return i||(n=[e,(n=n||[]).slice?n.slice():n],a.push(n),t||l()),this},fire:function(){return u.fireWith(this,arguments),this},fired:function(){return!!r}};return u},E.extend({Deferred:function(e){var t=[["notify","progress",E.Callbacks("memory"),E.Callbacks("memory"),2],["resolve","done",E.Callbacks("once memory"),E.Callbacks("once memory"),0,"resolved"],["reject","fail",E.Callbacks("once memory"),E.Callbacks("once memory"),1,"rejected"]],r="pending",i={state:function(){return r},always:function(){return o.done(arguments).fail(arguments),this},catch:function(e){return i.then(null,e)},pipe:function(){var e=arguments;return E.Deferred((function(n){E.each(t,(function(t,r){var i=g(e[r[4]])&&e[r[4]];o[r[1]]((function(){var e=i&&i.apply(this,arguments);e&&g(e.promise)?e.promise().progress(n.notify).done(n.resolve).fail(n.reject):n[r[0]+"With"](this,i?[e]:arguments)}))})),e=null})).promise()},then:function(e,r,i){var o=0;function a(e,t,r,i){return function(){var s=this,l=arguments,u=function(){var n,u;if(!(e=o&&(r!==G&&(s=void 0,l=[n]),t.rejectWith(s,l))}};e?c():(E.Deferred.getErrorHook?c.error=E.Deferred.getErrorHook():E.Deferred.getStackHook&&(c.error=E.Deferred.getStackHook()),n.setTimeout(c))}}return E.Deferred((function(n){t[0][3].add(a(0,n,g(i)?i:X,n.notifyWith)),t[1][3].add(a(0,n,g(e)?e:X)),t[2][3].add(a(0,n,g(r)?r:G))})).promise()},promise:function(e){return null!=e?E.extend(e,i):i}},o={};return E.each(t,(function(e,n){var a=n[2],s=n[5];i[n[1]]=a.add,s&&a.add((function(){r=s}),t[3-e][2].disable,t[3-e][3].disable,t[0][2].lock,t[0][3].lock),a.add(n[3].fire),o[n[0]]=function(){return o[n[0]+"With"](this===o?void 0:this,arguments),this},o[n[0]+"With"]=a.fireWith})),i.promise(o),e&&e.call(o,o),o},when:function(e){var t=arguments.length,n=t,r=Array(n),i=s.call(arguments),o=E.Deferred(),a=function(e){return function(n){r[e]=this,i[e]=arguments.length>1?s.call(arguments):n,--t||o.resolveWith(r,i)}};if(t<=1&&(K(e,o.done(a(n)).resolve,o.reject,!t),"pending"===o.state()||g(i[n]&&i[n].then)))return o.then();for(;n--;)K(i[n],a(n),o.reject);return o.promise()}});var Y=/^(Eval|Internal|Range|Reference|Syntax|Type|URI)Error$/;E.Deferred.exceptionHook=function(e,t){n.console&&n.console.warn&&e&&Y.test(e.name)&&n.console.warn("jQuery.Deferred exception: "+e.message,e.stack,t)},E.readyException=function(e){n.setTimeout((function(){throw e}))};var Z=E.Deferred();function Q(){b.removeEventListener("DOMContentLoaded",Q),n.removeEventListener("load",Q),E.ready()}E.fn.ready=function(e){return Z.then(e).catch((function(e){E.readyException(e)})),this},E.extend({isReady:!1,readyWait:1,ready:function(e){(!0===e?--E.readyWait:E.isReady)||(E.isReady=!0,!0!==e&&--E.readyWait>0||Z.resolveWith(b,[E]))}}),E.ready.then=Z.then,"complete"===b.readyState||"loading"!==b.readyState&&!b.documentElement.doScroll?n.setTimeout(E.ready):(b.addEventListener("DOMContentLoaded",Q),n.addEventListener("load",Q));var J=function(e,t,n,r,i,o,a){var s=0,l=e.length,u=null==n;if("object"===k(n))for(s in i=!0,n)J(e,t,s,n[s],!0,o,a);else if(void 0!==r&&(i=!0,g(r)||(a=!0),u&&(a?(t.call(e,r),t=null):(u=t,t=function(e,t,n){return u.call(E(e),n)})),t))for(;s1,null,!0)},removeData:function(e){return this.each((function(){se.remove(this,e)}))}}),E.extend({queue:function(e,t,n){var r;if(e)return t=(t||"fx")+"queue",r=ae.get(e,t),n&&(!r||Array.isArray(n)?r=ae.access(e,t,E.makeArray(n)):r.push(n)),r||[]},dequeue:function(e,t){t=t||"fx";var n=E.queue(e,t),r=n.length,i=n.shift(),o=E._queueHooks(e,t);"inprogress"===i&&(i=n.shift(),r--),i&&("fx"===t&&n.unshift("inprogress"),delete o.stop,i.call(e,(function(){E.dequeue(e,t)}),o)),!r&&o&&o.empty.fire()},_queueHooks:function(e,t){var n=t+"queueHooks";return ae.get(e,n)||ae.access(e,n,{empty:E.Callbacks("once memory").add((function(){ae.remove(e,[t+"queue",n])}))})}}),E.fn.extend({queue:function(e,t){var n=2;return"string"!=typeof e&&(t=e,e="fx",n--),arguments.length\x20\t\r\n\f]*)/i,Ce=/^$|^module$|\/(?:java|ecma)script/i;ke=b.createDocumentFragment().appendChild(b.createElement("div")),(xe=b.createElement("input")).setAttribute("type","radio"),xe.setAttribute("checked","checked"),xe.setAttribute("name","t"),ke.appendChild(xe),v.checkClone=ke.cloneNode(!0).cloneNode(!0).lastChild.checked,ke.innerHTML="",v.noCloneChecked=!!ke.cloneNode(!0).lastChild.defaultValue,ke.innerHTML="",v.option=!!ke.lastChild;var Te={thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function Oe(e,t){var n;return n=void 0!==e.getElementsByTagName?e.getElementsByTagName(t||"*"):void 0!==e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&C(e,t)?E.merge([e],n):n}function Ae(e,t){for(var n=0,r=e.length;n",""]);var Pe=/<|&#?\w+;/;function je(e,t,n,r,i){for(var o,a,s,l,u,c,f=t.createDocumentFragment(),d=[],p=0,h=e.length;p-1)i&&i.push(o);else if(u=me(o),a=Oe(f.appendChild(o),"script"),u&&Ae(a),n)for(c=0;o=a[c++];)Ce.test(o.type||"")&&n.push(o);return f}var Ne=/^([^.]*)(?:\.(.+)|)/;function De(){return!0}function Le(){return!1}function Re(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Re(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Le;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return E().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=E.guid++)),e.each((function(){E.event.add(this,t,i,r,n)}))}function Ie(e,t,n){n?(ae.set(e,t,!1),E.event.add(e,t,{namespace:!1,handler:function(e){var n,r=ae.get(this,t);if(1&e.isTrigger&&this[t]){if(r)(E.event.special[t]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),ae.set(this,t,r),this[t](),n=ae.get(this,t),ae.set(this,t,!1),r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n}else r&&(ae.set(this,t,E.event.trigger(r[0],r.slice(1),this)),e.stopPropagation(),e.isImmediatePropagationStopped=De)}})):void 0===ae.get(e,t)&&E.event.add(e,t,De)}E.event={global:{},add:function(e,t,n,r,i){var o,a,s,l,u,c,f,d,p,h,m,v=ae.get(e);if(ie(e))for(n.handler&&(n=(o=n).handler,i=o.selector),i&&E.find.matchesSelector(he,i),n.guid||(n.guid=E.guid++),(l=v.events)||(l=v.events=Object.create(null)),(a=v.handle)||(a=v.handle=function(t){return void 0!==E&&E.event.triggered!==t.type?E.event.dispatch.apply(e,arguments):void 0}),u=(t=(t||"").match(V)||[""]).length;u--;)p=m=(s=Ne.exec(t[u])||[])[1],h=(s[2]||"").split(".").sort(),p&&(f=E.event.special[p]||{},p=(i?f.delegateType:f.bindType)||p,f=E.event.special[p]||{},c=E.extend({type:p,origType:m,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&E.expr.match.needsContext.test(i),namespace:h.join(".")},o),(d=l[p])||((d=l[p]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(e,r,h,a)||e.addEventListener&&e.addEventListener(p,a)),f.add&&(f.add.call(e,c),c.handler.guid||(c.handler.guid=n.guid)),i?d.splice(d.delegateCount++,0,c):d.push(c),E.event.global[p]=!0)},remove:function(e,t,n,r,i){var o,a,s,l,u,c,f,d,p,h,m,v=ae.hasData(e)&&ae.get(e);if(v&&(l=v.events)){for(u=(t=(t||"").match(V)||[""]).length;u--;)if(p=m=(s=Ne.exec(t[u])||[])[1],h=(s[2]||"").split(".").sort(),p){for(f=E.event.special[p]||{},d=l[p=(r?f.delegateType:f.bindType)||p]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=d.length;o--;)c=d[o],!i&&m!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(d.splice(o,1),c.selector&&d.delegateCount--,f.remove&&f.remove.call(e,c));a&&!d.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||E.removeEvent(e,p,v.handle),delete l[p])}else for(p in l)E.event.remove(e,p+t[u],n,r,!0);E.isEmptyObject(l)&&ae.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=new Array(arguments.length),l=E.event.fix(e),u=(ae.get(this,"events")||Object.create(null))[l.type]||[],c=E.event.special[l.type]||{};for(s[0]=l,t=1;t=1))for(;u!==this;u=u.parentNode||this)if(1===u.nodeType&&("click"!==e.type||!0!==u.disabled)){for(o=[],a={},n=0;n-1:E.find(i,this,null,[u]).length),a[i]&&o.push(r);o.length&&s.push({elem:u,handlers:o})}return u=this,l\s*$/g;function $e(e,t){return C(e,"table")&&C(11!==t.nodeType?t:t.firstChild,"tr")&&E(e).children("tbody")[0]||e}function Ue(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Be(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Fe(e,t){var n,r,i,o,a,s;if(1===t.nodeType){if(ae.hasData(e)&&(s=ae.get(e).events))for(i in ae.remove(t,"handle events"),s)for(n=0,r=s[i].length;n1&&"string"==typeof h&&!v.checkClone&&ze.test(h))return e.each((function(i){var o=e.eq(i);m&&(t[0]=h.call(this,i,o.html())),We(o,t,n,r)}));if(d&&(o=(i=je(t,e[0].ownerDocument,!1,e,r)).firstChild,1===i.childNodes.length&&(i=o),o||r)){for(s=(a=E.map(Oe(i,"script"),Ue)).length;f0&&Ae(a,!l&&Oe(e,"script")),s},cleanData:function(e){for(var t,n,r,i=E.event.special,o=0;void 0!==(n=e[o]);o++)if(ie(n)){if(t=n[ae.expando]){if(t.events)for(r in t.events)i[r]?E.event.remove(n,r):E.removeEvent(n,r,t.handle);n[ae.expando]=void 0}n[se.expando]&&(n[se.expando]=void 0)}}}),E.fn.extend({detach:function(e){return Ve(this,e,!0)},remove:function(e){return Ve(this,e)},text:function(e){return J(this,(function(e){return void 0===e?E.text(this):this.empty().each((function(){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||(this.textContent=e)}))}),null,e,arguments.length)},append:function(){return We(this,arguments,(function(e){1!==this.nodeType&&11!==this.nodeType&&9!==this.nodeType||$e(this,e).appendChild(e)}))},prepend:function(){return We(this,arguments,(function(e){if(1===this.nodeType||11===this.nodeType||9===this.nodeType){var t=$e(this,e);t.insertBefore(e,t.firstChild)}}))},before:function(){return We(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this)}))},after:function(){return We(this,arguments,(function(e){this.parentNode&&this.parentNode.insertBefore(e,this.nextSibling)}))},empty:function(){for(var e,t=0;null!=(e=this[t]);t++)1===e.nodeType&&(E.cleanData(Oe(e,!1)),e.textContent="");return this},clone:function(e,t){return e=null!=e&&e,t=null==t?e:t,this.map((function(){return E.clone(this,e,t)}))},html:function(e){return J(this,(function(e){var t=this[0]||{},n=0,r=this.length;if(void 0===e&&1===t.nodeType)return t.innerHTML;if("string"==typeof e&&!Me.test(e)&&!Te[(Se.exec(e)||["",""])[1].toLowerCase()]){e=E.htmlPrefilter(e);try{for(;n=0&&(l+=Math.max(0,Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-o-l-s-.5))||0),l+u}function ut(e,t,n){var r=Ke(e),i=(!v.boxSizingReliable()||n)&&"border-box"===E.css(e,"boxSizing",!1,r),o=i,a=Qe(e,t,r),s="offset"+t[0].toUpperCase()+t.slice(1);if(Xe.test(a)){if(!n)return a;a="auto"}return(!v.boxSizingReliable()&&i||!v.reliableTrDimensions()&&C(e,"tr")||"auto"===a||!parseFloat(a)&&"inline"===E.css(e,"display",!1,r))&&e.getClientRects().length&&(i="border-box"===E.css(e,"boxSizing",!1,r),(o=s in e)&&(a=e[s])),(a=parseFloat(a)||0)+lt(e,t,n||(i?"border":"content"),o,r,a)+"px"}function ct(e,t,n,r,i){return new ct.prototype.init(e,t,n,r,i)}E.extend({cssHooks:{opacity:{get:function(e,t){if(t){var n=Qe(e,"opacity");return""===n?"1":n}}}},cssNumber:{animationIterationCount:!0,aspectRatio:!0,borderImageSlice:!0,columnCount:!0,flexGrow:!0,flexShrink:!0,fontWeight:!0,gridArea:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnStart:!0,gridRow:!0,gridRowEnd:!0,gridRowStart:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,scale:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeMiterlimit:!0,strokeOpacity:!0},cssProps:{},style:function(e,t,n,r){if(e&&3!==e.nodeType&&8!==e.nodeType&&e.style){var i,o,a,s=re(t),l=Ge.test(t),u=e.style;if(l||(t=rt(s)),a=E.cssHooks[t]||E.cssHooks[s],void 0===n)return a&&"get"in a&&void 0!==(i=a.get(e,!1,r))?i:u[t];"string"===(o=typeof n)&&(i=de.exec(n))&&i[1]&&(n=ye(e,t,i),o="number"),null!=n&&n==n&&("number"!==o||l||(n+=i&&i[3]||(E.cssNumber[s]?"":"px")),v.clearCloneStyle||""!==n||0!==t.indexOf("background")||(u[t]="inherit"),a&&"set"in a&&void 0===(n=a.set(e,n,r))||(l?u.setProperty(t,n):u[t]=n))}},css:function(e,t,n,r){var i,o,a,s=re(t);return Ge.test(t)||(t=rt(s)),(a=E.cssHooks[t]||E.cssHooks[s])&&"get"in a&&(i=a.get(e,!0,n)),void 0===i&&(i=Qe(e,t,r)),"normal"===i&&t in at&&(i=at[t]),""===n||n?(o=parseFloat(i),!0===n||isFinite(o)?o||0:i):i}}),E.each(["height","width"],(function(e,t){E.cssHooks[t]={get:function(e,n,r){if(n)return!it.test(E.css(e,"display"))||e.getClientRects().length&&e.getBoundingClientRect().width?ut(e,t,r):Ye(e,ot,(function(){return ut(e,t,r)}))},set:function(e,n,r){var i,o=Ke(e),a=!v.scrollboxSize()&&"absolute"===o.position,s=(a||r)&&"border-box"===E.css(e,"boxSizing",!1,o),l=r?lt(e,t,r,s,o):0;return s&&a&&(l-=Math.ceil(e["offset"+t[0].toUpperCase()+t.slice(1)]-parseFloat(o[t])-lt(e,t,"border",!1,o)-.5)),l&&(i=de.exec(n))&&"px"!==(i[3]||"px")&&(e.style[t]=n,n=E.css(e,t)),st(0,n,l)}}})),E.cssHooks.marginLeft=Je(v.reliableMarginLeft,(function(e,t){if(t)return(parseFloat(Qe(e,"marginLeft"))||e.getBoundingClientRect().left-Ye(e,{marginLeft:0},(function(){return e.getBoundingClientRect().left})))+"px"})),E.each({margin:"",padding:"",border:"Width"},(function(e,t){E.cssHooks[e+t]={expand:function(n){for(var r=0,i={},o="string"==typeof n?n.split(" "):[n];r<4;r++)i[e+pe[r]+t]=o[r]||o[r-2]||o[0];return i}},"margin"!==e&&(E.cssHooks[e+t].set=st)})),E.fn.extend({css:function(e,t){return J(this,(function(e,t,n){var r,i,o={},a=0;if(Array.isArray(t)){for(r=Ke(e),i=t.length;a1)}}),E.Tween=ct,ct.prototype={constructor:ct,init:function(e,t,n,r,i,o){this.elem=e,this.prop=n,this.easing=i||E.easing._default,this.options=t,this.start=this.now=this.cur(),this.end=r,this.unit=o||(E.cssNumber[n]?"":"px")},cur:function(){var e=ct.propHooks[this.prop];return e&&e.get?e.get(this):ct.propHooks._default.get(this)},run:function(e){var t,n=ct.propHooks[this.prop];return this.options.duration?this.pos=t=E.easing[this.easing](e,this.options.duration*e,0,1,this.options.duration):this.pos=t=e,this.now=(this.end-this.start)*t+this.start,this.options.step&&this.options.step.call(this.elem,this.now,this),n&&n.set?n.set(this):ct.propHooks._default.set(this),this}},ct.prototype.init.prototype=ct.prototype,ct.propHooks={_default:{get:function(e){var t;return 1!==e.elem.nodeType||null!=e.elem[e.prop]&&null==e.elem.style[e.prop]?e.elem[e.prop]:(t=E.css(e.elem,e.prop,""))&&"auto"!==t?t:0},set:function(e){E.fx.step[e.prop]?E.fx.step[e.prop](e):1!==e.elem.nodeType||!E.cssHooks[e.prop]&&null==e.elem.style[rt(e.prop)]?e.elem[e.prop]=e.now:E.style(e.elem,e.prop,e.now+e.unit)}}},ct.propHooks.scrollTop=ct.propHooks.scrollLeft={set:function(e){e.elem.nodeType&&e.elem.parentNode&&(e.elem[e.prop]=e.now)}},E.easing={linear:function(e){return e},swing:function(e){return.5-Math.cos(e*Math.PI)/2},_default:"swing"},E.fx=ct.prototype.init,E.fx.step={};var ft,dt,pt=/^(?:toggle|show|hide)$/,ht=/queueHooks$/;function mt(){dt&&(!1===b.hidden&&n.requestAnimationFrame?n.requestAnimationFrame(mt):n.setTimeout(mt,E.fx.interval),E.fx.tick())}function vt(){return n.setTimeout((function(){ft=void 0})),ft=Date.now()}function gt(e,t){var n,r=0,i={height:e};for(t=t?1:0;r<4;r+=2-t)i["margin"+(n=pe[r])]=i["padding"+n]=e;return t&&(i.opacity=i.width=e),i}function yt(e,t,n){for(var r,i=(bt.tweeners[t]||[]).concat(bt.tweeners["*"]),o=0,a=i.length;o1)},removeAttr:function(e){return this.each((function(){E.removeAttr(this,e)}))}}),E.extend({attr:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return void 0===e.getAttribute?E.prop(e,t,n):(1===o&&E.isXMLDoc(e)||(i=E.attrHooks[t.toLowerCase()]||(E.expr.match.bool.test(t)?wt:void 0)),void 0!==n?null===n?void E.removeAttr(e,t):i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:(e.setAttribute(t,n+""),n):i&&"get"in i&&null!==(r=i.get(e,t))?r:null==(r=E.find.attr(e,t))?void 0:r)},attrHooks:{type:{set:function(e,t){if(!v.radioValue&&"radio"===t&&C(e,"input")){var n=e.value;return e.setAttribute("type",t),n&&(e.value=n),t}}}},removeAttr:function(e,t){var n,r=0,i=t&&t.match(V);if(i&&1===e.nodeType)for(;n=i[r++];)e.removeAttribute(n)}}),wt={set:function(e,t,n){return!1===t?E.removeAttr(e,n):e.setAttribute(n,n),n}},E.each(E.expr.match.bool.source.match(/\w+/g),(function(e,t){var n=_t[t]||E.find.attr;_t[t]=function(e,t,r){var i,o,a=t.toLowerCase();return r||(o=_t[a],_t[a]=i,i=null!=n(e,t,r)?a:null,_t[a]=o),i}}));var kt=/^(?:input|select|textarea|button)$/i,xt=/^(?:a|area)$/i;function Et(e){return(e.match(V)||[]).join(" ")}function St(e){return e.getAttribute&&e.getAttribute("class")||""}function Ct(e){return Array.isArray(e)?e:"string"==typeof e&&e.match(V)||[]}E.fn.extend({prop:function(e,t){return J(this,E.prop,e,t,arguments.length>1)},removeProp:function(e){return this.each((function(){delete this[E.propFix[e]||e]}))}}),E.extend({prop:function(e,t,n){var r,i,o=e.nodeType;if(3!==o&&8!==o&&2!==o)return 1===o&&E.isXMLDoc(e)||(t=E.propFix[t]||t,i=E.propHooks[t]),void 0!==n?i&&"set"in i&&void 0!==(r=i.set(e,n,t))?r:e[t]=n:i&&"get"in i&&null!==(r=i.get(e,t))?r:e[t]},propHooks:{tabIndex:{get:function(e){var t=E.find.attr(e,"tabindex");return t?parseInt(t,10):kt.test(e.nodeName)||xt.test(e.nodeName)&&e.href?0:-1}}},propFix:{for:"htmlFor",class:"className"}}),v.optSelected||(E.propHooks.selected={get:function(e){var t=e.parentNode;return t&&t.parentNode&&t.parentNode.selectedIndex,null},set:function(e){var t=e.parentNode;t&&(t.selectedIndex,t.parentNode&&t.parentNode.selectedIndex)}}),E.each(["tabIndex","readOnly","maxLength","cellSpacing","cellPadding","rowSpan","colSpan","useMap","frameBorder","contentEditable"],(function(){E.propFix[this.toLowerCase()]=this})),E.fn.extend({addClass:function(e){var t,n,r,i,o,a;return g(e)?this.each((function(t){E(this).addClass(e.call(this,t,St(this)))})):(t=Ct(e)).length?this.each((function(){if(r=St(this),n=1===this.nodeType&&" "+Et(r)+" "){for(o=0;o-1;)n=n.replace(" "+i+" "," ");a=Et(n),r!==a&&this.setAttribute("class",a)}})):this:this.attr("class","")},toggleClass:function(e,t){var n,r,i,o,a=typeof e,s="string"===a||Array.isArray(e);return g(e)?this.each((function(n){E(this).toggleClass(e.call(this,n,St(this),t),t)})):"boolean"==typeof t&&s?t?this.addClass(e):this.removeClass(e):(n=Ct(e),this.each((function(){if(s)for(o=E(this),i=0;i-1)return!0;return!1}});var Tt=/\r/g;E.fn.extend({val:function(e){var t,n,r,i=this[0];return arguments.length?(r=g(e),this.each((function(n){var i;1===this.nodeType&&(null==(i=r?e.call(this,n,E(this).val()):e)?i="":"number"==typeof i?i+="":Array.isArray(i)&&(i=E.map(i,(function(e){return null==e?"":e+""}))),(t=E.valHooks[this.type]||E.valHooks[this.nodeName.toLowerCase()])&&"set"in t&&void 0!==t.set(this,i,"value")||(this.value=i))}))):i?(t=E.valHooks[i.type]||E.valHooks[i.nodeName.toLowerCase()])&&"get"in t&&void 0!==(n=t.get(i,"value"))?n:"string"==typeof(n=i.value)?n.replace(Tt,""):null==n?"":n:void 0}}),E.extend({valHooks:{option:{get:function(e){var t=E.find.attr(e,"value");return null!=t?t:Et(E.text(e))}},select:{get:function(e){var t,n,r,i=e.options,o=e.selectedIndex,a="select-one"===e.type,s=a?null:[],l=a?o+1:i.length;for(r=o<0?l:a?o:0;r-1)&&(n=!0);return n||(e.selectedIndex=-1),o}}}}),E.each(["radio","checkbox"],(function(){E.valHooks[this]={set:function(e,t){if(Array.isArray(t))return e.checked=E.inArray(E(e).val(),t)>-1}},v.checkOn||(E.valHooks[this].get=function(e){return null===e.getAttribute("value")?"on":e.value})}));var Ot=n.location,At={guid:Date.now()},Pt=/\?/;E.parseXML=function(e){var t,r;if(!e||"string"!=typeof e)return null;try{t=(new n.DOMParser).parseFromString(e,"text/xml")}catch(e){}return r=t&&t.getElementsByTagName("parsererror")[0],t&&!r||E.error("Invalid XML: "+(r?E.map(r.childNodes,(function(e){return e.textContent})).join("\n"):e)),t};var jt=/^(?:focusinfocus|focusoutblur)$/,Nt=function(e){e.stopPropagation()};E.extend(E.event,{trigger:function(e,t,r,i){var o,a,s,l,u,c,f,d,h=[r||b],m=p.call(e,"type")?e.type:e,v=p.call(e,"namespace")?e.namespace.split("."):[];if(a=d=s=r=r||b,3!==r.nodeType&&8!==r.nodeType&&!jt.test(m+E.event.triggered)&&(m.indexOf(".")>-1&&(v=m.split("."),m=v.shift(),v.sort()),u=m.indexOf(":")<0&&"on"+m,(e=e[E.expando]?e:new E.Event(m,"object"==typeof e&&e)).isTrigger=i?2:3,e.namespace=v.join("."),e.rnamespace=e.namespace?new RegExp("(^|\\.)"+v.join("\\.(?:.*\\.|)")+"(\\.|$)"):null,e.result=void 0,e.target||(e.target=r),t=null==t?[e]:E.makeArray(t,[e]),f=E.event.special[m]||{},i||!f.trigger||!1!==f.trigger.apply(r,t))){if(!i&&!f.noBubble&&!y(r)){for(l=f.delegateType||m,jt.test(l+m)||(a=a.parentNode);a;a=a.parentNode)h.push(a),s=a;s===(r.ownerDocument||b)&&h.push(s.defaultView||s.parentWindow||n)}for(o=0;(a=h[o++])&&!e.isPropagationStopped();)d=a,e.type=o>1?l:f.bindType||m,(c=(ae.get(a,"events")||Object.create(null))[e.type]&&ae.get(a,"handle"))&&c.apply(a,t),(c=u&&a[u])&&c.apply&&ie(a)&&(e.result=c.apply(a,t),!1===e.result&&e.preventDefault());return e.type=m,i||e.isDefaultPrevented()||f._default&&!1!==f._default.apply(h.pop(),t)||!ie(r)||u&&g(r[m])&&!y(r)&&((s=r[u])&&(r[u]=null),E.event.triggered=m,e.isPropagationStopped()&&d.addEventListener(m,Nt),r[m](),e.isPropagationStopped()&&d.removeEventListener(m,Nt),E.event.triggered=void 0,s&&(r[u]=s)),e.result}},simulate:function(e,t,n){var r=E.extend(new E.Event,n,{type:e,isSimulated:!0});E.event.trigger(r,null,t)}}),E.fn.extend({trigger:function(e,t){return this.each((function(){E.event.trigger(e,t,this)}))},triggerHandler:function(e,t){var n=this[0];if(n)return E.event.trigger(e,t,n,!0)}});var Dt=/\[\]$/,Lt=/\r?\n/g,Rt=/^(?:submit|button|image|reset|file)$/i,It=/^(?:input|select|textarea|keygen)/i;function Mt(e,t,n,r){var i;if(Array.isArray(t))E.each(t,(function(t,i){n||Dt.test(e)?r(e,i):Mt(e+"["+("object"==typeof i&&null!=i?t:"")+"]",i,n,r)}));else if(n||"object"!==k(t))r(e,t);else for(i in t)Mt(e+"["+i+"]",t[i],n,r)}E.param=function(e,t){var n,r=[],i=function(e,t){var n=g(t)?t():t;r[r.length]=encodeURIComponent(e)+"="+encodeURIComponent(null==n?"":n)};if(null==e)return"";if(Array.isArray(e)||e.jquery&&!E.isPlainObject(e))E.each(e,(function(){i(this.name,this.value)}));else for(n in e)Mt(n,e[n],t,i);return r.join("&")},E.fn.extend({serialize:function(){return E.param(this.serializeArray())},serializeArray:function(){return this.map((function(){var e=E.prop(this,"elements");return e?E.makeArray(e):this})).filter((function(){var e=this.type;return this.name&&!E(this).is(":disabled")&&It.test(this.nodeName)&&!Rt.test(e)&&(this.checked||!Ee.test(e))})).map((function(e,t){var n=E(this).val();return null==n?null:Array.isArray(n)?E.map(n,(function(e){return{name:t.name,value:e.replace(Lt,"\r\n")}})):{name:t.name,value:n.replace(Lt,"\r\n")}})).get()}});var zt=/%20/g,Ht=/#.*$/,$t=/([?&])_=[^&]*/,Ut=/^(.*?):[ \t]*([^\r\n]*)$/gm,Bt=/^(?:GET|HEAD)$/,Ft=/^\/\//,qt={},Wt={},Vt="*/".concat("*"),Xt=b.createElement("a");function Gt(e){return function(t,n){"string"!=typeof t&&(n=t,t="*");var r,i=0,o=t.toLowerCase().match(V)||[];if(g(n))for(;r=o[i++];)"+"===r[0]?(r=r.slice(1)||"*",(e[r]=e[r]||[]).unshift(n)):(e[r]=e[r]||[]).push(n)}}function Kt(e,t,n,r){var i={},o=e===Wt;function a(s){var l;return i[s]=!0,E.each(e[s]||[],(function(e,s){var u=s(t,n,r);return"string"!=typeof u||o||i[u]?o?!(l=u):void 0:(t.dataTypes.unshift(u),a(u),!1)})),l}return a(t.dataTypes[0])||!i["*"]&&a("*")}function Yt(e,t){var n,r,i=E.ajaxSettings.flatOptions||{};for(n in t)void 0!==t[n]&&((i[n]?e:r||(r={}))[n]=t[n]);return r&&E.extend(!0,e,r),e}Xt.href=Ot.href,E.extend({active:0,lastModified:{},etag:{},ajaxSettings:{url:Ot.href,type:"GET",isLocal:/^(?:about|app|app-storage|.+-extension|file|res|widget):$/.test(Ot.protocol),global:!0,processData:!0,async:!0,contentType:"application/x-www-form-urlencoded; charset=UTF-8",accepts:{"*":Vt,text:"text/plain",html:"text/html",xml:"application/xml, text/xml",json:"application/json, text/javascript"},contents:{xml:/\bxml\b/,html:/\bhtml/,json:/\bjson\b/},responseFields:{xml:"responseXML",text:"responseText",json:"responseJSON"},converters:{"* text":String,"text html":!0,"text json":JSON.parse,"text xml":E.parseXML},flatOptions:{url:!0,context:!0}},ajaxSetup:function(e,t){return t?Yt(Yt(e,E.ajaxSettings),t):Yt(E.ajaxSettings,e)},ajaxPrefilter:Gt(qt),ajaxTransport:Gt(Wt),ajax:function(e,t){"object"==typeof e&&(t=e,e=void 0),t=t||{};var r,i,o,a,s,l,u,c,f,d,p=E.ajaxSetup({},t),h=p.context||p,m=p.context&&(h.nodeType||h.jquery)?E(h):E.event,v=E.Deferred(),g=E.Callbacks("once memory"),y=p.statusCode||{},w={},_={},k="canceled",x={readyState:0,getResponseHeader:function(e){var t;if(u){if(!a)for(a={};t=Ut.exec(o);)a[t[1].toLowerCase()+" "]=(a[t[1].toLowerCase()+" "]||[]).concat(t[2]);t=a[e.toLowerCase()+" "]}return null==t?null:t.join(", ")},getAllResponseHeaders:function(){return u?o:null},setRequestHeader:function(e,t){return null==u&&(e=_[e.toLowerCase()]=_[e.toLowerCase()]||e,w[e]=t),this},overrideMimeType:function(e){return null==u&&(p.mimeType=e),this},statusCode:function(e){var t;if(e)if(u)x.always(e[x.status]);else for(t in e)y[t]=[y[t],e[t]];return this},abort:function(e){var t=e||k;return r&&r.abort(t),S(0,t),this}};if(v.promise(x),p.url=((e||p.url||Ot.href)+"").replace(Ft,Ot.protocol+"//"),p.type=t.method||t.type||p.method||p.type,p.dataTypes=(p.dataType||"*").toLowerCase().match(V)||[""],null==p.crossDomain){l=b.createElement("a");try{l.href=p.url,l.href=l.href,p.crossDomain=Xt.protocol+"//"+Xt.host!=l.protocol+"//"+l.host}catch(e){p.crossDomain=!0}}if(p.data&&p.processData&&"string"!=typeof p.data&&(p.data=E.param(p.data,p.traditional)),Kt(qt,p,t,x),u)return x;for(f in(c=E.event&&p.global)&&0==E.active++&&E.event.trigger("ajaxStart"),p.type=p.type.toUpperCase(),p.hasContent=!Bt.test(p.type),i=p.url.replace(Ht,""),p.hasContent?p.data&&p.processData&&0===(p.contentType||"").indexOf("application/x-www-form-urlencoded")&&(p.data=p.data.replace(zt,"+")):(d=p.url.slice(i.length),p.data&&(p.processData||"string"==typeof p.data)&&(i+=(Pt.test(i)?"&":"?")+p.data,delete p.data),!1===p.cache&&(i=i.replace($t,"$1"),d=(Pt.test(i)?"&":"?")+"_="+At.guid+++d),p.url=i+d),p.ifModified&&(E.lastModified[i]&&x.setRequestHeader("If-Modified-Since",E.lastModified[i]),E.etag[i]&&x.setRequestHeader("If-None-Match",E.etag[i])),(p.data&&p.hasContent&&!1!==p.contentType||t.contentType)&&x.setRequestHeader("Content-Type",p.contentType),x.setRequestHeader("Accept",p.dataTypes[0]&&p.accepts[p.dataTypes[0]]?p.accepts[p.dataTypes[0]]+("*"!==p.dataTypes[0]?", "+Vt+"; q=0.01":""):p.accepts["*"]),p.headers)x.setRequestHeader(f,p.headers[f]);if(p.beforeSend&&(!1===p.beforeSend.call(h,x,p)||u))return x.abort();if(k="abort",g.add(p.complete),x.done(p.success),x.fail(p.error),r=Kt(Wt,p,t,x)){if(x.readyState=1,c&&m.trigger("ajaxSend",[x,p]),u)return x;p.async&&p.timeout>0&&(s=n.setTimeout((function(){x.abort("timeout")}),p.timeout));try{u=!1,r.send(w,S)}catch(e){if(u)throw e;S(-1,e)}}else S(-1,"No Transport");function S(e,t,a,l){var f,d,b,w,_,k=t;u||(u=!0,s&&n.clearTimeout(s),r=void 0,o=l||"",x.readyState=e>0?4:0,f=e>=200&&e<300||304===e,a&&(w=function(e,t,n){for(var r,i,o,a,s=e.contents,l=e.dataTypes;"*"===l[0];)l.shift(),void 0===r&&(r=e.mimeType||t.getResponseHeader("Content-Type"));if(r)for(i in s)if(s[i]&&s[i].test(r)){l.unshift(i);break}if(l[0]in n)o=l[0];else{for(i in n){if(!l[0]||e.converters[i+" "+l[0]]){o=i;break}a||(a=i)}o=o||a}if(o)return o!==l[0]&&l.unshift(o),n[o]}(p,x,a)),!f&&E.inArray("script",p.dataTypes)>-1&&E.inArray("json",p.dataTypes)<0&&(p.converters["text script"]=function(){}),w=function(e,t,n,r){var i,o,a,s,l,u={},c=e.dataTypes.slice();if(c[1])for(a in e.converters)u[a.toLowerCase()]=e.converters[a];for(o=c.shift();o;)if(e.responseFields[o]&&(n[e.responseFields[o]]=t),!l&&r&&e.dataFilter&&(t=e.dataFilter(t,e.dataType)),l=o,o=c.shift())if("*"===o)o=l;else if("*"!==l&&l!==o){if(!(a=u[l+" "+o]||u["* "+o]))for(i in u)if((s=i.split(" "))[1]===o&&(a=u[l+" "+s[0]]||u["* "+s[0]])){!0===a?a=u[i]:!0!==u[i]&&(o=s[0],c.unshift(s[1]));break}if(!0!==a)if(a&&e.throws)t=a(t);else try{t=a(t)}catch(e){return{state:"parsererror",error:a?e:"No conversion from "+l+" to "+o}}}return{state:"success",data:t}}(p,w,x,f),f?(p.ifModified&&((_=x.getResponseHeader("Last-Modified"))&&(E.lastModified[i]=_),(_=x.getResponseHeader("etag"))&&(E.etag[i]=_)),204===e||"HEAD"===p.type?k="nocontent":304===e?k="notmodified":(k=w.state,d=w.data,f=!(b=w.error))):(b=k,!e&&k||(k="error",e<0&&(e=0))),x.status=e,x.statusText=(t||k)+"",f?v.resolveWith(h,[d,k,x]):v.rejectWith(h,[x,k,b]),x.statusCode(y),y=void 0,c&&m.trigger(f?"ajaxSuccess":"ajaxError",[x,p,f?d:b]),g.fireWith(h,[x,k]),c&&(m.trigger("ajaxComplete",[x,p]),--E.active||E.event.trigger("ajaxStop")))}return x},getJSON:function(e,t,n){return E.get(e,t,n,"json")},getScript:function(e,t){return E.get(e,void 0,t,"script")}}),E.each(["get","post"],(function(e,t){E[t]=function(e,n,r,i){return g(n)&&(i=i||r,r=n,n=void 0),E.ajax(E.extend({url:e,type:t,dataType:i,data:n,success:r},E.isPlainObject(e)&&e))}})),E.ajaxPrefilter((function(e){var t;for(t in e.headers)"content-type"===t.toLowerCase()&&(e.contentType=e.headers[t]||"")})),E._evalUrl=function(e,t,n){return E.ajax({url:e,type:"GET",dataType:"script",cache:!0,async:!1,global:!1,converters:{"text script":function(){}},dataFilter:function(e){E.globalEval(e,t,n)}})},E.fn.extend({wrapAll:function(e){var t;return this[0]&&(g(e)&&(e=e.call(this[0])),t=E(e,this[0].ownerDocument).eq(0).clone(!0),this[0].parentNode&&t.insertBefore(this[0]),t.map((function(){for(var e=this;e.firstElementChild;)e=e.firstElementChild;return e})).append(this)),this},wrapInner:function(e){return g(e)?this.each((function(t){E(this).wrapInner(e.call(this,t))})):this.each((function(){var t=E(this),n=t.contents();n.length?n.wrapAll(e):t.append(e)}))},wrap:function(e){var t=g(e);return this.each((function(n){E(this).wrapAll(t?e.call(this,n):e)}))},unwrap:function(e){return this.parent(e).not("body").each((function(){E(this).replaceWith(this.childNodes)})),this}}),E.expr.pseudos.hidden=function(e){return!E.expr.pseudos.visible(e)},E.expr.pseudos.visible=function(e){return!!(e.offsetWidth||e.offsetHeight||e.getClientRects().length)},E.ajaxSettings.xhr=function(){try{return new n.XMLHttpRequest}catch(e){}};var Zt={0:200,1223:204},Qt=E.ajaxSettings.xhr();v.cors=!!Qt&&"withCredentials"in Qt,v.ajax=Qt=!!Qt,E.ajaxTransport((function(e){var t,r;if(v.cors||Qt&&!e.crossDomain)return{send:function(i,o){var a,s=e.xhr();if(s.open(e.type,e.url,e.async,e.username,e.password),e.xhrFields)for(a in e.xhrFields)s[a]=e.xhrFields[a];for(a in e.mimeType&&s.overrideMimeType&&s.overrideMimeType(e.mimeType),e.crossDomain||i["X-Requested-With"]||(i["X-Requested-With"]="XMLHttpRequest"),i)s.setRequestHeader(a,i[a]);t=function(e){return function(){t&&(t=r=s.onload=s.onerror=s.onabort=s.ontimeout=s.onreadystatechange=null,"abort"===e?s.abort():"error"===e?"number"!=typeof s.status?o(0,"error"):o(s.status,s.statusText):o(Zt[s.status]||s.status,s.statusText,"text"!==(s.responseType||"text")||"string"!=typeof s.responseText?{binary:s.response}:{text:s.responseText},s.getAllResponseHeaders()))}},s.onload=t(),r=s.onerror=s.ontimeout=t("error"),void 0!==s.onabort?s.onabort=r:s.onreadystatechange=function(){4===s.readyState&&n.setTimeout((function(){t&&r()}))},t=t("abort");try{s.send(e.hasContent&&e.data||null)}catch(e){if(t)throw e}},abort:function(){t&&t()}}})),E.ajaxPrefilter((function(e){e.crossDomain&&(e.contents.script=!1)})),E.ajaxSetup({accepts:{script:"text/javascript, application/javascript, application/ecmascript, application/x-ecmascript"},contents:{script:/\b(?:java|ecma)script\b/},converters:{"text script":function(e){return E.globalEval(e),e}}}),E.ajaxPrefilter("script",(function(e){void 0===e.cache&&(e.cache=!1),e.crossDomain&&(e.type="GET")})),E.ajaxTransport("script",(function(e){var t,n;if(e.crossDomain||e.scriptAttrs)return{send:function(r,i){t=E(" + + + + +PrimeWire - Social Movie & TV Tracker + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ +
+

+Legal Stuff +

+ +

General

+

Our terms of service are to be taken into consideration and adhered to at all times whilst using the site. All users are advised that access to this site and the use of the services detailed therein are strictly conditional upon your confirmation that you comply fully with our terms of use. By proceeding to surf primewire.ag or otherwise using this site, you signify your unequivocal acceptance of these and any other terms prevailing at this or at any future time.

+

Governing Law

+

The governing law imposed will be that of the Klingon Empire, the country in which primewire.ag is based and from which all services are provided.

+

Relationship

+

The relationship between you (the user) and us (primewire.ag, our agents and partners) is that we provide you with access to the referencing material and media contained within our site, which is provided to you on a purely non commercial basis and is, therefore, not that of customer and supplier.

+

Content

+

primewire.ag does not host, provide, archive, store, or distribute media of any kind, and acts merely as an index (or directory) of media posted by other webmasters on the internet, which is completely outside of our control.

+

Whereas we do not filter such references, we cannot and do not attempt to control, censor, or block any indexed material that may be considered offensive, abusive, libellous, obnoxious, inaccurate, deceptive, unlawful or otherwise distressing neither do we accept responsibility for this content or the consequences of such content being made available.

+

Material may be inappropriately described or subject to restrictions such as copyright, licensing and other limitations and it is the sole responsibility of those having access to such material to comply with any or all lawful obligations arising from such material coming into their possession and, thus mitigate any alleged transgression.

+

All users warrant that they are 18 years of age or older, and, therefore, qualified to enter into this agreement either as an individual or as a corporate entity.

+

All users undertake to comply with the national laws applicable to the country they reside in and observe the rights inherent in any copyright material whilst upholding the rights of any copyright owner.

+

All users are advised to use caution, discretion, common sense and personal judgment when using primewire.ag or any references detailed within the directory and to respect the wishes of others who may value freedom from censorship, as consenting adults equal to (or possibly superior to) your own personal preferences.

+

Quality Of Service

+

primewire.ag does not provide commercial services and there are no actual or implied guarantees as to the availability of service or the speed, operation or function of this site, which is offered on a basis to those who choose to comply with the terms detailed within and access the �free� contents of this site.

+

Privacy, Spam & Unsolicited Contact

+

This site will comply with the requirements of any law enforcement or other officials, Courts, Police or others with a legitimate interest in the official investigation or enforcement of law applicable to the country in which our service is provided, United Kingdom.

+

The protection of the rights of others is of paramount importance to primewire.ag, and this extends to your adherence to intellectual property law, the laws prevailing in your country or residence (or any temporary residence), the rights of others to enjoy freedom from slander, libel, defamation, provocation, harassment, discrimination of any kind or any other action that may be deemed offensive by the individual concerned or the management of this site.

+

Users may not use the primewire.ag site or any facilities provided by us to spam, market or promote any goods, services, membership or other websites.

+

Intellectual Property - General

+

primewire.ag respects the rights of others, and prohibits the use of referenced material for any purpose other than that for which it is intended (where such use is lawful and free of civil liability or other constraint) and in such circumstances where possession of such material may have any adverse financial, prejudicial or any other effect on any other third party.

+

primewire.ag is copyrighted, and all rights are reserved, as those are of the proprietors and those of the partners websites material referenced within. Anyone found imitating the site or stealing content from the site will be liable to prosecution.

+

Definitions

+

The term �the site� applies to the site (primewire.ag), its staff, administration, owners, agents, representatives, suppliers and partners. The term �the user� applies to any site visitor who wishes to proceed surfing the site once arriving at primewire.ag.

+

Agreement

+

In usage of this site, or by otherwise using this site, you (the user), hereby undertake to adhere to the terms of use detailed herein and any others appended hereto, without evasion, equivocation or reservation of any kind, in the knowledge that failure to comply with the terms will result in suspension or denial of your access to the site and potential legal and civil penalties, together with the right to make the full circumstances publicly known.

+

Your Privacy

+

primewire.ag is committed to protecting your privacy. primewire.ag does not sell, trade or rent your personal information to any other companies. primewire.ag will not collect any personal information about you except when you specifically and knowingly provide such information when registering for the site.

+

By using our Website, you consent to the collection and use of this information by primewire.ag. If we decide to change our privacy policy, we will post any changes to this page so that you are always aware of which information we collect, how we use it, and under which circumstances we disclose it.

+ +
+
+ + +
+ + +
+ + + + + + +
+ +
+ + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tfmovie1334196-el-camino-a-breaking-bad-movie b/src/source/__fixtures__/PrimeWire/https:www.primewire.tfmovie1334196-el-camino-a-breaking-bad-movie new file mode 100644 index 0000000..7fe4505 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tfmovie1334196-el-camino-a-breaking-bad-movie @@ -0,0 +1,1747 @@ + + + + + + + + + + +El Camino: A Breaking Bad Movie (2019) | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + +
+[X] +
+ Report Link +
+
Video has been deleted
+
Wrong video
+
Audio out of sync
+
There was an error converting the video
+
Other (explain below)
+
+
+
+ Details:
+ +
+ +
+
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+Finally free from torture and slavery at the hands of Tod’s uncle Jack, and from Mr. White, Jesse must escape demons from his past. He’s on the run from a police manhunt, with his only hope of escape being Saul Goodman’s hoover guy, Ed Galbraith. A man who for the right price, can give you a new identity and a fresh start. Jesse is racing against the clock, with help from his crew, avoiding capture to get enough money together to buy a ‘new dust filter for his Hoover MaxExtract PressurePro model’, a new life. + +

+
+
+ + + + + +
+
+
    + +
  • Currently 4.25/5
  • +
  • +
  • +
  • +
  • +
  • +
+
(56 votes)
+
+ + + + + +
+ + + + + + + +
+ +
+
+ +
+ + +
+
Ratings:IMDB: + + 7.3/10 + +
Released: + +October 11, 2019 + +
Runtime: +122 min +
Genres: + + Action + + Drama + + Crime + +
Countries: + + United States + +
Companies: + + Netflix + + Sony Pictures Television + + High Bridge Productions + + Sony Pictures Television Studios + + Gran Via Productions + + High Bridge Entertainment + +
Cast: + + + Jonathan Banks + + + + Matt Jones + + + + Aaron Paul + + + +
Crew: + + + Vince Gilligan + + + +
+ + + + + + + + +
+
+ + + + + + + + + + + + +
+ + +
+ + + +
+ +

Trailers (7)

+ + + + +

Free Links

+
+ + + + + + + + + + + + + + + + + + +
+ + + Version 1 + + + + + + + + + 1.1 GB + + + +mixdrop.ag + 142 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 2 + + + + + + + + + 380.3 MB + + + +mixdrop.ag + 431 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 3 + + + + + + + + + 1.1 GB + + + +mixdrop.ag + 161 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 4 + + + + + + + 1.1 GB + + + +voe.sx + 93 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 5 + + + + + + + 1.1 GB + + + +voe.sx + 90 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 6 + + + + + + + 1.1 GB + + + +voe.sx + 6 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 7 + + + + + + + + +filelions.to + 16 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 8 + + + + + + + + +filelions.to + 24 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 9 + + + + + + + + +streamwish.to + 41 views + + Report Link + + +
+
    + +
  • Currently 3.361904761904762/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(210 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 10 + + + + + + + 1.2 GB + + + +dood.watch + 82 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 11 + + + + + + + 1.1 GB + + + +dood.watch + 34 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 12 + + + + + + + 1.1 GB + + + +dood.watch + 29 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 13 + + + + + + + + + 1.2 GB + + + +streamtape.com + 225 views + + Report Link + + +
+
    + +
  • Currently 3.5/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(60 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 14 + + + + + + + + + 1.2 GB + + + +streamtape.com + 13 views + + Report Link + + +
+
    + +
  • Currently 3.5/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(60 votes)
+
+
+
+
+
+
+ + + + + + + + + + + + +
= Low Quality= Medium Quality= High QualityHow do I watch these?
+ + +
+

Search on other sites

+ +
+ + + +

+Streaming Services + + + +

+ +
+ + + + +Subscription + + + + +
+ +
+ + + +

Popular PlaylistsMore

+ + +
+

Similar TitlesMore

+
+
+ + +

El Camino: A Breaking Bad Movie Comments

+ + +

Post a Comment

+ + + +
Please login to make a comment
+ +

+Comments + + + +

+ + + + +
+ + +
+ + + +
+ + +
+ + +
+ + + + + + +
+ +
+ + + + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432-the-walking-dead-dead-city b/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432-the-walking-dead-dead-city new file mode 100644 index 0000000..559a6a1 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432-the-walking-dead-dead-city @@ -0,0 +1,1342 @@ + + + + + + + + + + +The Walking Dead: Dead City (2023) | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + +
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+The Walking Dead: Dead City envisions the popular Maggie and Negan characters travelling into a post-apocalyptic Manhattan long ago cut off from the mainland. The crumbling city is filled with the dead and denizens who have made New York City their own world full of anarchy, danger, beauty, and terror. +

+
+
+ + + + + +
To Be Determined
+
+
+
    + +
  • Currently 80.0/5
  • +
  • +
  • +
  • +
  • +
  • +
+
(47 votes)
+
+ + + + + +
+ + + + + + + +
+ +
+
+ +
+ + +
Ratings:TVMaze: + + 7.1/10 + +
Released: + +June 15, 2023 + +
Genres: + + Action + + Drama + + Horror + +
AKA: + Isle of the Dead +
Countries: + + United States + +
Companies: + + AMC Studios + + Idiotbox + + Skybound Entertainment + + Valhalla Entertainment + + Circle of Confusion + + Schneibot + + AMC+ + +
Cast: + + + Jeffrey Dean Morgan + + + + Keir Gilchrist + + + + Lauren Cohan + + + + Željko Ivanek + + + + Gaius Charles + + + + Dascha Polanco + + + + Lisa Emery + + + + Mahina Napoleon + + + + Logan Kim + + + +
Crew: + + + Robert Kirkman + + + + Gale Anne Hurd + + + + Ryan Degard + + + + Scott M. Gimple + + + + David Alpert + + + + Greg Nicotero + + + + Llewellyn Wells + + + + Stephanie Maslansky + + + + Scott P. Murphy + + + + Christine Kromer + + + + Terry Stacey + + + + 21 more + + +
+ + + + + + +
+
+ + + + + + + + + + + + + + + + + + + +
+ +
+ + + +
+ +

Trailers (6)

+ + + + +

Episodes

+ + +

Search on other sites

+ +
+ + + +

+Streaming Services + + + +

+ + + +
+ +
+ + + +

Popular PlaylistsMore

+ + +
+

Similar TitlesMore

+
+
+ +

The Walking Dead: Dead City Comments

+ + + +

Post a Comment

+ + + +
Please login to make a comment
+ +

+Comments + + + +

+ + + + +
+ + +
+ +
+ + +
+ + +
+ + + + + + +
+ +
+ + + +
+ +
+ + + diff --git a/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432the-walking-dead-dead-city-season-2-episode-5 b/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432the-walking-dead-dead-city-season-2-episode-5 new file mode 100644 index 0000000..a1d31c9 --- /dev/null +++ b/src/source/__fixtures__/PrimeWire/https:www.primewire.tftv1423432the-walking-dead-dead-city-season-2-episode-5 @@ -0,0 +1,2687 @@ + + + + + + + + + + +The Walking Dead: Dead City (2023) Season 2 Episode 5: The Bird Always Knows | PrimeWire + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+
+
+ + + +
+
+ + + + + +
Email service has been restored so that account creation, pasword resets, and requesting email confirmation etc work again.
+
+ + + + +
+[X] +
+ Report Link +
+
Video has been deleted
+
Wrong video
+
Audio out of sync
+
There was an error converting the video
+
Other (explain below)
+
+
+
+ Details:
+ +
+ +
+
+
+
+

+ + +The Walking Dead: Dead City (2023) + + > + + Season 2 + + > + Episode 5 + +

+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+

+Negan makes some big moves, while Maggie takes matters into her own hands. +

+
+
+ + + + + +
To Be Determined
+
+
+
    + +
  • Currently 5.0/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(11 votes)
+ +
+ + +
Title:The Bird Always Knows
Air Date:June 1, 2025
Runtime: + + Unknown + +
Genres: + + Action + + Drama + + Horror + +
+ + + + + + + + +
+
+ + + + + + + + + + + + + + + + + + + +
+
+
+ + +
+ + + +
+

+ Free Links + + + + + + +

+ + + +
+ + + + + + + + + + + + + + + + + + +
+ + + Version 1 + + + + + + + + + + +mixdrop.ag + 315 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 2 + + + + + + + + + + +mixdrop.ag + 307 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 3 + + + + + + + + + + +mixdrop.ag + 271 views + + Report Link + + +
+
    + +
  • Currently 3.152641878669276/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(511 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 4 + + + + + + + 424.4 MB + + + +voe.sx + 239 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 5 + + + + + + + 406.6 MB + + + +voe.sx + 200 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 6 + + + + + + + 406.6 MB + + + +voe.sx + 17 views + + Report Link + + +
+
    + +
  • Currently 3.4075235109717865/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(319 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 7 + + + + + + + + +filelions.to + 44 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 8 + + + + + + + + +filelions.to + 50 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 9 + + + + + + + + +filelions.to + 44 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 10 + + + + + + + + +filelions.to + 48 views + + Report Link + + +
+
    + +
  • Currently 3.3987730061349692/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(163 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 11 + + + + + + + + +streamwish.to + 46 views + + Report Link + + +
+
    + +
  • Currently 3.361904761904762/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(210 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 12 + + + + + + + + +streamwish.to + 41 views + + Report Link + + +
+
    + +
  • Currently 3.361904761904762/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(210 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 13 + + + + + + + + +streamwish.to + 54 views + + Report Link + + +
+
    + +
  • Currently 3.361904761904762/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(210 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 14 + + + + + + + + +vidmoly.me + 14 views + + Report Link + + +
+
    + +
  • Currently 3.5180722891566263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(83 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 15 + + + + + + + + +vidmoly.me + 15 views + + Report Link + + +
+
    + +
  • Currently 3.5180722891566263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(83 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 16 + + + + + + + + +vidmoly.me + 18 views + + Report Link + + +
+
    + +
  • Currently 3.5180722891566263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(83 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 17 + + + + + + + + +vidmoly.me + 16 views + + Report Link + + +
+
    + +
  • Currently 3.5180722891566263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(83 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 18 + + + + + + + + +dood.watch + 45 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 19 + + + + + + + + +dood.watch + 54 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 20 + + + + + + + + +dood.watch + 57 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 21 + + + + + + + + +dood.watch + 52 views + + Report Link + + +
+
    + +
  • Currently 3.293040293040293/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(273 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 22 + + + + + + + + +streamplay.to + 70 views + + Report Link + + +
+
    + +
  • Currently 3.341935483870968/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(155 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 23 + + + + + + + + +streamplay.to + 68 views + + Report Link + + +
+
    + +
  • Currently 3.341935483870968/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(155 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 24 + + + + + + + + +streamplay.to + 0 views + + Report Link + + +
+
    + +
  • Currently 3.341935483870968/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(155 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 25 + + + + + + + + + 361.7 MB + + + +streamtape.com + 53 views + + Report Link + + +
+
    + +
  • Currently 3.5/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(60 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 26 + + + + + + + + + 406.6 MB + + + +streamtape.com + 47 views + + Report Link + + +
+
    + +
  • Currently 3.5/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(60 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 27 + + + + + + + + +filemoon.sx + 11 views + + Report Link + + +
+
    + +
  • Currently 3.8/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(20 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 28 + + + + + + + + +filemoon.sx + 19 views + + Report Link + + +
+
    + +
  • Currently 3.8/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(20 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 29 + + + + + + + + +dropload.io + 30 views + + Report Link + + +
+
    + +
  • Currently 3.518518518518518/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(27 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 30 + + + + + + + + +dropload.io + 23 views + + Report Link + + +
+
    + +
  • Currently 3.518518518518518/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(27 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 31 + + + + + + + + +savefiles.com + 17 views + + Report Link + + +
+
    + +
  • Currently 3.4285714285714284/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(21 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 32 + + + + + + + + +savefiles.com + 14 views + + Report Link + + +
+
    + +
  • Currently 3.4285714285714284/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(21 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 33 + + + + + + + + +savefiles.com + 16 views + + Report Link + + +
+
    + +
  • Currently 3.4285714285714284/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(21 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 34 + + + + + + + + +luluvdoo.com + 24 views + + Report Link + + +
+
    + +
  • Currently 3.3529411764705883/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(17 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 35 + + + + + + + + +luluvdoo.com + 21 views + + Report Link + + +
+
    + +
  • Currently 3.3529411764705883/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(17 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 36 + + + + + + + + +luluvdoo.com + 32 views + + Report Link + + +
+
    + +
  • Currently 3.3529411764705883/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(17 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 37 + + + + + + + + +filegram.to + 19 views + + Report Link + + +
+
    + +
  • Currently 3.555555555555556/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(9 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 38 + + + + + + + + +filegram.to + 14 views + + Report Link + + +
+
    + +
  • Currently 3.555555555555556/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(9 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 39 + + + + + + + + +filegram.to + 15 views + + Report Link + + +
+
    + +
  • Currently 3.555555555555556/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(9 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 40 + + + + + + + + +bigwarp.cc + 13 views + + Report Link + + +
+
    + +
  • Currently 2.894736842105263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(19 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 41 + + + + + + + + +bigwarp.cc + 19 views + + Report Link + + +
+
    + +
  • Currently 2.894736842105263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(19 votes)
+
+
+
+
+
+ + + + + + + + + + + + +
+ + + Version 42 + + + + + + + + +bigwarp.cc + 20 views + + Report Link + + +
+
    + +
  • Currently 2.894736842105263/5
  • +
  • +
  • +
  • +
  • +
  • +
+
+
(19 votes)
+
+
+
+
+
+
+ + + + + + + + + + + + +
= Low Quality= Medium Quality= High QualityHow do I watch these?
+ + +
+ +

Search on other sites

+ +
+ +
+ + +

The Walking Dead: Dead City ( S2 E5 ) Comments

+ + +

Post a Comment

+ + + +
Please login to make a comment
+ +

+Comments + + + +

+ + + + +
+ + +
+ + + +
+ + +
+ + +
+ + + + + + +
+ +
+ + + + + +
+ +
+ + + diff --git a/src/source/__snapshots__/PrimeWire.test.ts.snap b/src/source/__snapshots__/PrimeWire.test.ts.snap new file mode 100644 index 0000000..d18947d --- /dev/null +++ b/src/source/__snapshots__/PrimeWire.test.ts.snap @@ -0,0 +1,296 @@ +// Jest Snapshot v1, https://jestjs.io/docs/snapshot-testing + +exports[`PrimeWire handle el camino 1`] = ` +[ + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/4njk6691b1k60d", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/2bnmi", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/ql0qrxnjb89nx8", + }, + { + "countryCode": "en", + "url": "https://voe.sx/paqi7qqku3zi", + }, + { + "countryCode": "en", + "url": "https://voe.sx/ysimllytd3zo", + }, + { + "countryCode": "en", + "url": "https://voe.sx/xwhvakkexuob", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/wayeo7l1cw7d", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/bv4b7tl9u1ij", + }, + { + "countryCode": "en", + "url": "https://streamwish.to/09q73jf6t6jw", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/05fm25orfeux", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/9lw62yyosxc0", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/j2pa25q11pdu", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/qMVMPa49M1hz8BR/El.Camino.A.Breaking.Bad.Movie.2019.1080p.WEBRip.x264_YTS.LT.mp4", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/6QLoLq0O8DtObX", + }, +] +`; + +exports[`PrimeWire handle el camino 2`] = ` +[ + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/4njk6691b1k60d", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/2bnmi", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/ql0qrxnjb89nx8", + }, + { + "countryCode": "en", + "url": "https://voe.sx/paqi7qqku3zi", + }, + { + "countryCode": "en", + "url": "https://voe.sx/ysimllytd3zo", + }, + { + "countryCode": "en", + "url": "https://voe.sx/xwhvakkexuob", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/wayeo7l1cw7d", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/bv4b7tl9u1ij", + }, + { + "countryCode": "en", + "url": "https://streamwish.to/09q73jf6t6jw", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/05fm25orfeux", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/9lw62yyosxc0", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/j2pa25q11pdu", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/qMVMPa49M1hz8BR/El.Camino.A.Breaking.Bad.Movie.2019.1080p.WEBRip.x264_YTS.LT.mp4", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/6QLoLq0O8DtObX", + }, +] +`; + +exports[`PrimeWire handle imdb dead city s2e5 1`] = ` +[ + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/q1pz4k94uxxkgvo", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/nlpj3q3ran17rv", + }, + { + "countryCode": "en", + "url": "https://mixdrop.ag/f/9wvz9gp3b3q1llk", + }, + { + "countryCode": "en", + "url": "https://voe.sx/grsvpdbxvw3e", + }, + { + "countryCode": "en", + "url": "https://voe.sx/te40pmzra8du", + }, + { + "countryCode": "en", + "url": "https://voe.sx/y8lrmf2t7jhp", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/eqmzrkv5kf5s", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/0i0j0qz5o478", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/odssr9dyjx5n", + }, + { + "countryCode": "en", + "url": "https://filelions.to/f/fpru8wthtsf4", + }, + { + "countryCode": "en", + "url": "https://streamwish.to/jult1lcvqjlt", + }, + { + "countryCode": "en", + "url": "https://streamwish.to/h9p9qqgpq2lw", + }, + { + "countryCode": "en", + "url": "https://streamwish.to/s986lkdy8mb5", + }, + { + "countryCode": "en", + "url": "https://vidmoly.me/w/g1ob8a8h5pc8", + }, + { + "countryCode": "en", + "url": "http://vidmoly.me/w/46bi0sec0966", + }, + { + "countryCode": "en", + "url": "https://vidmoly.me/w/awjd3z0t0i9l", + }, + { + "countryCode": "en", + "url": "http://vidmoly.me/w/okcwblnaqw3t", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/sn87i3ru7plx", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/8odyvc9bre16", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/1qfuy5yiq4r6", + }, + { + "countryCode": "en", + "url": "https://dood.watch/d/reslxv9siz41", + }, + { + "countryCode": "en", + "url": "https://streamplay.to/qyn6mtz6w3sr", + }, + { + "countryCode": "en", + "url": "https://streamplay.to/m1j7zix6ny8u", + }, + { + "countryCode": "en", + "url": "https://streamplay.to/yrkzvpayg27o", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/Ap0GJoXglaFbqK/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv.mp4", + }, + { + "countryCode": "en", + "url": "https://streamtape.com/v/g3dQvLvy9QsJqo/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv.mp4", + }, + { + "countryCode": "en", + "url": "https://filemoon.sx/d/8wllnog0cyl7", + }, + { + "countryCode": "en", + "url": "https://filemoon.sx/d/ftowmfa7f0ge/The.Walking.Dead.Dead.City.S02E05.The.Bird.Always.Knows.720p.AMZN.WEB-DL.DDP5.1.H.264-NTb.mkv", + }, + { + "countryCode": "en", + "url": "https://dropload.io/ubaaot4b6pfw", + }, + { + "countryCode": "en", + "url": "https://dropload.io/boj6hx5v0j96", + }, + { + "countryCode": "en", + "url": "https://savefiles.com/dkq2hy8nt1s8", + }, + { + "countryCode": "en", + "url": "https://savefiles.com/i0bj9gazequy", + }, + { + "countryCode": "en", + "url": "https://savefiles.com/tsbt84uhcvnv", + }, + { + "countryCode": "en", + "url": "https://luluvdoo.com/nrcy0m01ce37", + }, + { + "countryCode": "en", + "url": "https://luluvdoo.com/2lyf7xx54140", + }, + { + "countryCode": "en", + "url": "https://luluvdoo.com/d/au00sj11vqku", + }, + { + "countryCode": "en", + "url": "https://filegram.to/6q8gctbf79gc", + }, + { + "countryCode": "en", + "url": "https://filegram.to/erapbfgcdguq", + }, + { + "countryCode": "en", + "url": "https://filegram.to/6yuyz0dgqu05", + }, + { + "countryCode": "en", + "url": "https://bigwarp.cc/4tb37obzt6re", + }, + { + "countryCode": "en", + "url": "https://bigwarp.cc/aazhpuex9ppj", + }, + { + "countryCode": "en", + "url": "https://bigwarp.cc/u66q6mybilfa", + }, +] +`; diff --git a/src/source/index.ts b/src/source/index.ts index 2057c77..0beb8eb 100644 --- a/src/source/index.ts +++ b/src/source/index.ts @@ -8,6 +8,7 @@ export * from './MegaKino'; export * from './MeineCloud'; export * from './MostraGuarda'; export * from './Movix'; +export * from './PrimeWire'; export * from './StreamKiste'; export * from './VerHdLink'; export * from './VidSrc'; diff --git a/src/utils/Fetcher.ts b/src/utils/Fetcher.ts index a3074a8..76bef0d 100644 --- a/src/utils/Fetcher.ts +++ b/src/utils/Fetcher.ts @@ -108,7 +108,7 @@ export class Fetcher { }; private async handleHttpCacheItem(ctx: Context, httpCacheItem: HttpCacheItem, url: URL, init?: CustomRequestInit): Promise { - if (httpCacheItem.status && httpCacheItem.status >= 200 && httpCacheItem.status <= 299) { + if (httpCacheItem.status && httpCacheItem.status >= 200 && httpCacheItem.status <= 399) { return httpCacheItem; } diff --git a/src/utils/FetcherMock.ts b/src/utils/FetcherMock.ts index 53f48a5..0c22d8e 100644 --- a/src/utils/FetcherMock.ts +++ b/src/utils/FetcherMock.ts @@ -65,7 +65,7 @@ export class FetcherMock extends Fetcher { throw error; } - if (!response.ok) { + if (response.status < 200 || response.status > 399) { const message = `Fetcher error: ${response.status}: ${response.statusText}`; fs.writeFileSync(errorPath, message); throw new Error(message); @@ -73,7 +73,13 @@ export class FetcherMock extends Fetcher { let result; if (init?.method === 'HEAD') { - result = JSON.stringify(response.headers); + const headers: Record = {}; + + response.headers.forEach((value, key) => { + headers[key] = value; + }); + + result = JSON.stringify(headers); } else { result = await response.text(); }