diff --git a/addon/hosted/.dockerignore b/addon/hosted/.dockerignore deleted file mode 100644 index 14276f0..0000000 --- a/addon/hosted/.dockerignore +++ /dev/null @@ -1,4 +0,0 @@ -*.lock -*/scrape-cache -Dockerfile -docker-compose.yml \ No newline at end of file diff --git a/addon/hosted/Dockerfile b/addon/hosted/Dockerfile deleted file mode 100644 index 5a4e2bb..0000000 --- a/addon/hosted/Dockerfile +++ /dev/null @@ -1,12 +0,0 @@ -FROM python:3.10.13 -COPY . . -RUN pip --no-cache-dir install pipenv && \ - apt-get update && apt-get install sqlite3 && \ - apt-get clean autoclean && \ - apt-get autoremove --yes && \ - mkdir /sqlite && \ - sqlite3 /sqlite/torrentio.sqlite "VACUUM;" && \ - cat torrentio.sql | sqlite3 /sqlite/torrentio.sqlite && \ - ls -l /sqlite && \ - pipenv install && touch .init -CMD [ "pipenv", "run", "python", "-u", "scraper.py" ] \ No newline at end of file diff --git a/addon/hosted/Pipfile b/addon/hosted/Pipfile deleted file mode 100644 index 22fdf5d..0000000 --- a/addon/hosted/Pipfile +++ /dev/null @@ -1,16 +0,0 @@ -[[source]] -url = "https://pypi.org/simple" -verify_ssl = true -name = "pypi" - -[packages] -requests = "*" -beautifulsoup4 = "*" -imdbpy = "*" -apscheduler = "*" - -[dev-packages] - -[requires] -python_version = "3.10" -python_full_version = "3.10.13" diff --git a/addon/hosted/config.json b/addon/hosted/config.json deleted file mode 100644 index 753eb05..0000000 --- a/addon/hosted/config.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "1337x": { - "sleep": 10, - "urls_to_scrape": [ - "https://1337x.to/trending/w/movies/", - "https://1337x.to/trending/d/movies/" - ], - "scrape_interval": { - "days": 0, - "hours" : 1, - "minutes": 0, - "seconds": 0 - } - } -} \ No newline at end of file diff --git a/addon/hosted/docker-compose.yml b/addon/hosted/docker-compose.yml index c617b2e..1778d00 100644 --- a/addon/hosted/docker-compose.yml +++ b/addon/hosted/docker-compose.yml @@ -2,30 +2,43 @@ version: '2' services: mongodb: + restart: always image: docker.io/bitnami/mongodb:7.0 ports: - "27017:27017" volumes: - 'mongodb_data:/bitnami/mongodb' scraper: - build: ./ + build: ../../scraper/ restart: always - volumes: - - 'sqlite_data:/sqlite' + ports: + - "7001:7001" + environment: + - PORT=7001 + - MONGODB_URI=mongodb://mongodb:27017/torrentio + - DATABASE_URI=postgres://postgres@postgres:5432/torrentio torrentio: build: ../ - volumes: - - 'sqlite_data:/sqlite' + restart: always ports: - "7000:7000" - links: - - "mongodb:mongodb" environment: - MONGODB_URI=mongodb://mongodb:27017/torrentio - - DATABASE_URI=sqlite:/sqlite/torrentio.sqlite + - DATABASE_URI=postgres://postgres@postgres:5432/torrentio + postgres: + image: postgres:14-alpine + ports: + - 5432:5432 + volumes: + - pg_data:/var/lib/postgresql/data + - './init:/docker-entrypoint-initdb.d' + environment: + - POSTGRES_HOST_AUTH_METHOD=trust + - POSTGRES_USER=postgres + - POSTGRES_DB=torrentio volumes: mongodb_data: driver: local - sqlite_data: + pg_data: driver: local \ No newline at end of file diff --git a/addon/hosted/init/torrentio-pgsql.sql b/addon/hosted/init/torrentio-pgsql.sql new file mode 100644 index 0000000..83c5698 --- /dev/null +++ b/addon/hosted/init/torrentio-pgsql.sql @@ -0,0 +1,53 @@ +CREATE TABLE "torrents" ( + "infoHash" varchar(64) PRIMARY KEY, + "provider" varchar(32) NOT NULL, + "torrentId" varchar(128), + "title" varchar(256) NOT NULL, + "size" bigint, + "type" varchar(16) NOT NULL, + "uploadDate" date NOT NULL, + "seeders" integer, + "trackers" varchar(4096), + "languages" varchar(4096), + "resolution" varchar(16), + "createdAt" date, + "updatedAt" date, + "reviewed" boolean, + "opened" boolean +); + +CREATE TABLE "files" ( + "id" SERIAL PRIMARY KEY, + "infoHash" varchar(64) NOT NULL, + "fileIndex" integer, + "title" varchar(256) NOT NULL, + "size" bigint, + "imdbId" varchar(32), + "imdbSeason" integer, + "imdbEpisode" integer, + "kitsuId" integer, + "kitsuEpisode" integer, + "createdAt" date, + "updatedAt" date, + FOREIGN KEY("infoHash") REFERENCES torrents("infoHash") ON DELETE CASCADE, + UNIQUE("infoHash","fileIndex") +); + +CREATE TABLE "subtitles" ( + "id" SERIAL PRIMARY KEY, + "infoHash" varchar(64) NOT NULL, + "fileIndex" integer NOT NULL, + "fileId" bigint, + "title" varchar(512) NOT NULL, + "size" bigint, + FOREIGN KEY("infoHash") REFERENCES torrents("infoHash") ON DELETE CASCADE, + FOREIGN KEY("fileId") REFERENCES files("id") ON DELETE SET NULL +); + +CREATE TABLE "contents" ( + "infoHash" varchar(64), + "fileIndex" integer, + "path" varchar(256), + "size" bigint, + FOREIGN KEY("infoHash") REFERENCES torrents("infoHash") ON DELETE CASCADE +); \ No newline at end of file diff --git a/addon/hosted/p1337x.py b/addon/hosted/p1337x.py deleted file mode 100644 index 5709993..0000000 --- a/addon/hosted/p1337x.py +++ /dev/null @@ -1,141 +0,0 @@ -import os -import re -import math -import requests -import time -from imdb import Cinemagoer -from bs4 import BeautifulSoup -from shared import imdb_find, build_and_write, extract_title, read_config - -TORRENT_CACHES = ('http://itorrents.org', 'http://torrage.info', 'http://btcache.me') -BASE_URL = 'https://1337x.to' -MOVIE_BASE = 'https://1337x.to/movie-library' -MOVIE_LIBRARY_MAX_PAGE = 301 -CACHE_DIR = "./scrape-cache" -PROVIDER = "1337x" -SLEEP_BETWEEN_REQUESTS = read_config(PROVIDER, "sleep") - -if not os.path.exists(CACHE_DIR): - os.makedirs(CACHE_DIR) - -def get_links_and_process(url): - links = [] - print(f"Requesting movies from: {url}") - req = requests.get(url, headers={'User-Agent': 'Mozilla/5.0'}) - main = req.text - soup = BeautifulSoup(main, "html.parser") - for a in soup.find_all("a"): - if a.get("href").startswith("/torrent/"): - links.append((a.get("href"), extract_title(a.text))) - process_links(links) - -def get_links_initial(): - links = [] - for i in range(1,MOVIE_LIBRARY_MAX_PAGE + 1): - try: - print(f"Sleeping {SLEEP_BETWEEN_REQUESTS}") - time.sleep(SLEEP_BETWEEN_REQUESTS) - - main = "" - if os.path.isfile(f"{CACHE_DIR}/main-{i}.html"): - print(f"Reading main page({i}) from cache...") - main = open(f"{CACHE_DIR}/main-{i}.html", "r").read() - else: - print(f"Requesting main index: {MOVIE_BASE}/{i}/") - req = requests.get(f"{MOVIE_BASE}/{i}/", headers={'User-Agent': 'Mozilla/5.0'}) - if req.status_code == 404: - print(f"Page does not exist: {MOVIE_BASE}/{i}/. Breaking loop.") - break - main = req.text - open(f"{CACHE_DIR}/main-{i}.html", "w+").write(main) - - movies = [] - soup = BeautifulSoup(main, "html.parser") - for h3 in soup.find_all("h3"): - a = h3.findChildren("a", href=True)[0] - movie_link = a.get("href") - movie_title = a.text - movies.append((movie_title, movie_link)) - - for movie in movies: - if os.path.isfile(f"{CACHE_DIR}{movie[1]}html.html"): - print(f"Reading movie page({movie[0]}) from cache...") - main = open(f"{CACHE_DIR}{movie[1]}html.html").read() - else: - print(f"Requesting movie releases: {BASE_URL}{movie[1]}") - req = requests.get(f"{BASE_URL}{movie[1]}", headers={'User-Agent': 'Mozilla/5.0'}) - main = req.text - if not os.path.exists(f"{CACHE_DIR}{movie[1]}"): - os.makedirs(f"{CACHE_DIR}{movie[1]}") - open(f"{CACHE_DIR}{movie[1]}html.html", "w+").write(main) - soup = BeautifulSoup(main, "html.parser") - for href in soup.find_all("a"): - if href.get("href").startswith("/torrent/"): - links.append((href.get("href"), movie[0])) - except Exception as e: - print(e) - return links - -def process_links(links): - print(f"Checking links...({len(links)})") - counter = 1 - for link in links: - try: - print(f"Processing: {BASE_URL}{link[0]} {counter}/{len(links)}") - req = requests.get(f"{BASE_URL}{link[0]}", headers={'User-Agent': 'Mozilla/5.0'}) - torrent_html = req.text - t = {} - soup = BeautifulSoup(torrent_html, "html.parser") - t['title'] = soup.find("h1").text.strip() - t['size'] = 0 - t['magnets'] = [] - t['torrents'] = [] - all_a = soup.find_all("a") - for a in all_a: - if a.get("href").startswith("https://www.imdb.com/title"): - t['imdbid'] = a.get("href").rstrip("\\").split('/')[-1] - if a.get("href").startswith("magnet:"): - t['magnets'].append(a.get("href")) - if a.get("href").startswith(TORRENT_CACHES): - t['torrents'].append(a.get("href")) - all_li = soup.find_all("li") - for li in all_li: - if "Total size" in li.text: - size = li.findChildren("span")[0].text - mb = False - if "MB" in size: mb = True - size = re.sub('\s(GB|MB)', '', size).split('.')[0].replace(',','') - if mb: - t['size'] = math.trunc(float(size) * 107374182) - else: - t['size'] = math.trunc(float(size) * 1073741824) - t['seeders'] = soup.find("span", {"class": "seeds"}).text - all_p = soup.find_all("p") - for p in all_p: - if "Infohash :" in p.text: - t['infoHash'] = p.findChildren("span")[0].text.lower() - t['files'] = [] - file_div = soup.find("div", {"id":"files"}) - for li in file_div.findChildren("li"): - f = re.sub('\s\(.*\)', '', li.text) - t["files"].append(f) - t['trackers'] = [] - tracker_div = soup.find("div", {"id":"tracker-list"}) - for tracker in tracker_div.findChildren("li"): - t['trackers'].append(tracker.text.strip()) - if not 'imdbid' in t or t['imdbid'] == '': - found = re.search("https:\/\/www\.imdb\.com\/title\/tt\d+", torrent_html) - if found is not None: - t['imdbid'] = found.group(0).rstrip("\\").split('/')[-1] - else: - new_id = imdb_find(link[1]) - if new_id is not None: - t['imdbid'] = f"tt{new_id}" - else: - print(f"{t['title']} has no IMDB Id") - continue - build_and_write(t) - except: - counter += 1 - continue - counter += 1 \ No newline at end of file diff --git a/addon/hosted/scraper.py b/addon/hosted/scraper.py deleted file mode 100644 index c0a119d..0000000 --- a/addon/hosted/scraper.py +++ /dev/null @@ -1,41 +0,0 @@ -import os -import threading -from p1337x import process_links, get_links_initial, get_links_and_process -from apscheduler.schedulers.background import BackgroundScheduler -from shared import read_config - -print("Scaper starting...") - -if os.path.isfile(".init"): - print("Found init file, executing initial sync. Be patient.") - process_links(get_links_initial()) - os.remove(".init") - -sched = BackgroundScheduler(timezone="America/New_York") -sched.start() - -# 1337x -PROVIDER = "1337x" -pages = read_config(PROVIDER, "urls_to_scrape") -interval = read_config(PROVIDER, "scrape_interval") -for page in pages: - j = sched.add_job( - get_links_and_process, - 'interval', - days=interval["days"], - hours=interval["hours"], - minutes=interval["minutes"], - seconds=interval["seconds"], - id=page, - args=[page], - max_instances=1) - print(f"{page} willl be scraped {j.next_run_time}.") - - -# Wait forever -main_thread = threading.main_thread() -while True: - L = threading.enumerate() - L.remove(main_thread) # or avoid it in the for loop - for t in L: - t.join() \ No newline at end of file diff --git a/addon/hosted/shared.py b/addon/hosted/shared.py deleted file mode 100644 index e07524e..0000000 --- a/addon/hosted/shared.py +++ /dev/null @@ -1,73 +0,0 @@ -import sqlite3 -import re -import os -import json -from imdb import Cinemagoer - -SQLITE_PATH = "/sqlite/torrentio.sqlite" - -ia = Cinemagoer() -CONFIG = "config.json" - -def read_config(provider, key): - if os.path.isfile(CONFIG): - f = open(CONFIG, "r") - cfg = json.load(f) - return cfg[provider][key] - -def filter_file(file): - allowed_ext = ['.mp4', '.mkv', '.avi', '.mpeg', '.mpg', '.mpv', '.mov'] - if os.path.splitext(file)[1] in allowed_ext: - return True - return False - -def create_connection(db_file): - conn = None - try: - conn = sqlite3.connect(db_file, check_same_thread=False) - except Exception as e: - print(e) - exit(1) - return conn - -sqlite = create_connection(SQLITE_PATH) - -def build_and_write(torrent): - try: - print(f"Recording {torrent['title']} in the database") - q = f"INSERT OR REPLACE INTO torrents (infoHash, provider, title, size, type, uploadDate, seeders, trackers) VALUES (?,?,?,?,?,?,?,?)" - p = (torrent['infoHash'],'1337x',torrent['title'],torrent['size'],'movie','1/1/2024',torrent['seeders'],','.join(torrent['trackers'])) - cursor = sqlite.cursor() - cursor.execute(q,p) - for file in torrent['files']: - if filter_file(file): - q = f"INSERT OR REPLACE INTO files (infoHash, fileIndex, title, size, imdbId) VALUES (?,?,?,?,?)" - p = (torrent['infoHash'], torrent['files'].index(file), file, torrent['size'], torrent['imdbid']) - cursor.execute(q,p) - sqlite.commit() - cursor.close() - except sqlite3.Error as error: - print(error) - -def imdb_find(name): - movie = ia.search_movie(name) - if len(movie) >= 1: - return movie[0].movieID - return None - -def extract_title(filename): - try: - filename.strip() - filename = filename.replace('.', ' ') - res = re.search('([^\\\]+)\.(avi|mkv|mpeg|mpg|mov|mp4)$', filename) - if res: - filename = res.group(1) - res = re.search('(.*?)(dvdrip|xvid| cd[0-9]|dvdscr|brrip|divx|[\{\(\[]?[0-9]{4}).*', filename) - if res: - filename = res.group(1) - res = re.search('(.*?)\(.*\)(.*)', filename) - if res: - filename = res.group(1) - return filename - except: - return "" diff --git a/addon/hosted/torrentio.sql b/addon/hosted/torrentio.sql deleted file mode 100644 index 1e35f43..0000000 --- a/addon/hosted/torrentio.sql +++ /dev/null @@ -1,44 +0,0 @@ -CREATE TABLE "torrents" ( - "infoHash" TEXT, - "provider" TEXT NOT NULL, - "torrentId" TEXT, - "title" TEXT NOT NULL, - "size" INTEGER, - "type" TEXT NOT NULL, - "uploadDate" TEXT NOT NULL, - "seeders" INTEGER, - "trackers" TEXT, - "languages" TEXT, - "resolution" TEXT, - "createdAt" TEXT, - "updatedAt" TEXT, - PRIMARY KEY("infoHash") -); - -CREATE TABLE "files" ( - "id" INTEGER, - "infoHash" TEXT NOT NULL, - "fileIndex" TEXT, - "title" INTEGER, - "size" INTEGER, - "imdbId" TEXT, - "imdbSeason" INTEGER, - "imdbEpisode" INTEGER, - "kitsuId" INTEGER, - "kitsuEpisode" INTEGER, - "createdAt" TEXT, - "updatedAt" TEXT, - FOREIGN KEY("infoHash") REFERENCES "torrent"("infoHash") ON DELETE CASCADE, - PRIMARY KEY("id" AUTOINCREMENT) - UNIQUE(infoHash, fileIndex) -); - -CREATE TABLE "subtitles" ( - "infoHash" TEXT NOT NULL, - "fileIndex" INTEGER NOT NULL, - "fileId" INTEGER, - "title" TEXT NOT NULL, - "size" INTEGER NOT NULL, - FOREIGN KEY("fileId") REFERENCES "file"("id") ON DELETE SET NULL - FOREIGN KEY("infoHash") REFERENCES "torrent"("infoHash") ON DELETE CASCADE -); \ No newline at end of file diff --git a/addon/package-lock.json b/addon/package-lock.json index 7cbd792..321243d 100644 --- a/addon/package-lock.json +++ b/addon/package-lock.json @@ -23,77 +23,20 @@ "named-queue": "^2.2.1", "offcloud-api": "^1.0.2", "parse-torrent-title": "git://github.com/TheBeastLT/parse-torrent-title.git#022408972c2a040f846331a912a6a8487746a654", - "pg": "^8.10.0", + "pg": "^8.11.3", + "pg-hstore": "^2.3.4", "premiumize-api": "^1.0.3", "prom-client": "^12.0.0", "real-debrid-api": "git://github.com/TheBeastLT/node-real-debrid.git#d1f7eaa8593b947edbfbc8a92a176448b48ef445", "request-ip": "^3.3.0", "router": "^1.3.8", "sequelize": "^6.31.1", - "sqlite3": "^5.1.7", "stremio-addon-sdk": "^1.6.10", "swagger-stats": "^0.99.7", "ua-parser-js": "^1.0.36", "user-agents": "^1.0.1444" } }, - "node_modules/@gar/promisify": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/@gar/promisify/-/promisify-1.1.3.tgz", - "integrity": "sha512-k2Ty1JcVojjJFwrg/ThKi2ujJ7XNLYaFGNB/bWT9wGR+oSMJHMa5w+CUq6p/pVrKeNNgA7pCqEcjSnHVoqJQFw==", - "optional": true - }, - "node_modules/@npmcli/fs": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/@npmcli/fs/-/fs-1.1.1.tgz", - "integrity": "sha512-8KG5RD0GVP4ydEzRn/I4BNDuxDtqVbOdm8675T49OIG/NGhaK0pjPX7ZcDlvKYbA+ulvVK3ztfcF4uBdOxuJbQ==", - "optional": true, - "dependencies": { - "@gar/promisify": "^1.0.1", - "semver": "^7.3.5" - } - }, - "node_modules/@npmcli/fs/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/move-file": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@npmcli/move-file/-/move-file-1.1.2.tgz", - "integrity": "sha512-1SUf/Cg2GzGDyaf15aR9St9TWlb+XvbZXWpDx8YKs7MLzMH/BCeopv+y9vzrzgkfykCGuWOlSu3mZhj2+FQcrg==", - "deprecated": "This functionality has been moved to @npmcli/fs", - "optional": true, - "dependencies": { - "mkdirp": "^1.0.4", - "rimraf": "^3.0.2" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/@npmcli/move-file/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/@putdotio/api-client": { "version": "8.42.0", "resolved": "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.42.0.tgz", @@ -117,15 +60,6 @@ "follow-redirects": "^1.14.0" } }, - "node_modules/@tootallnate/once": { - "version": "1.1.2", - "resolved": "https://registry.npmjs.org/@tootallnate/once/-/once-1.1.2.tgz", - "integrity": "sha512-RbzJvlNzmRq5c3O09UipeuXno4tA1FE6ikOjxZK0tuxVv3412l64l5t1W5pj4+rJq9vpkm/kwiR07aZXnsKPxw==", - "optional": true, - "engines": { - "node": ">= 6" - } - }, "node_modules/@types/debug": { "version": "4.1.7", "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", @@ -149,12 +83,6 @@ "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.7.3.tgz", "integrity": "sha512-DNviAE5OUcZ5s+XEQHRhERLg8fOp8gSgvyJ4aaFASx5wwaObm+PBwTIMXiOFm1QrSee5oYwEAYb7LMzX2O88gA==" }, - "node_modules/abbrev": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/abbrev/-/abbrev-1.1.1.tgz", - "integrity": "sha512-nne9/IiQ/hzIhY6pdDnbBtz7DjPTKrY00P/zvPSm5pOFkl6xuGrGnXn/VtTNNfNtAfZ9/1RtehkszU9qcTii0Q==", - "optional": true - }, "node_modules/accepts": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", @@ -167,66 +95,6 @@ "node": ">= 0.6" } }, - "node_modules/agent-base": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/agent-base/-/agent-base-6.0.2.tgz", - "integrity": "sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==", - "optional": true, - "dependencies": { - "debug": "4" - }, - "engines": { - "node": ">= 6.0.0" - } - }, - "node_modules/agent-base/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "optional": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/agent-base/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "optional": true - }, - "node_modules/agentkeepalive": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", - "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", - "optional": true, - "dependencies": { - "humanize-ms": "^1.2.1" - }, - "engines": { - "node": ">= 8.0.0" - } - }, - "node_modules/aggregate-error": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/aggregate-error/-/aggregate-error-3.1.0.tgz", - "integrity": "sha512-4I7Td01quW/RpocfNayFdFVk1qSuoh0E7JrbRJ16nH01HhKFQ88INq9Sd+nd72zqRySlr9BmDA8xlEJ6vJMrYA==", - "optional": true, - "dependencies": { - "clean-stack": "^2.0.0", - "indent-string": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/ajv": { "version": "6.12.6", "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", @@ -277,39 +145,6 @@ "node": ">=4" } }, - "node_modules/aproba": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/aproba/-/aproba-2.0.0.tgz", - "integrity": "sha512-lYe4Gx7QT+MKGbDsA+Z+he/Wtef0BiwDOlK/XkBrdfsh9J/jPPXbX0tE9x9cl27Tmu5gg3QUbUrQYa/y+KOHPQ==", - "optional": true - }, - "node_modules/are-we-there-yet": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-3.0.1.tgz", - "integrity": "sha512-QZW4EDmGwlYur0Yyf/b2uGucHQMa8aFUP7eu9ddR73vvhFyt4V0Vl3QHPcTNJ8l6qYOBdxgXdnBXQrHilfRQBg==", - "optional": true, - "dependencies": { - "delegates": "^1.0.0", - "readable-stream": "^3.6.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/are-we-there-yet/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "optional": true, - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, "node_modules/array-flatten": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", @@ -377,31 +212,6 @@ "node": ">= 6" } }, - "node_modules/balanced-match": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - "optional": true - }, - "node_modules/base64-js": { - "version": "1.5.1", - "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, "node_modules/basic-auth": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", @@ -431,14 +241,6 @@ "resolved": "https://registry.npmjs.org/bep53-range/-/bep53-range-1.1.1.tgz", "integrity": "sha512-ct6s33iiwRCUPp9KXnJ4QMWDgHIgaw36caK/5XEQ9L8dCzSQlJt1Vk6VmHh1VD4AlGCAI4C2zmtfItifBBPrhQ==" }, - "node_modules/bindings": { - "version": "1.5.0", - "resolved": "https://registry.npmjs.org/bindings/-/bindings-1.5.0.tgz", - "integrity": "sha512-p2q/t/mhvuOj/UeLlV6566GD/guowlr0hHxClI0W9m7MWYkL1F0hLo+0Aexs9HSPCtR1SXQ0TD3MMKrXZajbiQ==", - "dependencies": { - "file-uri-to-path": "1.0.0" - } - }, "node_modules/bintrees": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", @@ -486,16 +288,6 @@ "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" }, - "node_modules/brace-expansion": { - "version": "1.1.11", - "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", - "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", - "optional": true, - "dependencies": { - "balanced-match": "^1.0.0", - "concat-map": "0.0.1" - } - }, "node_modules/bson": { "version": "1.1.6", "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", @@ -504,29 +296,6 @@ "node": ">=0.6.19" } }, - "node_modules/buffer": { - "version": "5.7.1", - "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", - "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "base64-js": "^1.3.1", - "ieee754": "^1.1.13" - } - }, "node_modules/buffer-writer": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", @@ -543,47 +312,6 @@ "node": ">= 0.8" } }, - "node_modules/cacache": { - "version": "15.3.0", - "resolved": "https://registry.npmjs.org/cacache/-/cacache-15.3.0.tgz", - "integrity": "sha512-VVdYzXEn+cnbXpFgWs5hTT7OScegHVmLhJIR8Ufqk3iFD6A6j5iSX1KuBTfNEv4tdJWE2PzA6IVFtcLC7fN9wQ==", - "optional": true, - "dependencies": { - "@npmcli/fs": "^1.0.0", - "@npmcli/move-file": "^1.0.1", - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "glob": "^7.1.4", - "infer-owner": "^1.0.4", - "lru-cache": "^6.0.0", - "minipass": "^3.1.1", - "minipass-collect": "^1.0.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.2", - "mkdirp": "^1.0.3", - "p-map": "^4.0.0", - "promise-inflight": "^1.0.1", - "rimraf": "^3.0.2", - "ssri": "^8.0.1", - "tar": "^6.0.2", - "unique-filename": "^1.1.1" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/cacache/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "optional": true, - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/cache-manager": { "version": "3.6.3", "resolved": "https://registry.npmjs.org/cache-manager/-/cache-manager-3.6.3.tgz", @@ -669,23 +397,6 @@ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" }, - "node_modules/chownr": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - "engines": { - "node": ">=10" - } - }, - "node_modules/clean-stack": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/clean-stack/-/clean-stack-2.2.0.tgz", - "integrity": "sha512-4diC9HaTE+KRAMWhDhrGOECgWZxoevMc5TlkObMqNSsVU62PYzXZ/SMTjzyGAFF1YusgxGcSWTEXBhp0CPwQ1A==", - "optional": true, - "engines": { - "node": ">=6" - } - }, "node_modules/cli-cursor": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", @@ -715,15 +426,6 @@ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" }, - "node_modules/color-support": { - "version": "1.1.3", - "resolved": "https://registry.npmjs.org/color-support/-/color-support-1.1.3.tgz", - "integrity": "sha512-qiBjkpbMLO/HL68y+lh4q0/O1MZFj2RX6X/KmMa3+gJD3z+WwI1ZzDHysvqHGS3mP6mznPckpXmw1nI9cJjyRg==", - "optional": true, - "bin": { - "color-support": "bin.js" - } - }, "node_modules/combined-stream": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", @@ -735,18 +437,6 @@ "node": ">= 0.8" } }, - "node_modules/concat-map": { - "version": "0.0.1", - "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - "optional": true - }, - "node_modules/console-control-strings": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz", - "integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==", - "optional": true - }, "node_modules/content-disposition": { "version": "0.5.4", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", @@ -844,28 +534,6 @@ "ms": "2.0.0" } }, - "node_modules/decompress-response": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-6.0.0.tgz", - "integrity": "sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==", - "dependencies": { - "mimic-response": "^3.1.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/deep-extend": { - "version": "0.6.0", - "resolved": "https://registry.npmjs.org/deep-extend/-/deep-extend-0.6.0.tgz", - "integrity": "sha512-LOHxIOaPYdHlJRtCQfDIVZtfw/ufM8+rVj649RIHzcm/vGwQRXFt6OPqIFWsm2XEMrNIEtWR64sY1LEKD2vAOA==", - "engines": { - "node": ">=4.0.0" - } - }, "node_modules/delayed-stream": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", @@ -874,12 +542,6 @@ "node": ">=0.4.0" } }, - "node_modules/delegates": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz", - "integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==", - "optional": true - }, "node_modules/denque": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", @@ -905,14 +567,6 @@ "npm": "1.2.8000 || >= 1.4.16" } }, - "node_modules/detect-libc": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-2.0.2.tgz", - "integrity": "sha512-UX6sGumvvqSaXgdKGUsgZWqcUyIXZ/vZTrlRT/iobiKhGL0zL4d3osHj3uqllWJK+i+sixDS/3COVEOFbupFyw==", - "engines": { - "node": ">=8" - } - }, "node_modules/diacritics": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/diacritics/-/diacritics-1.3.0.tgz", @@ -937,12 +591,6 @@ "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" }, - "node_modules/emoji-regex": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - "optional": true - }, "node_modules/encodeurl": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", @@ -956,6 +604,7 @@ "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", "optional": true, + "peer": true, "dependencies": { "iconv-lite": "^0.6.2" } @@ -965,6 +614,7 @@ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", "optional": true, + "peer": true, "dependencies": { "safer-buffer": ">= 2.1.2 < 3.0.0" }, @@ -972,29 +622,6 @@ "node": ">=0.10.0" } }, - "node_modules/end-of-stream": { - "version": "1.4.4", - "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz", - "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==", - "dependencies": { - "once": "^1.4.0" - } - }, - "node_modules/env-paths": { - "version": "2.2.1", - "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - "optional": true, - "engines": { - "node": ">=6" - } - }, - "node_modules/err-code": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/err-code/-/err-code-2.0.3.tgz", - "integrity": "sha512-2bmlRpNKBxT/CRmPOlyISQpNj+qSeYvcym/uT0Jx2bMOlKLtSy1ZmLuVxSEKKyor/N5yhvp/ZiG1oE3DEYMSFA==", - "optional": true - }, "node_modules/es5-ext": { "version": "0.10.53", "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", @@ -1054,14 +681,6 @@ "es5-ext": "~0.10.14" } }, - "node_modules/expand-template": { - "version": "2.0.3", - "resolved": "https://registry.npmjs.org/expand-template/-/expand-template-2.0.3.tgz", - "integrity": "sha512-XYfuKMvj4O35f/pOXLObndIRvyQ+/+6AhODh+OKWj9S9498pHHn/IMszH+gt0fBCRWMNfk1ZSp5x3AifmnI2vg==", - "engines": { - "node": ">=6" - } - }, "node_modules/express": { "version": "4.18.2", "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", @@ -1174,11 +793,6 @@ "node": ">=4" } }, - "node_modules/file-uri-to-path": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", - "integrity": "sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==" - }, "node_modules/finalhandler": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", @@ -1252,96 +866,11 @@ "node": ">= 0.6" } }, - "node_modules/fs-constants": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs-constants/-/fs-constants-1.0.0.tgz", - "integrity": "sha512-y6OAwoSIf7FyjMIv94u+b5rdheZEjzR63GTyZJm5qh4Bi+2YgwLCcI/fPFZkL5PSixOt6ZNKm+w+Hfp/Bciwow==" - }, - "node_modules/fs-minipass": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/fs.realpath": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - "optional": true - }, "node_modules/function-bind": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" }, - "node_modules/gauge": { - "version": "4.0.4", - "resolved": "https://registry.npmjs.org/gauge/-/gauge-4.0.4.tgz", - "integrity": "sha512-f9m+BEN5jkg6a0fZjleidjN51VE1X+mPFQ2DJ0uv1V39oCLCbsGe6yjbBnp7eK7z/+GAon99a3nHuqbuuthyPg==", - "optional": true, - "dependencies": { - "aproba": "^1.0.3 || ^2.0.0", - "color-support": "^1.1.3", - "console-control-strings": "^1.1.0", - "has-unicode": "^2.0.1", - "signal-exit": "^3.0.7", - "string-width": "^4.2.3", - "strip-ansi": "^6.0.1", - "wide-align": "^1.1.5" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, - "node_modules/gauge/node_modules/ansi-regex": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/is-fullwidth-code-point": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/string-width": { - "version": "4.2.3", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - "optional": true, - "dependencies": { - "emoji-regex": "^8.0.0", - "is-fullwidth-code-point": "^3.0.0", - "strip-ansi": "^6.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/gauge/node_modules/strip-ansi": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - "optional": true, - "dependencies": { - "ansi-regex": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, "node_modules/get-intrinsic": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", @@ -1363,37 +892,6 @@ "assert-plus": "^1.0.0" } }, - "node_modules/github-from-package": { - "version": "0.0.0", - "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz", - "integrity": "sha512-SyHy3T1v2NUXn29OsWdxmK6RwHD+vkj3v8en8AOBZ1wBQ/hCAQ5bAQTD02kW4W9tUp/3Qh6J8r9EvntiyCmOOw==" - }, - "node_modules/glob": { - "version": "7.2.3", - "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - "optional": true, - "dependencies": { - "fs.realpath": "^1.0.0", - "inflight": "^1.0.4", - "inherits": "2", - "minimatch": "^3.1.1", - "once": "^1.3.0", - "path-is-absolute": "^1.0.0" - }, - "engines": { - "node": "*" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, - "node_modules/graceful-fs": { - "version": "4.2.11", - "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - "optional": true - }, "node_modules/har-schema": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", @@ -1445,18 +943,6 @@ "url": "https://github.com/sponsors/ljharb" } }, - "node_modules/has-unicode": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz", - "integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==", - "optional": true - }, - "node_modules/http-cache-semantics": { - "version": "4.1.1", - "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.1.tgz", - "integrity": "sha512-er295DKPVsV82j5kw1Gjt+ADA/XYHsajl82cGNQG2eyoPkvgUhX+nDIyelzhIWbbsXP39EHcI6l5tYs2FYqYXQ==", - "optional": true - }, "node_modules/http-errors": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", @@ -1472,43 +958,6 @@ "node": ">= 0.8" } }, - "node_modules/http-proxy-agent": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/http-proxy-agent/-/http-proxy-agent-4.0.1.tgz", - "integrity": "sha512-k0zdNgqWTGA6aeIRVpvfVob4fL52dTfaehylg0Y4UvSySvOq/Y+BOyPrgpUrA7HylqvU8vIZGsRuXmspskV0Tg==", - "optional": true, - "dependencies": { - "@tootallnate/once": "1", - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/http-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "optional": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/http-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "optional": true - }, "node_modules/http-signature": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", @@ -1523,51 +972,6 @@ "npm": ">=1.3.7" } }, - "node_modules/https-proxy-agent": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/https-proxy-agent/-/https-proxy-agent-5.0.1.tgz", - "integrity": "sha512-dFcAjpTQFgoLMzC2VwU+C/CbS7uRL0lWmxDITmqm7C+7F0Odmj6s9l6alZc6AELXhrnggM2CeWSXHGOdX2YtwA==", - "optional": true, - "dependencies": { - "agent-base": "6", - "debug": "4" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/https-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "optional": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/https-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "optional": true - }, - "node_modules/humanize-ms": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", - "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", - "optional": true, - "dependencies": { - "ms": "^2.0.0" - } - }, "node_modules/iconv-lite": { "version": "0.4.24", "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", @@ -1579,49 +983,6 @@ "node": ">=0.10.0" } }, - "node_modules/ieee754": { - "version": "1.2.1", - "resolved": "https://registry.npmjs.org/ieee754/-/ieee754-1.2.1.tgz", - "integrity": "sha512-dcyqhDvX1C46lXZcVqCpK+FtMRQVdIMN6/Df5js2zouUsqG7I6sFxitIC+7KYK29KdXOLHdu9zL4sFnoVQnqaA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/imurmurhash": { - "version": "0.1.4", - "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - "optional": true, - "engines": { - "node": ">=0.8.19" - } - }, - "node_modules/indent-string": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/indent-string/-/indent-string-4.0.0.tgz", - "integrity": "sha512-EdDDZu4A2OyIK7Lr/2zG+w5jmbuk1DVBnEwREQvBzspBJkCEbRa8GxU1lghYcaGJCnRWibjDXlq779X1/y5xwg==", - "optional": true, - "engines": { - "node": ">=8" - } - }, - "node_modules/infer-owner": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/infer-owner/-/infer-owner-1.0.4.tgz", - "integrity": "sha512-IClj+Xz94+d7irH5qRyfJonOdfTzuDaifE6ZPWfx0N0+/ATZCbuTPq2prFl526urkQd90WyUKIh1DfBQ2hMz9A==", - "optional": true - }, "node_modules/inflection": { "version": "1.13.2", "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.13.2.tgz", @@ -1630,26 +991,11 @@ "node >= 0.4.0" ] }, - "node_modules/inflight": { - "version": "1.0.6", - "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - "optional": true, - "dependencies": { - "once": "^1.3.0", - "wrappy": "1" - } - }, "node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" }, - "node_modules/ini": { - "version": "1.3.8", - "resolved": "https://registry.npmjs.org/ini/-/ini-1.3.8.tgz", - "integrity": "sha512-JV/yugV2uzW5iMRSiZAyDtQd+nxtUnjeLt0acNdw98kKLrvuRVyB80tsREOE7yvGVgalhZ6RNXCmEHkUKBKxew==" - }, "node_modules/inquirer": { "version": "6.5.2", "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", @@ -1673,12 +1019,6 @@ "node": ">=6.0.0" } }, - "node_modules/ip": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/ip/-/ip-2.0.0.tgz", - "integrity": "sha512-WKa+XuLG1A1R0UWhl2+1XQSi+fZWMsYKffMZTTYsiZaUD8k2yDAj5atimTUD2TZkyCkNEeYE5NhFZmupOGtjYQ==", - "optional": true - }, "node_modules/ipaddr.js": { "version": "1.9.1", "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", @@ -1695,12 +1035,6 @@ "node": ">=4" } }, - "node_modules/is-lambda": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/is-lambda/-/is-lambda-1.0.1.tgz", - "integrity": "sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==", - "optional": true - }, "node_modules/is-promise": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", @@ -1724,12 +1058,6 @@ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "optional": true - }, "node_modules/isstream": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", @@ -1829,33 +1157,6 @@ "thirty-two": "^1.0.2" } }, - "node_modules/make-fetch-happen": { - "version": "9.1.0", - "resolved": "https://registry.npmjs.org/make-fetch-happen/-/make-fetch-happen-9.1.0.tgz", - "integrity": "sha512-+zopwDy7DNknmwPQplem5lAZX/eCOzSvSNNcSKm5eVwTkOBzoktEfXsa9L23J/GIRhxRsaxzkPEhrJEpE2F4Gg==", - "optional": true, - "dependencies": { - "agentkeepalive": "^4.1.3", - "cacache": "^15.2.0", - "http-cache-semantics": "^4.1.0", - "http-proxy-agent": "^4.0.1", - "https-proxy-agent": "^5.0.0", - "is-lambda": "^1.0.1", - "lru-cache": "^6.0.0", - "minipass": "^3.1.3", - "minipass-collect": "^1.0.2", - "minipass-fetch": "^1.3.2", - "minipass-flush": "^1.0.5", - "minipass-pipeline": "^1.2.4", - "negotiator": "^0.6.2", - "promise-retry": "^2.0.1", - "socks-proxy-agent": "^6.0.0", - "ssri": "^8.0.0" - }, - "engines": { - "node": ">= 10" - } - }, "node_modules/media-typer": { "version": "0.3.0", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", @@ -1921,122 +1222,11 @@ "node": ">=4" } }, - "node_modules/mimic-response": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-3.1.0.tgz", - "integrity": "sha512-z0yWI+4FDrrweS8Zmt4Ej5HdJmky15+L2e6Wgn3+iK5fWzb6T3fhNFq2+MeTRb064c6Wr4N/wv0DzQTjNzHNGQ==", - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/minimatch": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - "optional": true, - "dependencies": { - "brace-expansion": "^1.1.7" - }, - "engines": { - "node": "*" - } - }, "node_modules/minimist": { "version": "1.2.6", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" }, - "node_modules/minipass": { - "version": "3.3.6", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - "dependencies": { - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-collect": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/minipass-collect/-/minipass-collect-1.0.2.tgz", - "integrity": "sha512-6T6lH0H8OG9kITm/Jm6tdooIbogG9e0tLgpY6mphXSm/A9u8Nq1ryBG+Qspiub9LjWlBPsPS3tWQ/Botq4FdxA==", - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-fetch": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/minipass-fetch/-/minipass-fetch-1.4.1.tgz", - "integrity": "sha512-CGH1eblLq26Y15+Azk7ey4xh0J/XfJfrCox5LDJiKqI2Q2iwOLOKrlmIaODiSQS8d18jalF6y2K2ePUm0CmShw==", - "optional": true, - "dependencies": { - "minipass": "^3.1.0", - "minipass-sized": "^1.0.3", - "minizlib": "^2.0.0" - }, - "engines": { - "node": ">=8" - }, - "optionalDependencies": { - "encoding": "^0.1.12" - } - }, - "node_modules/minipass-flush": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/minipass-flush/-/minipass-flush-1.0.5.tgz", - "integrity": "sha512-JmQSYYpPUqX5Jyn1mXaRwOda1uQ8HP5KAT/oDSLCzt1BYRhQU0/hDtsB1ufZfEEzMZ9aAVmsBw8+FWsIXlClWw==", - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/minipass-pipeline": { - "version": "1.2.4", - "resolved": "https://registry.npmjs.org/minipass-pipeline/-/minipass-pipeline-1.2.4.tgz", - "integrity": "sha512-xuIq7cIOt09RPRJ19gdi4b+RiNvDFYe5JH+ggNvBqGqpQXcru3PcRmOZuHBKWK1Txf9+cQ+HMVN4d6z46LZP7A==", - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minipass-sized": { - "version": "1.0.3", - "resolved": "https://registry.npmjs.org/minipass-sized/-/minipass-sized-1.0.3.tgz", - "integrity": "sha512-MbkQQ2CTiBMlA2Dm/5cY+9SWFEN8pzzOXi6rlM5Xxq0Yqbda5ZQy9sU75a673FE9ZK0Zsbr6Y5iP6u9nktfg2g==", - "optional": true, - "dependencies": { - "minipass": "^3.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/minizlib": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - "dependencies": { - "minipass": "^3.0.0", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/mkdirp": { "version": "0.5.6", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", @@ -2048,11 +1238,6 @@ "mkdirp": "bin/cmd.js" } }, - "node_modules/mkdirp-classic": { - "version": "0.5.3", - "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", - "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" - }, "node_modules/moment": { "version": "2.29.4", "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", @@ -2136,11 +1321,6 @@ "resolved": "https://registry.npmjs.org/named-queue/-/named-queue-2.2.1.tgz", "integrity": "sha1-GBRURVNZnVqeQD0N+pN6TODR5qc=" }, - "node_modules/napi-build-utils": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/napi-build-utils/-/napi-build-utils-1.0.2.tgz", - "integrity": "sha512-ONmRUqK7zj7DWX0D9ADe03wbwOBZxNAfF20PlGfCWQcD3+/MakShIHrMqx9YwPTfxDdF1zLeL+RGZiR9kGMLdg==" - }, "node_modules/needle": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/needle/-/needle-1.6.0.tgz", @@ -2169,36 +1349,6 @@ "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" }, - "node_modules/node-abi": { - "version": "3.54.0", - "resolved": "https://registry.npmjs.org/node-abi/-/node-abi-3.54.0.tgz", - "integrity": "sha512-p7eGEiQil0YUV3ItH4/tBb781L5impVmmx2E9FRKF7d18XXzp4PGT2tdYMFY6wQqgxD0IwNZOiSJ0/K0fSi/OA==", - "dependencies": { - "semver": "^7.3.5" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-abi/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/node-addon-api": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.0.0.tgz", - "integrity": "sha512-vgbBJTS4m5/KkE16t5Ly0WW9hz46swAstv0hYYwMtbG7AznRhNyfLRe8HZAiWIpcHzoO7HxhLuBQj9rJ/Ho0ZA==" - }, "node_modules/node-fetch": { "version": "2.6.7", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", @@ -2218,75 +1368,6 @@ } } }, - "node_modules/node-gyp": { - "version": "8.4.1", - "resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-8.4.1.tgz", - "integrity": "sha512-olTJRgUtAb/hOXG0E93wZDs5YiJlgbXxTwQAFHyNlRsXQnYzUaF2aGgujZbw+hR8aF4ZG/rST57bWMWD16jr9w==", - "optional": true, - "dependencies": { - "env-paths": "^2.2.0", - "glob": "^7.1.4", - "graceful-fs": "^4.2.6", - "make-fetch-happen": "^9.1.0", - "nopt": "^5.0.0", - "npmlog": "^6.0.0", - "rimraf": "^3.0.2", - "semver": "^7.3.5", - "tar": "^6.1.2", - "which": "^2.0.2" - }, - "bin": { - "node-gyp": "bin/node-gyp.js" - }, - "engines": { - "node": ">= 10.12.0" - } - }, - "node_modules/node-gyp/node_modules/semver": { - "version": "7.5.4", - "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", - "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", - "optional": true, - "dependencies": { - "lru-cache": "^6.0.0" - }, - "bin": { - "semver": "bin/semver.js" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/nopt": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/nopt/-/nopt-5.0.0.tgz", - "integrity": "sha512-Tbj67rffqceeLpcRXrT7vKAN8CwfPeIBgM7E6iBkmKLV7bEMwpGgYLGv0jACUsECaa/vuxP0IjEont6umdMgtQ==", - "optional": true, - "dependencies": { - "abbrev": "1" - }, - "bin": { - "nopt": "bin/nopt.js" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/npmlog": { - "version": "6.0.2", - "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-6.0.2.tgz", - "integrity": "sha512-/vBvz5Jfr9dT/aFWd0FIRf+T/Q2WBsLENygUaFUqstqsycmZAP/t5BvFJTK0viFmSUxiUKTUplWy5vt+rvKIxg==", - "optional": true, - "dependencies": { - "are-we-there-yet": "^3.0.0", - "console-control-strings": "^1.1.0", - "gauge": "^4.0.3", - "set-blocking": "^2.0.0" - }, - "engines": { - "node": "^12.13.0 || ^14.15.0 || >=16.0.0" - } - }, "node_modules/oauth-sign": { "version": "0.9.0", "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", @@ -2330,14 +1411,6 @@ "node": ">= 0.8" } }, - "node_modules/once": { - "version": "1.4.0", - "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - "dependencies": { - "wrappy": "1" - } - }, "node_modules/onetime": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", @@ -2379,21 +1452,6 @@ "node": ">=0.10.0" } }, - "node_modules/p-map": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/p-map/-/p-map-4.0.0.tgz", - "integrity": "sha512-/bjOqmgETBYB5BoEeGVea8dmvHb2m9GLy1E9W43yeyfP6QQCZGFNa+XRceJEuDB6zqr+gKpIAmlLebMpykw/MQ==", - "optional": true, - "dependencies": { - "aggregate-error": "^3.0.0" - }, - "engines": { - "node": ">=10" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, "node_modules/packet-reader": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", @@ -2419,15 +1477,6 @@ "node": ">= 0.8" } }, - "node_modules/path-is-absolute": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - "optional": true, - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/path-to-regexp": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", @@ -2439,14 +1488,14 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" }, "node_modules/pg": { - "version": "8.10.0", - "resolved": "https://registry.npmjs.org/pg/-/pg-8.10.0.tgz", - "integrity": "sha512-ke7o7qSTMb47iwzOSaZMfeR7xToFdkE71ifIipOAAaLIM0DYzfOAXlgFFmYUIE2BcJtvnVlGCID84ZzCegE8CQ==", + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/pg/-/pg-8.11.3.tgz", + "integrity": "sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==", "dependencies": { "buffer-writer": "2.0.0", "packet-reader": "1.0.0", - "pg-connection-string": "^2.5.0", - "pg-pool": "^3.6.0", + "pg-connection-string": "^2.6.2", + "pg-pool": "^3.6.1", "pg-protocol": "^1.6.0", "pg-types": "^2.1.0", "pgpass": "1.x" @@ -2454,6 +1503,9 @@ "engines": { "node": ">= 8.0.0" }, + "optionalDependencies": { + "pg-cloudflare": "^1.1.1" + }, "peerDependencies": { "pg-native": ">=3.0.1" }, @@ -2463,10 +1515,27 @@ } } }, + "node_modules/pg-cloudflare": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pg-cloudflare/-/pg-cloudflare-1.1.1.tgz", + "integrity": "sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==", + "optional": true + }, "node_modules/pg-connection-string": { - "version": "2.5.0", - "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.5.0.tgz", - "integrity": "sha512-r5o/V/ORTA6TmUnyWZR9nCj1klXCO2CEKNRlVuJptZe85QuhFayC7WeMic7ndayT5IRIR0S0xFxFi2ousartlQ==" + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.6.2.tgz", + "integrity": "sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==" + }, + "node_modules/pg-hstore": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/pg-hstore/-/pg-hstore-2.3.4.tgz", + "integrity": "sha512-N3SGs/Rf+xA1M2/n0JBiXFDVMzdekwLZLAO0g7mpDY9ouX+fDI7jS6kTq3JujmYbtNSJ53TJ0q4G98KVZSM4EA==", + "dependencies": { + "underscore": "^1.13.1" + }, + "engines": { + "node": ">= 0.8.x" + } }, "node_modules/pg-int8": { "version": "1.0.1", @@ -2477,9 +1546,9 @@ } }, "node_modules/pg-pool": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.6.0.tgz", - "integrity": "sha512-clFRf2ksqd+F497kWFyM21tMjeikn60oGDmqMT8UBrynEwVEX/5R5xd2sdvdo1cZCFlguORNpVuqxIj+aK4cfQ==", + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.6.1.tgz", + "integrity": "sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==", "peerDependencies": { "pg": ">=8.0" } @@ -2547,31 +1616,6 @@ "node": ">=0.10.0" } }, - "node_modules/prebuild-install": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/prebuild-install/-/prebuild-install-7.1.1.tgz", - "integrity": "sha512-jAXscXWMcCK8GgCoHOfIr0ODh5ai8mj63L2nWrjuAgXE6tDyYGnx4/8o/rCgU+B4JSyZBKbeZqzhtwtC3ovxjw==", - "dependencies": { - "detect-libc": "^2.0.0", - "expand-template": "^2.0.3", - "github-from-package": "0.0.0", - "minimist": "^1.2.3", - "mkdirp-classic": "^0.5.3", - "napi-build-utils": "^1.0.1", - "node-abi": "^3.3.0", - "pump": "^3.0.0", - "rc": "^1.2.7", - "simple-get": "^4.0.0", - "tar-fs": "^2.0.0", - "tunnel-agent": "^0.6.0" - }, - "bin": { - "prebuild-install": "bin.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/premiumize-api": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/premiumize-api/-/premiumize-api-1.0.3.tgz", @@ -2596,25 +1640,6 @@ "node": ">=10" } }, - "node_modules/promise-inflight": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/promise-inflight/-/promise-inflight-1.0.1.tgz", - "integrity": "sha512-6zWPyEOFaQBJYcGMHBKTKJ3u6TBsnMFOIZSa6ce1e/ZrrsOlnHRHbabMjLiBYKp+n44X9eUI6VUPaukCXHuG4g==", - "optional": true - }, - "node_modules/promise-retry": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/promise-retry/-/promise-retry-2.0.1.tgz", - "integrity": "sha512-y+WKFlBR8BGXnsNlIHFGPZmyDf3DFMoLhaflAnyZgV6rG6xu+JwesTo2Q9R6XwYmtmwAFCkAk3e35jEdoeh/3g==", - "optional": true, - "dependencies": { - "err-code": "^2.0.2", - "retry": "^0.12.0" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/proxy-addr": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", @@ -2642,15 +1667,6 @@ "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" }, - "node_modules/pump": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz", - "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==", - "dependencies": { - "end-of-stream": "^1.1.0", - "once": "^1.3.1" - } - }, "node_modules/punycode": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", @@ -2695,20 +1711,6 @@ "node": ">= 0.8" } }, - "node_modules/rc": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/rc/-/rc-1.2.8.tgz", - "integrity": "sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==", - "dependencies": { - "deep-extend": "^0.6.0", - "ini": "~1.3.0", - "minimist": "^1.2.0", - "strip-json-comments": "~2.0.1" - }, - "bin": { - "rc": "cli.js" - } - }, "node_modules/readable-stream": { "version": "2.3.8", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", @@ -2801,35 +1803,11 @@ "node": ">=4" } }, - "node_modules/retry": { - "version": "0.12.0", - "resolved": "https://registry.npmjs.org/retry/-/retry-0.12.0.tgz", - "integrity": "sha512-9LkiTwjUh6rT555DtE9rTX+BKByPfrMzEAtnlEtdEwr3Nkffwiihqe2bWADg+OQRjt9gl6ICdmB/ZFDCGAtSow==", - "optional": true, - "engines": { - "node": ">= 4" - } - }, "node_modules/retry-as-promised": { "version": "7.0.4", "resolved": "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-7.0.4.tgz", "integrity": "sha512-XgmCoxKWkDofwH8WddD0w85ZfqYz+ZHlr5yo+3YUCfycWawU56T5ckWXsScsj5B8tqUcIG67DxXByo3VUgiAdA==" }, - "node_modules/rimraf": { - "version": "3.0.2", - "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz", - "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==", - "optional": true, - "dependencies": { - "glob": "^7.1.3" - }, - "bin": { - "rimraf": "bin.js" - }, - "funding": { - "url": "https://github.com/sponsors/isaacs" - } - }, "node_modules/router": { "version": "1.3.8", "resolved": "https://registry.npmjs.org/router/-/router-1.3.8.tgz", @@ -3072,12 +2050,6 @@ "node": ">= 0.8.0" } }, - "node_modules/set-blocking": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", - "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==", - "optional": true - }, "node_modules/setprototypeof": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", @@ -3101,110 +2073,6 @@ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" }, - "node_modules/simple-concat": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", - "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ] - }, - "node_modules/simple-get": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-4.0.1.tgz", - "integrity": "sha512-brv7p5WgH0jmQJr1ZDDfKDOSeWWg+OVypG99A/5vYGPqJ6pxiaHLy8nxtFjBA7oMa01ebA9gfh1uMCFqOuXxvA==", - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/feross" - }, - { - "type": "patreon", - "url": "https://www.patreon.com/feross" - }, - { - "type": "consulting", - "url": "https://feross.org/support" - } - ], - "dependencies": { - "decompress-response": "^6.0.0", - "once": "^1.3.1", - "simple-concat": "^1.0.0" - } - }, - "node_modules/smart-buffer": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/smart-buffer/-/smart-buffer-4.2.0.tgz", - "integrity": "sha512-94hK0Hh8rPqQl2xXc3HsaBoOXKV20MToPkcXvwbISWLEs+64sBq5kFgn2kJDHb1Pry9yrP0dxrCI9RRci7RXKg==", - "optional": true, - "engines": { - "node": ">= 6.0.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks": { - "version": "2.7.1", - "resolved": "https://registry.npmjs.org/socks/-/socks-2.7.1.tgz", - "integrity": "sha512-7maUZy1N7uo6+WVEX6psASxtNlKaNVMlGQKkG/63nEDdLOWNbiUMoLK7X4uYoLhQstau72mLgfEWcXcwsaHbYQ==", - "optional": true, - "dependencies": { - "ip": "^2.0.0", - "smart-buffer": "^4.2.0" - }, - "engines": { - "node": ">= 10.13.0", - "npm": ">= 3.0.0" - } - }, - "node_modules/socks-proxy-agent": { - "version": "6.2.1", - "resolved": "https://registry.npmjs.org/socks-proxy-agent/-/socks-proxy-agent-6.2.1.tgz", - "integrity": "sha512-a6KW9G+6B3nWZ1yB8G7pJwL3ggLy1uTzKAgCb7ttblwqdz9fMGJUuTy3uFzEP48FAs9FLILlmzDlE2JJhVQaXQ==", - "optional": true, - "dependencies": { - "agent-base": "^6.0.2", - "debug": "^4.3.3", - "socks": "^2.6.2" - }, - "engines": { - "node": ">= 10" - } - }, - "node_modules/socks-proxy-agent/node_modules/debug": { - "version": "4.3.4", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", - "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", - "optional": true, - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/socks-proxy-agent/node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "optional": true - }, "node_modules/sparse-bitfield": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", @@ -3235,29 +2103,6 @@ "node": ">= 6" } }, - "node_modules/sqlite3": { - "version": "5.1.7", - "resolved": "https://registry.npmjs.org/sqlite3/-/sqlite3-5.1.7.tgz", - "integrity": "sha512-GGIyOiFaG+TUra3JIfkI/zGP8yZYLPQ0pl1bH+ODjiX57sPhrLU5sQJn1y9bDKZUFYkX1crlrPfSYt0BKKdkog==", - "hasInstallScript": true, - "dependencies": { - "bindings": "^1.5.0", - "node-addon-api": "^7.0.0", - "prebuild-install": "^7.1.1", - "tar": "^6.1.11" - }, - "optionalDependencies": { - "node-gyp": "8.x" - }, - "peerDependencies": { - "node-gyp": "8.x" - }, - "peerDependenciesMeta": { - "node-gyp": { - "optional": true - } - } - }, "node_modules/sshpk": { "version": "1.16.1", "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", @@ -3282,18 +2127,6 @@ "node": ">=0.10.0" } }, - "node_modules/ssri": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ssri/-/ssri-8.0.1.tgz", - "integrity": "sha512-97qShzy1AiyxvPNIkLWoGua7xoQzzPjQ0HAH4B0rWKo7SZ6USuPcrUiAFrws0UH8RrbWmgq3LMTObhPIHbbBeQ==", - "optional": true, - "dependencies": { - "minipass": "^3.1.1" - }, - "engines": { - "node": ">= 8" - } - }, "node_modules/statuses": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", @@ -3384,14 +2217,6 @@ "node": ">=6" } }, - "node_modules/strip-json-comments": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz", - "integrity": "sha512-4gB8na07fecVVkOI6Rs4e7T6NOTki5EmL7TUduTs6bu3EdnSycntVJ4re8kgZA+wx9IueI2Y11bfbgwtzuE0KQ==", - "engines": { - "node": ">=0.10.0" - } - }, "node_modules/supports-color": { "version": "5.5.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", @@ -3474,95 +2299,6 @@ "uuid": "dist/bin/uuid" } }, - "node_modules/tar": { - "version": "6.2.0", - "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.0.tgz", - "integrity": "sha512-/Wo7DcT0u5HUV486xg675HtjNd3BXZ6xDbzsCUZPt5iw8bTQ63bP0Raut3mvro9u+CUyq7YQd8Cx55fsZXxqLQ==", - "dependencies": { - "chownr": "^2.0.0", - "fs-minipass": "^2.0.0", - "minipass": "^5.0.0", - "minizlib": "^2.1.1", - "mkdirp": "^1.0.3", - "yallist": "^4.0.0" - }, - "engines": { - "node": ">=10" - } - }, - "node_modules/tar-fs": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/tar-fs/-/tar-fs-2.1.1.tgz", - "integrity": "sha512-V0r2Y9scmbDRLCNex/+hYzvp/zyYjvFbHPNgVTKfQvVrb6guiE/fxP+XblDNR011utopbkex2nM4dHNV6GDsng==", - "dependencies": { - "chownr": "^1.1.1", - "mkdirp-classic": "^0.5.2", - "pump": "^3.0.0", - "tar-stream": "^2.1.4" - } - }, - "node_modules/tar-fs/node_modules/chownr": { - "version": "1.1.4", - "resolved": "https://registry.npmjs.org/chownr/-/chownr-1.1.4.tgz", - "integrity": "sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==" - }, - "node_modules/tar-stream": { - "version": "2.2.0", - "resolved": "https://registry.npmjs.org/tar-stream/-/tar-stream-2.2.0.tgz", - "integrity": "sha512-ujeqbceABgwMZxEJnk2HDY2DlnUZ+9oEcb1KzTVfYHio0UE6dG71n60d8D2I4qNvleWrrXpmjpt7vZeF1LnMZQ==", - "dependencies": { - "bl": "^4.0.3", - "end-of-stream": "^1.4.1", - "fs-constants": "^1.0.0", - "inherits": "^2.0.3", - "readable-stream": "^3.1.1" - }, - "engines": { - "node": ">=6" - } - }, - "node_modules/tar-stream/node_modules/bl": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/bl/-/bl-4.1.0.tgz", - "integrity": "sha512-1W07cM9gS6DcLperZfFSj+bWLtaPGSOHWhPiGzXmvVJbRLdG82sH/Kn8EtW1VqWVA54AKf2h5k5BbnIbwF3h6w==", - "dependencies": { - "buffer": "^5.5.0", - "inherits": "^2.0.4", - "readable-stream": "^3.4.0" - } - }, - "node_modules/tar-stream/node_modules/readable-stream": { - "version": "3.6.2", - "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - "dependencies": { - "inherits": "^2.0.3", - "string_decoder": "^1.1.1", - "util-deprecate": "^1.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/tar/node_modules/minipass": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - "engines": { - "node": ">=8" - } - }, - "node_modules/tar/node_modules/mkdirp": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - "bin": { - "mkdirp": "bin/cmd.js" - }, - "engines": { - "node": ">=10" - } - }, "node_modules/tdigest": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", @@ -3693,23 +2429,10 @@ "node": "*" } }, - "node_modules/unique-filename": { - "version": "1.1.1", - "resolved": "https://registry.npmjs.org/unique-filename/-/unique-filename-1.1.1.tgz", - "integrity": "sha512-Vmp0jIp2ln35UTXuryvjzkjGdRyf9b2lTXuSYUiPmzRcl3FDtYqAwOnTJkAngD9SWhnoJzDbTKwaOrZ+STtxNQ==", - "optional": true, - "dependencies": { - "unique-slug": "^2.0.0" - } - }, - "node_modules/unique-slug": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/unique-slug/-/unique-slug-2.0.2.tgz", - "integrity": "sha512-zoWr9ObaxALD3DOPfjPSqxt4fnZiWblxHIgeWqW8x7UqDzEtHEQLzji2cuJYQFCU6KmoJikOYAZlrTHHebjx2w==", - "optional": true, - "dependencies": { - "imurmurhash": "^0.1.4" - } + "node_modules/underscore": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" }, "node_modules/unpipe": { "version": "1.0.0", @@ -3805,30 +2528,6 @@ "webidl-conversions": "^3.0.0" } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "optional": true, - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/wide-align": { - "version": "1.1.5", - "resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.5.tgz", - "integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==", - "optional": true, - "dependencies": { - "string-width": "^1.0.2 || 2 || 3 || 4" - } - }, "node_modules/wkx": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", @@ -3837,11 +2536,6 @@ "@types/node": "*" } }, - "node_modules/wrappy": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" - }, "node_modules/xtend": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", diff --git a/addon/package.json b/addon/package.json index 11eb324..da2c7f4 100644 --- a/addon/package.json +++ b/addon/package.json @@ -23,14 +23,14 @@ "named-queue": "^2.2.1", "offcloud-api": "^1.0.2", "parse-torrent-title": "git://github.com/TheBeastLT/parse-torrent-title.git#022408972c2a040f846331a912a6a8487746a654", - "pg": "^8.10.0", + "pg": "^8.11.3", + "pg-hstore": "^2.3.4", "premiumize-api": "^1.0.3", "prom-client": "^12.0.0", "real-debrid-api": "git://github.com/TheBeastLT/node-real-debrid.git#d1f7eaa8593b947edbfbc8a92a176448b48ef445", "request-ip": "^3.3.0", "router": "^1.3.8", "sequelize": "^6.31.1", - "sqlite3": "^5.1.7", "stremio-addon-sdk": "^1.6.10", "swagger-stats": "^0.99.7", "ua-parser-js": "^1.0.36", diff --git a/scraper/Dockerfile b/scraper/Dockerfile new file mode 100644 index 0000000..9aaf66a --- /dev/null +++ b/scraper/Dockerfile @@ -0,0 +1,12 @@ +FROM node:16-alpine + +RUN apk update && apk upgrade && \ + apk add --no-cache git + +WORKDIR /home/node/app + +COPY package*.json ./ +RUN npm ci --only-production +COPY . . + +CMD [ "node", "--insecure-http-parser", "index.js" ] \ No newline at end of file diff --git a/scraper/README.md b/scraper/README.md new file mode 100644 index 0000000..d49c360 --- /dev/null +++ b/scraper/README.md @@ -0,0 +1,37 @@ +# Torrentio Scraper + +## Initial dumps + +### The Pirate Bay + +https://mega.nz/#F!tktzySBS!ndSEaK3Z-Uc3zvycQYxhJA + +https://thepiratebay.org/static/dump/csv/ + +### Kickass + +https://mega.nz/#F!tktzySBS!ndSEaK3Z-Uc3zvycQYxhJA + +https://web.archive.org/web/20150416071329/http://kickass.to/api + +### RARBG + +Scrape movie and tv catalog using [www.webscraper.io](https://www.webscraper.io/) for available `imdbIds` and use those via the api to search for torrents. + +Movies sitemap +```json +{"_id":"rarbg-movies","startUrl":["https://rarbgmirror.org/catalog/movies/[1-4235]"],"selectors":[{"id":"rarbg-movie-imdb-id","type":"SelectorHTML","parentSelectors":["_root"],"selector":".lista-rounded table td[width='110']","multiple":true,"regex":"tt[0-9]+","delay":0}]} +``` + +TV sitemap +```json +{"_id":"rarbg-tv","startUrl":["https://rarbgmirror.org/catalog/tv/[1-609]"],"selectors":[{"id":"rarbg-tv-imdb-id","type":"SelectorHTML","parentSelectors":["_root"],"selector":".lista-rounded table td[width='110']","multiple":true,"regex":"tt[0-9]+","delay":0}]} +``` + +### Migrating Database + +When migrating database to a new one it is important to alter the `files_id_seq` sequence to the maximum file id value plus 1. + +```sql +ALTER SEQUENCE files_id_seq RESTART WITH ; +``` \ No newline at end of file diff --git a/scraper/index.js b/scraper/index.js new file mode 100644 index 0000000..3ad1aa1 --- /dev/null +++ b/scraper/index.js @@ -0,0 +1,14 @@ +const express = require("express"); +const server = express(); +const { connect } = require('./lib/repository'); +const { startScraper } = require('./scheduler/scheduler') + +server.get('/', function (req, res) { + res.sendStatus(200); +}); + +server.listen(process.env.PORT || 7000, async () => { + await connect(); + console.log('Scraper started'); + startScraper(); +}); \ No newline at end of file diff --git a/scraper/lib/cache.js b/scraper/lib/cache.js new file mode 100644 index 0000000..f8a1740 --- /dev/null +++ b/scraper/lib/cache.js @@ -0,0 +1,72 @@ +const cacheManager = require('cache-manager'); +const mangodbStore = require('cache-manager-mongodb'); + +const GLOBAL_KEY_PREFIX = 'stremio-torrentio'; +const IMDB_ID_PREFIX = `${GLOBAL_KEY_PREFIX}|imdb_id`; +const KITSU_ID_PREFIX = `${GLOBAL_KEY_PREFIX}|kitsu_id`; +const METADATA_PREFIX = `${GLOBAL_KEY_PREFIX}|metadata`; +const TRACKERS_KEY_PREFIX = `${GLOBAL_KEY_PREFIX}|trackers`; + +const GLOBAL_TTL = process.env.METADATA_TTL || 7 * 24 * 60 * 60; // 7 days +const MEMORY_TTL = process.env.METADATA_TTL || 2 * 60 * 60; // 2 hours +const TRACKERS_TTL = 2 * 24 * 60 * 60; // 2 days + +const MONGO_URI = process.env.MONGODB_URI; + +const memoryCache = initiateMemoryCache(); +const remoteCache = initiateRemoteCache(); + +function initiateRemoteCache() { + if (MONGO_URI) { + return cacheManager.caching({ + store: mangodbStore, + uri: MONGO_URI, + options: { + collection: 'torrentio_scraper_collection', + useUnifiedTopology: true + }, + ttl: GLOBAL_TTL, + ignoreCacheErrors: true + }); + } else { + return cacheManager.caching({ + store: 'memory', + ttl: GLOBAL_TTL + }); + } +} + +function initiateMemoryCache() { + return cacheManager.caching({ + store: 'memory', + ttl: MEMORY_TTL + }); +} + +function cacheWrap(cache, key, method, options) { + return cache.wrap(key, method, options); +} + +function cacheWrapImdbId(key, method) { + return cacheWrap(remoteCache, `${IMDB_ID_PREFIX}:${key}`, method, { ttl: GLOBAL_TTL }); +} + +function cacheWrapKitsuId(key, method) { + return cacheWrap(remoteCache, `${KITSU_ID_PREFIX}:${key}`, method, { ttl: GLOBAL_TTL }); +} + +function cacheWrapMetadata(id, method) { + return cacheWrap(memoryCache, `${METADATA_PREFIX}:${id}`, method, { ttl: MEMORY_TTL }); +} + +function cacheTrackers(method) { + return cacheWrap(memoryCache, `${TRACKERS_KEY_PREFIX}`, method, { ttl: TRACKERS_TTL }); +} + +module.exports = { + cacheWrapImdbId, + cacheWrapKitsuId, + cacheWrapMetadata, + cacheTrackers +}; + diff --git a/scraper/lib/extension.js b/scraper/lib/extension.js new file mode 100644 index 0000000..a38787b --- /dev/null +++ b/scraper/lib/extension.js @@ -0,0 +1,64 @@ +const VIDEO_EXTENSIONS = [ + "3g2", + "3gp", + "avi", + "flv", + "mkv", + "mk3d", + "mov", + "mp2", + "mp4", + "m4v", + "mpe", + "mpeg", + "mpg", + "mpv", + "webm", + "wmv", + "ogm", + "divx" +]; +const SUBTITLE_EXTENSIONS = [ + "aqt", + "gsub", + "jss", + "sub", + "ttxt", + "pjs", + "psb", + "rt", + "smi", + "slt", + "ssf", + "srt", + "ssa", + "ass", + "usf", + "idx", + "vtt" +]; +const DISK_EXTENSIONS = [ + "iso", + "m2ts", + "ts", + "vob" +] + +function isVideo(filename) { + return isExtension(filename, VIDEO_EXTENSIONS); +} + +function isSubtitle(filename) { + return isExtension(filename, SUBTITLE_EXTENSIONS); +} + +function isDisk(filename) { + return isExtension(filename, DISK_EXTENSIONS); +} + +function isExtension(filename, extensions) { + const extensionMatch = filename.match(/\.(\w{2,4})$/); + return extensionMatch && extensions.includes(extensionMatch[1].toLowerCase()); +} + +module.exports = { isVideo, isSubtitle, isDisk } \ No newline at end of file diff --git a/scraper/lib/metadata.js b/scraper/lib/metadata.js new file mode 100644 index 0000000..3d9ae32 --- /dev/null +++ b/scraper/lib/metadata.js @@ -0,0 +1,155 @@ +const needle = require('needle'); +const nameToImdb = require('name-to-imdb'); +const googleIt = require('google-it'); +const googleSr = require('google-sr'); +const bing = require('nodejs-bing'); +const he = require('he'); +const { cacheWrapImdbId, cacheWrapKitsuId, cacheWrapMetadata } = require('./cache'); +const { Type } = require('./types'); +const { getRandomUserAgent } = require('./requestHelper'); + +const CINEMETA_URL = 'https://v3-cinemeta.strem.io'; +const KITSU_URL = 'https://anime-kitsu.strem.fun'; +const TIMEOUT = 20000; + +function getMetadata(id, type = Type.SERIES) { + if (!id) { + return Promise.reject("no valid id provided"); + } + + const key = Number.isInteger(id) || id.match(/^\d+$/) ? `kitsu:${id}` : id; + const metaType = type === Type.MOVIE ? Type.MOVIE : Type.SERIES; + return cacheWrapMetadata(key, () => _requestMetadata(`${KITSU_URL}/meta/${metaType}/${key}.json`) + .catch(() => _requestMetadata(`${CINEMETA_URL}/meta/${metaType}/${key}.json`)) + .catch(() => { + // try different type in case there was a mismatch + const otherType = metaType === Type.MOVIE ? Type.SERIES : Type.MOVIE; + return _requestMetadata(`${CINEMETA_URL}/meta/${otherType}/${key}.json`) + }) + .catch((error) => { + throw new Error(`failed metadata query ${key} due: ${error.message}`); + })); +} + +function _requestMetadata(url) { + return needle('get', url, { open_timeout: TIMEOUT }) + .then((response) => { + const body = response.body; + if (body && body.meta && (body.meta.imdb_id || body.meta.kitsu_id)) { + return { + kitsuId: body.meta.kitsu_id, + imdbId: body.meta.imdb_id, + type: body.meta.type, + title: body.meta.name, + year: body.meta.year, + country: body.meta.country, + genres: body.meta.genres, + status: body.meta.status, + videos: (body.meta.videos || []) + .map((video) => Number.isInteger(video.imdbSeason) + ? { + name: video.name || video.title, + season: video.season, + episode: video.episode, + imdbSeason: video.imdbSeason, + imdbEpisode: video.imdbEpisode + } + : { + name: video.name || video.title, + season: video.season, + episode: video.episode, + kitsuId: video.kitsu_id, + kitsuEpisode: video.kitsuEpisode, + released: video.released + } + ), + episodeCount: Object.values((body.meta.videos || []) + .filter((entry) => entry.season !== 0 && entry.episode !== 0) + .sort((a, b) => a.season - b.season) + .reduce((map, next) => { + map[next.season] = map[next.season] + 1 || 1; + return map; + }, {})), + totalCount: body.meta.videos && body.meta.videos + .filter((entry) => entry.season !== 0 && entry.episode !== 0).length + }; + } else { + throw new Error('No search results'); + } + }); +} + +function escapeTitle(title) { + return title.toLowerCase() + .normalize('NFKD') // normalize non-ASCII characters + .replace(/[\u0300-\u036F]/g, '') + .replace(/&/g, 'and') + .replace(/[;, ~./]+/g, ' ') // replace dots, commas or underscores with spaces + .replace(/[^\w \-()+#@!'\u0400-\u04ff]+/g, '') // remove all non-alphanumeric chars + .replace(/^\d{1,2}[.#\s]+(?=(?:\d+[.\s]*)?[\u0400-\u04ff])/i, '') // remove russian movie numbering + .replace(/\s{2,}/, ' ') // replace multiple spaces + .trim(); +} + +function escapeHTML(title) { + return he.decode(title) + .replace(/&/g, "&"); +} + +async function getImdbId(info, type) { + const name = escapeTitle(info.title); + const year = info.year || info.date && info.date.slice(0, 4); + const key = `${name}_${year}_${type}`; + const query = `${name} ${year || ''} ${type} imdb`; + + return cacheWrapImdbId(key, + () => new Promise((resolve, reject) => { + nameToImdb({ name: encodeURIComponent(name), year: info.year, type }, function (err, res) { + if (res) { + resolve(res); + } else { + reject(err || new Error('failed imdbId search')); + } + }); + // }).catch(() => googleIt({ query, userAgent: getRandomUserAgent(), disableConsole: true }) + // .then(results => results.length ? results : Promise.reject('No results')) + }).catch(() => googleSr(query) + .then(response => response.searchResults.length ? response.searchResults : Promise.reject('No results')) + // .catch(() => bing.web(query)) + .then(results => results + .map(result => result.link) + .find(result => result.includes('imdb.com/title/'))) + .then(result => result && result.match(/imdb\.com\/title\/(tt\d+)/)) + .then(match => match && match[1]))) + .then(imdbId => imdbId && 'tt' + imdbId.replace(/tt0*([1-9][0-9]*)$/, '$1').padStart(7, '0')); +} + +async function getKitsuId(info) { + const title = escapeTitle(info.title.replace(/\s\|\s.*/, '')); + const year = info.year ? ` ${info.year}` : ''; + const season = info.season > 1 ? ` S${info.season}` : ''; + const key = `${title}${year}${season}`; + const query = encodeURIComponent(key); + + return cacheWrapKitsuId(key, + () => needle('get', `${KITSU_URL}/catalog/series/kitsu-anime-list/search=${query}.json`, { open_timeout: 60000 }) + .then((response) => { + const body = response.body; + if (body && body.metas && body.metas.length) { + return body.metas[0].id.replace('kitsu:', ''); + } else { + throw new Error('No search results'); + } + })); +} + +async function isEpisodeImdbId(imdbId) { + if (!imdbId) { + return false; + } + return needle('get', `https://www.imdb.com/title/${imdbId}/`, { open_timeout: 10000, follow: 2 }) + .then(response => !!(response.body && response.body.includes('video.episode'))) + .catch((err) => false); +} + +module.exports = { getMetadata, getImdbId, getKitsuId, isEpisodeImdbId, escapeHTML, escapeTitle }; diff --git a/scraper/lib/parseHelper.js b/scraper/lib/parseHelper.js new file mode 100644 index 0000000..3e1331f --- /dev/null +++ b/scraper/lib/parseHelper.js @@ -0,0 +1,100 @@ +const { parse } = require('parse-torrent-title'); +const { Type } = require('./types'); + +const MULTIPLE_FILES_SIZE = 4 * 1024 * 1024 * 1024; // 4 GB + +function parseSeriesVideos(torrent, videos) { + const parsedTorrentName = parse(torrent.title); + const hasMovies = parsedTorrentName.complete || !!torrent.title.match(/movies?(?:\W|$)/i); + const parsedVideos = videos.map(video => parseSeriesVideo(video, parsedTorrentName)); + return parsedVideos.map(video => ({ ...video, isMovie: isMovieVideo(video, parsedVideos, torrent.type, hasMovies) })); +} + +function parseSeriesVideo(video, parsedTorrentName) { + const videoInfo = parse(video.name); + // the episode may be in a folder containing season number + if (!Number.isInteger(videoInfo.season) && video.path.includes('/')) { + const folders = video.path.split('/'); + const pathInfo = parse(folders[folders.length - 2]); + videoInfo.season = pathInfo.season; + } + if (!Number.isInteger(videoInfo.season) && parsedTorrentName.season) { + videoInfo.season = parsedTorrentName.season; + } + if (!Number.isInteger(videoInfo.season) && videoInfo.seasons && videoInfo.seasons.length > 1) { + // in case single file was interpreted as having multiple seasons + videoInfo.season = videoInfo.seasons[0]; + } + if (!Number.isInteger(videoInfo.season) && video.path.includes('/') && parsedTorrentName.seasons + && parsedTorrentName.seasons.length > 1) { + // russian season are usually named with 'series name-2` i.e. Улицы разбитых фонарей-6/22. Одиночный выстрел.mkv + const folderPathSeasonMatch = video.path.match(/[\u0400-\u04ff]-(\d{1,2})(?=.*\/)/); + videoInfo.season = folderPathSeasonMatch && parseInt(folderPathSeasonMatch[1], 10) || undefined; + } + // sometimes video file does not have correct date format as in torrent title + if (!videoInfo.episodes && !videoInfo.date && parsedTorrentName.date) { + videoInfo.date = parsedTorrentName.date; + } + // limit number of episodes in case of incorrect parsing + if (videoInfo.episodes && videoInfo.episodes.length > 20) { + videoInfo.episodes = [videoInfo.episodes[0]]; + videoInfo.episode = videoInfo.episodes[0]; + } + // force episode to any found number if it was not parsed + if (!videoInfo.episodes && !videoInfo.date) { + const epMatcher = videoInfo.title.match( + /(? 3 + && otherVideos.filter(other => other.title === video.title && other.year === video.year) < 3; +} + +function isPackTorrent(torrent) { + if (torrent.pack) { + return true; + } + const parsedInfo = parse(torrent.title); + if (torrent.type === Type.MOVIE) { + return parsedInfo.complete || typeof parsedInfo.year === 'string' || /movies/i.test(torrent.title); + } + const hasMultipleEpisodes = parsedInfo.complete || + torrent.size > MULTIPLE_FILES_SIZE || + (parsedInfo.seasons && parsedInfo.seasons.length > 1) || + (parsedInfo.episodes && parsedInfo.episodes.length > 1) || + (parsedInfo.seasons && !parsedInfo.episodes); + const hasSingleEpisode = Number.isInteger(parsedInfo.episode) || (!parsedInfo.episodes && parsedInfo.date); + return hasMultipleEpisodes && !hasSingleEpisode; +} + +module.exports = { parseSeriesVideos, isPackTorrent } \ No newline at end of file diff --git a/scraper/lib/promises.js b/scraper/lib/promises.js new file mode 100644 index 0000000..042fedb --- /dev/null +++ b/scraper/lib/promises.js @@ -0,0 +1,57 @@ +/** + * Execute promises in sequence one after another. + */ +async function sequence(promises) { + return promises.reduce((promise, func) => + promise.then(result => func().then(Array.prototype.concat.bind(result))), Promise.resolve([])); +} + +/** + * Return first resolved promise as the result. + */ +async function first(promises) { + return Promise.all(promises.map((p) => { + // If a request fails, count that as a resolution so it will keep + // waiting for other possible successes. If a request succeeds, + // treat it as a rejection so Promise.all immediately bails out. + return p.then( + (val) => Promise.reject(val), + (err) => Promise.resolve(err) + ); + })).then( + // If '.all' resolved, we've just got an array of errors. + (errors) => Promise.reject(errors), + // If '.all' rejected, we've got the result we wanted. + (val) => Promise.resolve(val) + ); +} + +/** + * Delay promise + */ +async function delay(duration) { + return new Promise((resolve) => setTimeout(resolve, duration)); +} + +/** + * Timeout promise after a set time in ms + */ +async function timeout(timeoutMs, promise, message = 'Timed out') { + return Promise.race([ + promise, + new Promise(function (resolve, reject) { + setTimeout(function () { + reject(message); + }, timeoutMs); + }) + ]); +} + +/** + * Return most common value from given array. + */ +function mostCommonValue(array) { + return array.sort((a, b) => array.filter(v => v === a).length - array.filter(v => v === b).length).pop(); +} + +module.exports = { sequence, first, delay, timeout, mostCommonValue }; \ No newline at end of file diff --git a/scraper/lib/repository.js b/scraper/lib/repository.js new file mode 100644 index 0000000..29c6ea8 --- /dev/null +++ b/scraper/lib/repository.js @@ -0,0 +1,346 @@ +const moment = require('moment'); +const Promises = require('./promises') +const { Sequelize, DataTypes, fn, col, literal } = require('sequelize'); +const Op = Sequelize.Op; + +const DATABASE_URI = process.env.DATABASE_URI; + +const database = new Sequelize( + DATABASE_URI, + { + logging: false + } +); + +const Provider = database.define('provider', { + name: { type: DataTypes.STRING(32), primaryKey: true }, + lastScraped: { type: DataTypes.DATE }, + lastScrapedId: { type: DataTypes.STRING(128) } +}); + +const Torrent = database.define('torrent', + { + infoHash: { type: DataTypes.STRING(64), primaryKey: true }, + provider: { type: DataTypes.STRING(32), allowNull: false }, + torrentId: { type: DataTypes.STRING(512) }, + title: { type: DataTypes.STRING(512), allowNull: false }, + size: { type: DataTypes.BIGINT }, + type: { type: DataTypes.STRING(16), allowNull: false }, + uploadDate: { type: DataTypes.DATE, allowNull: false }, + seeders: { type: DataTypes.SMALLINT }, + trackers: { type: DataTypes.STRING(4096) }, + languages: { type: DataTypes.STRING(4096) }, + resolution: { type: DataTypes.STRING(16) }, + reviewed: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false }, + opened: { type: DataTypes.BOOLEAN, allowNull: false, defaultValue: false } + } +); + +const File = database.define('file', + { + id: { type: DataTypes.BIGINT, autoIncrement: true, primaryKey: true }, + infoHash: { + type: DataTypes.STRING(64), + allowNull: false, + references: { model: Torrent, key: 'infoHash' }, + onDelete: 'CASCADE' + }, + fileIndex: { type: DataTypes.INTEGER }, + title: { type: DataTypes.STRING(512), allowNull: false }, + size: { type: DataTypes.BIGINT }, + imdbId: { type: DataTypes.STRING(32) }, + imdbSeason: { type: DataTypes.INTEGER }, + imdbEpisode: { type: DataTypes.INTEGER }, + kitsuId: { type: DataTypes.INTEGER }, + kitsuEpisode: { type: DataTypes.INTEGER } + }, + { + indexes: [ + { + unique: true, + name: 'files_unique_file_constraint', + fields: [ + col('infoHash'), + fn('COALESCE', (col('fileIndex')), -1), + fn('COALESCE', (col('imdbId')), 'null'), + fn('COALESCE', (col('imdbSeason')), -1), + fn('COALESCE', (col('imdbEpisode')), -1), + fn('COALESCE', (col('kitsuId')), -1), + fn('COALESCE', (col('kitsuEpisode')), -1) + ] + }, + { unique: false, fields: ['imdbId', 'imdbSeason', 'imdbEpisode'] }, + { unique: false, fields: ['kitsuId', 'kitsuEpisode'] } + ] + } +); + +const Subtitle = database.define('subtitle', + { + infoHash: { + type: DataTypes.STRING(64), + allowNull: false, + references: { model: Torrent, key: 'infoHash' }, + onDelete: 'CASCADE' + }, + fileIndex: { + type: DataTypes.INTEGER, + allowNull: false + }, + fileId: { + type: DataTypes.BIGINT, + allowNull: true, + references: { model: File, key: 'id' }, + onDelete: 'SET NULL' + }, + title: { type: DataTypes.STRING(512), allowNull: false }, + }, + { + timestamps: false, + indexes: [ + { + unique: true, + name: 'subtitles_unique_subtitle_constraint', + fields: [ + col('infoHash'), + col('fileIndex'), + fn('COALESCE', (col('fileId')), -1) + ] + }, + { unique: false, fields: ['fileId'] } + ] + } +); + +const Content = database.define('content', + { + infoHash: { + type: DataTypes.STRING(64), + primaryKey: true, + allowNull: false, + references: { model: Torrent, key: 'infoHash' }, + onDelete: 'CASCADE' + }, + fileIndex: { + type: DataTypes.INTEGER, + primaryKey: true, + allowNull: false + }, + path: { type: DataTypes.STRING(512), allowNull: false }, + size: { type: DataTypes.BIGINT }, + }, + { + timestamps: false, + } +); + +const SkipTorrent = database.define('skip_torrent', { + infoHash: { type: DataTypes.STRING(64), primaryKey: true }, +}); + +Torrent.hasMany(File, { foreignKey: 'infoHash', constraints: false }); +File.belongsTo(Torrent, { foreignKey: 'infoHash', constraints: false }); +Torrent.hasMany(Content, { foreignKey: 'infoHash', constraints: false }); +Content.belongsTo(Torrent, { foreignKey: 'infoHash', constraints: false }); +File.hasMany(Subtitle, { foreignKey: 'fileId', constraints: false }); +Subtitle.belongsTo(File, { foreignKey: 'fileId', constraints: false }); + +function connect() { + if (process.env.ENABLE_SYNC) { + return database.sync({ alter: true }) + .catch(error => { + console.error('Failed syncing database: ', error); + throw error; + }); + } + return Promise.resolve(); +} + +function getProvider(provider) { + return Provider.findOrCreate({ where: { name: { [Op.eq]: provider.name } }, defaults: provider }) + .then((result) => result[0]) + .catch(() => provider); +} + +function getTorrent(torrent) { + const where = torrent.infoHash + ? { infoHash: torrent.infoHash } + : { provider: torrent.provider, torrentId: torrent.torrentId } + return Torrent.findOne({ where: where }); +} + +function getTorrentsBasedOnTitle(titleQuery, type) { + return getTorrentsBasedOnQuery({ title: { [Op.regexp]: `${titleQuery}` }, type: type }); +} + +function getTorrentsBasedOnQuery(where) { + return Torrent.findAll({ where: where }); +} + +function getTorrentsWithoutSize() { + return Torrent.findAll({ + where: literal( + 'exists (select 1 from files where files."infoHash" = torrent."infoHash" and files.size = 300000000)'), + order: [ + ['seeders', 'DESC'] + ] + }); +} + +function getUpdateSeedersTorrents(limit = 50) { + const until = moment().subtract(7, 'days').format('YYYY-MM-DD'); + return Torrent.findAll({ + where: literal(`torrent."updatedAt" < \'${until}\'`), + limit: limit, + order: [ + ['seeders', 'DESC'], + ['updatedAt', 'ASC'] + ] + }); +} + +function getUpdateSeedersNewTorrents(limit = 50) { + const lastUpdate = moment().subtract(12, 'hours').format('YYYY-MM-DD'); + const createdAfter = moment().subtract(4, 'days').format('YYYY-MM-DD'); + return Torrent.findAll({ + where: literal(`torrent."updatedAt" < \'${lastUpdate}\' AND torrent."createdAt" > \'${createdAfter}\'`), + limit: limit, + order: [ + ['seeders', 'ASC'], + ['updatedAt', 'ASC'] + ] + }); +} + +function getNoContentsTorrents() { + return Torrent.findAll({ + where: { opened: false, seeders: { [Op.gte]: 1 } }, + limit: 500, + order: [[fn('RANDOM')]] + }); +} + +function createTorrent(torrent) { + return Torrent.upsert(torrent) + .then(() => createContents(torrent.infoHash, torrent.contents)) + .then(() => createSubtitles(torrent.infoHash, torrent.subtitles)); +} + +function setTorrentSeeders(torrent, seeders) { + const where = torrent.infoHash + ? { infoHash: torrent.infoHash } + : { provider: torrent.provider, torrentId: torrent.torrentId } + return Torrent.update( + { seeders: seeders }, + { where: where } + ); +} + +function deleteTorrent(torrent) { + return Torrent.destroy({ where: { infoHash: torrent.infoHash } }) +} + +function createFile(file) { + if (file.id) { + return (file.dataValues ? file.save() : File.upsert(file)) + .then(() => upsertSubtitles(file, file.subtitles)); + } + if (file.subtitles && file.subtitles.length) { + file.subtitles = file.subtitles.map(subtitle => ({ infoHash: file.infoHash, title: subtitle.path, ...subtitle })); + } + return File.create(file, { include: [Subtitle], ignoreDuplicates: true }); +} + +function getFiles(torrent) { + return File.findAll({ where: { infoHash: torrent.infoHash } }); +} + +function getFilesBasedOnTitle(titleQuery) { + return File.findAll({ where: { title: { [Op.regexp]: `${titleQuery}` } } }); +} + +function deleteFile(file) { + return File.destroy({ where: { id: file.id } }) +} + +function createSubtitles(infoHash, subtitles) { + if (subtitles && subtitles.length) { + return Subtitle.bulkCreate(subtitles.map(subtitle => ({ infoHash, title: subtitle.path, ...subtitle }))); + } + return Promise.resolve(); +} + +function upsertSubtitles(file, subtitles) { + if (file.id && subtitles && subtitles.length) { + return Promises.sequence(subtitles + .map(subtitle => { + subtitle.fileId = file.id; + subtitle.infoHash = subtitle.infoHash || file.infoHash; + subtitle.title = subtitle.title || subtitle.path; + return subtitle; + }) + .map(subtitle => () => subtitle.dataValues ? subtitle.save() : Subtitle.create(subtitle))); + } + return Promise.resolve(); +} + +function getSubtitles(torrent) { + return Subtitle.findAll({ where: { infoHash: torrent.infoHash } }); +} + +function getUnassignedSubtitles() { + return Subtitle.findAll({ where: { fileId: null } }); +} + +function createContents(infoHash, contents) { + if (contents && contents.length) { + return Content.bulkCreate(contents.map(content => ({ infoHash, ...content })), { ignoreDuplicates: true }) + .then(() => Torrent.update({ opened: true }, { where: { infoHash: infoHash }, silent: true })); + } + return Promise.resolve(); +} + +function getContents(torrent) { + return Content.findAll({ where: { infoHash: torrent.infoHash } }); +} + +function getSkipTorrent(torrent) { + return SkipTorrent.findByPk(torrent.infoHash) + .then((result) => { + if (!result) { + throw new Error(`torrent not found: ${torrent.infoHash}`); + } + return result.dataValues; + }) +} + +function createSkipTorrent(torrent) { + return SkipTorrent.upsert({ infoHash: torrent.infoHash }); +} + +module.exports = { + connect, + getProvider, + createTorrent, + setTorrentSeeders, + getTorrent, + getTorrentsBasedOnTitle, + getTorrentsBasedOnQuery, + deleteTorrent, + getUpdateSeedersTorrents, + getUpdateSeedersNewTorrents, + getNoContentsTorrents, + createFile, + getFiles, + getFilesBasedOnTitle, + deleteFile, + createSubtitles, + upsertSubtitles, + getSubtitles, + getUnassignedSubtitles, + createContents, + getContents, + getSkipTorrent, + createSkipTorrent, + getTorrentsWithoutSize +}; diff --git a/scraper/lib/requestHelper.js b/scraper/lib/requestHelper.js new file mode 100644 index 0000000..2044dab --- /dev/null +++ b/scraper/lib/requestHelper.js @@ -0,0 +1,21 @@ +const UserAgent = require('user-agents'); +const userAgent = new UserAgent(); + +function getRandomUserAgent() { + return userAgent.random().toString(); +} + +function defaultOptionsWithProxy() { + if (process.env.PROXY_HOST && process.env.PROXY_TYPE) { + return { + proxy: process.env.PROXY_HOST, + headers: { + 'user-agent': getRandomUserAgent(), + 'proxy-type': process.env.PROXY_TYPE + } + } + } + return { userAgent: getRandomUserAgent() }; +} + +module.exports = { getRandomUserAgent, defaultOptionsWithProxy }; \ No newline at end of file diff --git a/scraper/lib/torrent.js b/scraper/lib/torrent.js new file mode 100644 index 0000000..510c214 --- /dev/null +++ b/scraper/lib/torrent.js @@ -0,0 +1,208 @@ +const torrentStream = require('torrent-stream'); +const needle = require('needle'); +const parseTorrent = require('parse-torrent'); +const BTClient = require('bittorrent-tracker') +const async = require('async'); +const decode = require('magnet-uri'); +const { Type } = require('./types'); +const { delay } = require('./promises') +const { isVideo, isSubtitle } = require('./extension'); +const { cacheTrackers } = require('./cache'); + +const TRACKERS_URL = 'https://ngosang.github.io/trackerslist/trackers_all.txt'; +const MAX_PEER_CONNECTIONS = process.env.MAX_PEER_CONNECTIONS || 20; +const SEEDS_CHECK_TIMEOUT = 15 * 1000; // 15 secs +const ADDITIONAL_TRACKERS = [ + 'http://tracker.trackerfix.com:80/announce', + 'udp://9.rarbg.me:2780', + 'udp://9.rarbg.to:2870' +]; +const ANIME_TRACKERS = [ + "http://nyaa.tracker.wf:7777/announce", + "udp://anidex.moe:6969/announce", + "udp://tracker-udp.anirena.com:80/announce", + "udp://tracker.uw0.xyz:6969/announce" +]; + +async function updateCurrentSeeders(torrentsInput) { + return new Promise(async (resolve) => { + const torrents = Array.isArray(torrentsInput) ? torrentsInput : [torrentsInput]; + const perTorrentResults = Object.fromEntries(new Map(torrents.map(torrent => [torrent.infoHash, {}]))); + const perTrackerInfoHashes = await Promise.all(torrents.map(torrent => getTorrentTrackers(torrent) + .then(torrentTrackers => ({ infoHash: torrent.infoHash, trackers: torrentTrackers })))) + .then(allTorrentTrackers => allTorrentTrackers + .reduce((allTrackersMap, torrentTrackers) => { + torrentTrackers.trackers.forEach(tracker => + allTrackersMap[tracker] = (allTrackersMap[tracker] || []).concat(torrentTrackers.infoHash)); + return allTrackersMap; + }, {})); + let successCounter = 0; + const callback = () => { + console.log(`Total successful tracker responses: ${successCounter}`) + resolve(perTorrentResults); + } + setTimeout(callback, SEEDS_CHECK_TIMEOUT); + + async.each(Object.keys(perTrackerInfoHashes), function (tracker, ready) { + BTClient.scrape({ infoHash: perTrackerInfoHashes[tracker], announce: tracker }, (error, response) => { + if (response) { + const results = Array.isArray(torrentsInput) ? Object.entries(response) : [[response.infoHash, response]]; + results + .filter(([infoHash]) => perTorrentResults[infoHash]) + .forEach(([infoHash, seeders]) => + perTorrentResults[infoHash][tracker] = [seeders.complete, seeders.incomplete]) + successCounter++; + } else if (error) { + perTrackerInfoHashes[tracker] + .filter(infoHash => perTorrentResults[infoHash]) + .forEach(infoHash => perTorrentResults[infoHash][tracker] = [0, 0, error.message]) + } + ready(); + }) + }, callback); + }).then(perTorrentResults => { + const torrents = Array.isArray(torrentsInput) ? torrentsInput : [torrentsInput]; + torrents.forEach(torrent => { + const results = perTorrentResults[torrent.infoHash]; + const newSeeders = Math.max(...Object.values(results).map(values => values[0]).concat(0)); + if (torrent.seeders !== newSeeders) { + console.log(`Updating seeders for [${torrent.infoHash}] ${torrent.title} - ${torrent.seeders} -> ${newSeeders}`) + torrent.seeders = newSeeders; + } + }) + return torrentsInput; + }); +} + +async function updateTorrentSize(torrent) { + return filesAndSizeFromTorrentStream(torrent, SEEDS_CHECK_TIMEOUT) + .then(result => { + torrent.size = result.size; + torrent.files = result.files; + return torrent; + }); +} + +async function sizeAndFiles(torrent) { + return filesAndSizeFromTorrentStream(torrent, 30000); +} + +async function torrentFiles(torrent, timeout) { + return getFilesFromObject(torrent) + .catch(() => filesFromTorrentFile(torrent)) + .catch(() => filesFromTorrentStream(torrent, timeout)) + .then(files => ({ + contents: files, + videos: filterVideos(files), + subtitles: filterSubtitles(files) + })); +} + +function getFilesFromObject(torrent) { + if (Array.isArray(torrent.files)) { + return Promise.resolve(torrent.files); + } + if (typeof torrent.files === 'function') { + return torrent.files(); + } + return Promise.reject("No files in the object"); +} + +async function filesFromTorrentFile(torrent) { + if (!torrent.torrentLink) { + return Promise.reject(new Error("no torrentLink")); + } + + return needle('get', torrent.torrentLink, { open_timeout: 10000 }) + .then((response) => { + if (!response.body || response.statusCode !== 200) { + throw new Error('torrent not found') + } + return response.body + }) + .then((body) => parseTorrent(body)) + .then((info) => info.files.map((file, fileId) => ({ + fileIndex: fileId, + name: file.name, + path: file.path.replace(/^[^\/]+\//, ''), + size: file.length + }))); +} + +async function filesFromTorrentStream(torrent, timeout) { + return filesAndSizeFromTorrentStream(torrent, timeout).then(result => result.files); +} + +function filesAndSizeFromTorrentStream(torrent, timeout = 30000) { + if (!torrent.infoHash && !torrent.magnetLink) { + return Promise.reject(new Error("no infoHash or magnetLink")); + } + const magnet = torrent.magnetLink || decode.encode({ infoHash: torrent.infoHash, announce: torrent.trackers }); + return new Promise((resolve, rejected) => { + const engine = new torrentStream(magnet, { connections: MAX_PEER_CONNECTIONS }); + + engine.ready(() => { + const files = engine.files + .map((file, fileId) => ({ + fileIndex: fileId, + name: file.name, + path: file.path.replace(/^[^\/]+\//, ''), + size: file.length + })); + const size = engine.torrent.length; + + engine.destroy(); + resolve({ files, size }); + }); + setTimeout(() => { + engine.destroy(); + rejected(new Error('No available connections for torrent!')); + }, timeout); + }); +} + +function filterVideos(files) { + if (files.length === 1 && !Number.isInteger(files[0].fileIndex)) { + return files; + } + const videos = files.filter(file => isVideo(file.path)); + const maxSize = Math.max(...videos.map(video => video.size)); + const minSampleRatio = videos.length <= 3 ? 3 : 10; + const minAnimeExtraRatio = 5; + const minRedundantRatio = videos.length <= 3 ? 30 : Number.MAX_VALUE; + const isSample = video => video.path.match(/sample|bonus|promo/i) && maxSize / parseInt(video.size) > minSampleRatio; + const isRedundant = video => maxSize / parseInt(video.size) > minRedundantRatio; + const isExtra = video => video.path.match(/extras?\//i); + const isAnimeExtra = video => video.path.match(/(?:\b|_)(?:NC)?(?:ED|OP|PV)(?:v?\d\d?)?(?:\b|_)/i) + && maxSize / parseInt(video.size) > minAnimeExtraRatio; + const isWatermark = video => video.path.match(/^[A-Z-]+(?:\.[A-Z]+)?\.\w{3,4}$/) + && maxSize / parseInt(video.size) > minAnimeExtraRatio + return videos + .filter(video => !isSample(video)) + .filter(video => !isExtra(video)) + .filter(video => !isAnimeExtra(video)) + .filter(video => !isRedundant(video)) + .filter(video => !isWatermark(video)); +} + +function filterSubtitles(files) { + return files.filter(file => isSubtitle(file.path)); +} + +async function getTorrentTrackers(torrent) { + const magnetTrackers = torrent.magnetLink && decode(torrent.magnetLink).tr || []; + const torrentTrackers = torrent.trackers && torrent.trackers.split(',') || []; + const defaultTrackers = await getDefaultTrackers(torrent); + return Array.from(new Set([].concat(magnetTrackers).concat(torrentTrackers).concat(defaultTrackers))); +} + +async function getDefaultTrackers(torrent, retry = 3) { + return cacheTrackers(() => needle('get', TRACKERS_URL, { open_timeout: SEEDS_CHECK_TIMEOUT }) + .then(response => response.body && response.body.trim()) + .then(body => body && body.split('\n\n') || [])) + .catch(() => retry > 0 ? delay(5000).then(() => getDefaultTrackers(torrent, retry - 1)) : []) + .then(trackers => trackers.concat(ADDITIONAL_TRACKERS)) + .then(trackers => torrent.type === Type.ANIME ? trackers.concat(ANIME_TRACKERS) : trackers); +} + +module.exports = { updateCurrentSeeders, updateTorrentSize, sizeAndFiles, torrentFiles } diff --git a/scraper/lib/torrentEntries.js b/scraper/lib/torrentEntries.js new file mode 100644 index 0000000..8e3f035 --- /dev/null +++ b/scraper/lib/torrentEntries.js @@ -0,0 +1,182 @@ +const { parse } = require('parse-torrent-title'); +const { Type } = require('./types'); +const Promises = require('./promises'); +const repository = require('./repository'); +const { getImdbId, getKitsuId } = require('./metadata'); +const { parseTorrentFiles } = require('./torrentFiles'); +const { assignSubtitles } = require('./torrentSubtitles'); +const { isPackTorrent } = require('./parseHelper') + +async function createTorrentEntry(torrent, overwrite = false) { + const titleInfo = parse(torrent.title); + + if ((titleInfo.seasons || torrent.title.match(/\[\d+-\d+/)) && torrent.type === Type.MOVIE) { + // sometimes series torrent might be put into movies category + torrent.type = Type.SERIES; + } + if (!torrent.imdbId && torrent.type !== Type.ANIME) { + torrent.imdbId = await getImdbId(titleInfo, torrent.type) + .catch(() => undefined); + } + if (torrent.imdbId && torrent.imdbId.length < 9) { + // pad zeros to imdbId if missing + torrent.imdbId = 'tt' + torrent.imdbId.replace('tt', '').padStart(7, '0'); + } + if (torrent.imdbId && torrent.imdbId.length > 9 && torrent.imdbId.startsWith('tt0')) { + // sanitize imdbId from redundant zeros + torrent.imdbId = torrent.imdbId.replace(/tt0+([0-9]{7,})$/, 'tt$1'); + } + if (!torrent.kitsuId && torrent.type === Type.ANIME) { + torrent.kitsuId = await getKitsuId(titleInfo) + .catch(() => undefined); + } + + if (!torrent.imdbId && !torrent.kitsuId && !isPackTorrent(torrent)) { + console.log(`imdbId or kitsuId not found: ${torrent.provider} ${torrent.title}`); + return; + } + + const { contents, videos, subtitles } = await parseTorrentFiles(torrent) + .then(torrentContents => overwrite ? overwriteExistingFiles(torrent, torrentContents) : torrentContents) + .then(torrentContents => assignSubtitles(torrentContents)) + .catch(error => { + console.log(`Failed getting files for ${torrent.title}`, error.message); + return {}; + }); + if (!videos || !videos.length) { + console.log(`no video files found for ${torrent.provider} [${torrent.infoHash}] ${torrent.title}`); + return; + } + + return repository.createTorrent({ ...torrent, contents, subtitles }) + .then(() => Promises.sequence(videos.map(video => () => repository.createFile(video)))) + .then(() => console.log(`Created ${torrent.provider} entry for [${torrent.infoHash}] ${torrent.title}`)); +} + +async function overwriteExistingFiles(torrent, torrentContents) { + const videos = torrentContents && torrentContents.videos; + if (videos && videos.length) { + const existingFiles = await repository.getFiles({ infoHash: videos[0].infoHash }) + .then((existing) => existing + .reduce((map, next) => { + const fileIndex = next.fileIndex !== undefined ? next.fileIndex : null; + map[fileIndex] = (map[fileIndex] || []).concat(next); + return map; + }, {})) + .catch(() => undefined); + if (existingFiles && Object.keys(existingFiles).length) { + const overwrittenVideos = videos + .map(file => { + const mapping = videos.length === 1 && Object.keys(existingFiles).length === 1 + ? Object.values(existingFiles)[0] + : existingFiles[file.fileIndex !== undefined ? file.fileIndex : null]; + if (mapping) { + const originalFile = mapping.shift(); + return { id: originalFile.id, ...file }; + } + return file; + }); + return { ...torrentContents, videos: overwrittenVideos }; + } + return torrentContents; + } + return Promise.reject(`No video files found for: ${torrent.title}`); +} + +async function createSkipTorrentEntry(torrent) { + return repository.createSkipTorrent(torrent); +} + +async function getStoredTorrentEntry(torrent) { + return repository.getSkipTorrent(torrent) + .catch(() => repository.getTorrent(torrent)) + .catch(() => undefined); +} + +async function checkAndUpdateTorrent(torrent) { + const storedTorrent = torrent.dataValues + ? torrent + : await repository.getTorrent(torrent).catch(() => undefined); + if (!storedTorrent) { + return false; + } + if (storedTorrent.provider === 'KickassTorrents' && torrent.provider) { + storedTorrent.provider = torrent.provider; + storedTorrent.torrentId = torrent.torrentId; + } + if (!storedTorrent.languages && torrent.languages && storedTorrent.provider !== 'RARBG') { + storedTorrent.languages = torrent.languages; + storedTorrent.save(); + console.log(`Updated [${torrent.infoHash}] ${torrent.title} language to ${torrent.languages}`); + } + return createTorrentContents({ ...storedTorrent.get(), torrentLink: torrent.torrentLink }) + .then(() => updateTorrentSeeders(torrent)); +} + +async function createTorrentContents(torrent) { + if (torrent.opened) { + return; + } + const storedVideos = await repository.getFiles(torrent).catch(() => []); + if (!storedVideos || !storedVideos.length) { + return; + } + const notOpenedVideo = storedVideos.length === 1 && !Number.isInteger(storedVideos[0].fileIndex); + const imdbId = Promises.mostCommonValue(storedVideos.map(stored => stored.imdbId)); + const kitsuId = Promises.mostCommonValue(storedVideos.map(stored => stored.kitsuId)); + + const { contents, videos, subtitles } = await parseTorrentFiles({ ...torrent, imdbId, kitsuId }) + .then(torrentContents => notOpenedVideo ? torrentContents : { ...torrentContents, videos: storedVideos }) + .then(torrentContents => assignSubtitles(torrentContents)) + .catch(error => { + console.log(`Failed getting contents for [${torrent.infoHash}] ${torrent.title}`, error.message); + return {}; + }); + + if (!contents || !contents.length) { + return; + } + if (notOpenedVideo && videos.length === 1) { + // if both have a single video and stored one was not opened, update stored one to true metadata and use that + storedVideos[0].fileIndex = videos[0].fileIndex; + storedVideos[0].title = videos[0].title; + storedVideos[0].size = videos[0].size; + storedVideos[0].subtitles = videos[0].subtitles; + videos[0] = storedVideos[0]; + } + // no videos available or more than one new videos were in the torrent + const shouldDeleteOld = notOpenedVideo && videos.every(video => !video.id); + + return repository.createTorrent({ ...torrent, contents, subtitles }) + .then(() => { + if (shouldDeleteOld) { + console.error(`Deleting old video for [${torrent.infoHash}] ${torrent.title}`) + return storedVideos[0].destroy(); + } + return Promise.resolve(); + }) + .then(() => Promises.sequence(videos.map(video => () => repository.createFile(video)))) + .then(() => console.log(`Created contents for ${torrent.provider} [${torrent.infoHash}] ${torrent.title}`)) + .catch(error => console.error(`Failed saving contents for [${torrent.infoHash}] ${torrent.title}`, error)); +} + +async function updateTorrentSeeders(torrent) { + if (!(torrent.infoHash || (torrent.provider && torrent.torrentId)) || !Number.isInteger(torrent.seeders)) { + return torrent; + } + + return repository.setTorrentSeeders(torrent, torrent.seeders) + .catch(error => { + console.warn('Failed updating seeders:', error); + return undefined; + }); +} + +module.exports = { + createTorrentEntry, + createTorrentContents, + createSkipTorrentEntry, + getStoredTorrentEntry, + updateTorrentSeeders, + checkAndUpdateTorrent +}; diff --git a/scraper/lib/torrentFiles.js b/scraper/lib/torrentFiles.js new file mode 100644 index 0000000..9ee68e0 --- /dev/null +++ b/scraper/lib/torrentFiles.js @@ -0,0 +1,506 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const distance = require('jaro-winkler'); +const { parse } = require('parse-torrent-title'); +const Promises = require('../lib/promises'); +const { torrentFiles } = require('../lib/torrent'); +const { getMetadata, getImdbId, getKitsuId } = require('../lib/metadata'); +const { parseSeriesVideos, isPackTorrent } = require('../lib/parseHelper'); +const { Type } = require('./types'); +const { isDisk } = require('./extension'); + +const MIN_SIZE = 5 * 1024 * 1024; // 5 MB +const imdb_limiter = new Bottleneck({ maxConcurrent: 1, minTime: 1000 }); + +async function parseTorrentFiles(torrent) { + const parsedTorrentName = parse(torrent.title); + const metadata = await getMetadata(torrent.kitsuId || torrent.imdbId, torrent.type || Type.MOVIE) + .then(meta => Object.assign({}, meta)) + .catch(() => undefined); + + // if (metadata && metadata.type !== torrent.type && torrent.type !== Type.ANIME) { + // throw new Error(`Mismatching entry type for ${torrent.name}: ${torrent.type}!=${metadata.type}`); + // } + if (torrent.type !== Type.ANIME && metadata && metadata.type && metadata.type !== torrent.type) { + // it's actually a movie/series + torrent.type = metadata.type; + } + + if (torrent.type === Type.MOVIE && (!parsedTorrentName.seasons || + parsedTorrentName.season === 5 && [1, 5].includes(parsedTorrentName.episode))) { + return parseMovieFiles(torrent, parsedTorrentName, metadata); + } + + return parseSeriesFiles(torrent, parsedTorrentName, metadata) +} + +async function parseMovieFiles(torrent, parsedName, metadata) { + const { contents, videos, subtitles } = await getMoviesTorrentContent(torrent); + const filteredVideos = videos + .filter(video => video.size > MIN_SIZE) + .filter(video => !isFeaturette(video)); + if (isSingleMovie(filteredVideos)) { + const parsedVideos = filteredVideos.map(video => ({ + infoHash: torrent.infoHash, + fileIndex: video.fileIndex, + title: video.path || torrent.title, + size: video.size || torrent.size, + imdbId: torrent.imdbId || metadata && metadata.imdbId, + kitsuId: torrent.kitsuId || metadata && metadata.kitsuId + })); + return { contents, videos: parsedVideos, subtitles }; + } + + const parsedVideos = await Promises.sequence(filteredVideos.map(video => () => isFeaturette(video) + ? Promise.resolve(video) + : findMovieImdbId(video.name).then(imdbId => ({ ...video, imdbId })))) + .then(videos => videos.map(video => ({ + infoHash: torrent.infoHash, + fileIndex: video.fileIndex, + title: video.path || video.name, + size: video.size, + imdbId: video.imdbId, + }))); + return { contents, videos: parsedVideos, subtitles }; +} + +async function parseSeriesFiles(torrent, parsedName, metadata) { + const { contents, videos, subtitles } = await getSeriesTorrentContent(torrent); + const parsedVideos = await Promise.resolve(videos) + .then(videos => videos.filter(video => videos.length === 1 || video.size > MIN_SIZE)) + .then(videos => parseSeriesVideos(torrent, videos)) + .then(videos => decomposeEpisodes(torrent, videos, metadata)) + .then(videos => assignKitsuOrImdbEpisodes(torrent, videos, metadata)) + .then(videos => Promise.all(videos.map(video => video.isMovie + ? mapSeriesMovie(video, torrent) + : mapSeriesEpisode(video, torrent, videos)))) + .then(videos => videos + .reduce((a, b) => a.concat(b), []) + .map(video => isFeaturette(video) ? clearInfoFields(video) : video)) + return { contents, videos: parsedVideos, subtitles }; +} + +async function getMoviesTorrentContent(torrent) { + const files = await torrentFiles(torrent) + .catch(error => { + if (!isPackTorrent(torrent)) { + return { videos: [{ name: torrent.title, path: torrent.title, size: torrent.size }] } + } + return Promise.reject(error); + }); + if (files.contents && files.contents.length && !files.videos.length && isDiskTorrent(files.contents)) { + files.videos = [{ name: torrent.title, path: torrent.title, size: torrent.size }]; + } + return files; +} + +async function getSeriesTorrentContent(torrent) { + return torrentFiles(torrent) + .catch(error => { + if (!isPackTorrent(torrent)) { + return { videos: [{ name: torrent.title, path: torrent.title, size: torrent.size }] } + } + return Promise.reject(error); + }); +} + +async function mapSeriesEpisode(file, torrent, files) { + if (!file.episodes && !file.kitsuEpisodes) { + if (files.some(otherFile => otherFile.episodes || otherFile.kitsuEpisodes) || parse(torrent.title).seasons) { + return Promise.resolve({ + infoHash: torrent.infoHash, + fileIndex: file.fileIndex, + title: file.path || file.name, + size: file.size, + imdbId: torrent.imdbId || file.imdbId, + }); + } + return Promise.resolve([]); + } + const episodeIndexes = [...(file.episodes || file.kitsuEpisodes).keys()]; + return Promise.resolve(episodeIndexes.map((index) => ({ + infoHash: torrent.infoHash, + fileIndex: file.fileIndex, + title: file.path || file.name, + size: file.size, + imdbId: file.imdbId || torrent.imdbId, + imdbSeason: file.season, + imdbEpisode: file.episodes && file.episodes[index], + kitsuId: file.kitsuId || torrent.kitsuId, + kitsuEpisode: file.kitsuEpisodes && file.kitsuEpisodes[index] + }))) +} + +async function mapSeriesMovie(file, torrent) { + const kitsuId = torrent.type === Type.ANIME ? await findMovieKitsuId(file) : undefined; + const imdbId = !kitsuId ? await findMovieImdbId(file) : undefined; + const metadata = await getMetadata(kitsuId || imdbId, Type.MOVIE).catch(() => ({})); + const hasEpisode = metadata.videos && metadata.videos.length && (file.episode || metadata.videos.length === 1); + const episodeVideo = hasEpisode && metadata.videos[(file.episode || 1) - 1]; + return [{ + infoHash: torrent.infoHash, + fileIndex: file.fileIndex, + title: file.path || file.name, + size: file.size, + imdbId: metadata.imdbId || imdbId, + kitsuId: metadata.kitsuId || kitsuId, + imdbSeason: episodeVideo && metadata.imdbId ? episodeVideo.imdbSeason : undefined, + imdbEpisode: episodeVideo && metadata.imdbId ? episodeVideo.imdbEpisode || episodeVideo.episode : undefined, + kitsuEpisode: episodeVideo && metadata.kitsuId ? episodeVideo.kitsuEpisode || episodeVideo.episode : undefined + }]; +} + +async function decomposeEpisodes(torrent, files, metadata = { episodeCount: [] }) { + if (files.every(file => !file.episodes && !file.date)) { + return files; + } + + preprocessEpisodes(files); + + if (torrent.type === Type.ANIME && torrent.kitsuId) { + if (needsCinemetaMetadataForAnime(files, metadata)) { + // In some cases anime could be resolved to wrong kitsuId + // because of imdb season naming/absolute per series naming/multiple seasons + // So in these cases we need to fetch cinemeta based metadata and decompose episodes using that + await updateToCinemetaMetadata(metadata); + if (files.some(file => Number.isInteger(file.season))) { + // sometimes multi season anime torrents don't include season 1 naming + files + .filter(file => !Number.isInteger(file.season) && file.episodes) + .forEach(file => file.season = 1); + } + } else { + // otherwise for anime type episodes are always absolute and for a single season + files + .filter(file => file.episodes && file.season !== 0) + .forEach(file => file.season = 1); + return files; + } + } + + const sortedEpisodes = files + .map(file => !file.isMovie && file.episodes || []) + .reduce((a, b) => a.concat(b), []) + .sort((a, b) => a - b); + + if (isConcatSeasonAndEpisodeFiles(files, sortedEpisodes, metadata)) { + decomposeConcatSeasonAndEpisodeFiles(torrent, files, metadata); + } else if (isDateEpisodeFiles(files, metadata)) { + decomposeDateEpisodeFiles(torrent, files, metadata); + } else if (isAbsoluteEpisodeFiles(files, metadata)) { + decomposeAbsoluteEpisodeFiles(torrent, files, metadata); + } + // decomposeEpisodeTitleFiles(torrent, files, metadata); + + return files; +} + +function preprocessEpisodes(files) { + // reverse special episode naming when they named with 0 episode, ie. S02E00 + files + .filter(file => Number.isInteger(file.season) && file.episode === 0) + .forEach(file => { + file.episode = file.season + file.episodes = [file.season] + file.season = 0; + }) +} + +function isConcatSeasonAndEpisodeFiles(files, sortedEpisodes, metadata) { + if (metadata.kitsuId !== undefined) { + // anime does not use this naming scheme in 99% of cases; + return false; + } + // decompose concat season and episode files (ex. 101=S01E01) in case: + // 1. file has a season, but individual files are concatenated with that season (ex. path Season 5/511 - Prize + // Fighters.avi) + // 2. file does not have a season and the episode does not go out of range for the concat season + // episode count + const thresholdAbove = Math.max(Math.ceil(files.length * 0.05), 5); + const thresholdSorted = Math.max(Math.ceil(files.length * 0.8), 8); + const threshold = Math.max(Math.ceil(files.length * 0.8), 5); + const sortedConcatEpisodes = sortedEpisodes + .filter(ep => ep > 100) + .filter(ep => metadata.episodeCount[div100(ep) - 1] < ep) + .filter(ep => metadata.episodeCount[div100(ep) - 1] >= mod100(ep)); + const concatFileEpisodes = files + .filter(file => !file.isMovie && file.episodes) + .filter(file => !file.season || file.episodes.every(ep => div100(ep) === file.season)); + const concatAboveTotalEpisodeCount = files + .filter(file => !file.isMovie && file.episodes && file.episodes.every(ep => ep > 100)) + .filter(file => file.episodes.every(ep => ep > metadata.totalCount)); + return sortedConcatEpisodes.length >= thresholdSorted && concatFileEpisodes.length >= threshold + || concatAboveTotalEpisodeCount.length >= thresholdAbove; +} + +function isDateEpisodeFiles(files, metadata) { + return files.every(file => (!file.season || !metadata.episodeCount[file.season - 1]) && file.date); +} + +function isAbsoluteEpisodeFiles(files, metadata) { + const threshold = Math.ceil(files.length / 5); + const nonMovieEpisodes = files + .filter(file => !file.isMovie && file.episodes); + const absoluteEpisodes = files + .filter(file => file.season && file.episodes) + .filter(file => file.episodes.every(ep => metadata.episodeCount[file.season - 1] < ep)) + return nonMovieEpisodes.every(file => !file.season || file.season > metadata.episodeCount.length) + || absoluteEpisodes.length >= threshold + // && !isNewEpisodesNotInMetadata(files, metadata); +} + +function isNewEpisodesNotInMetadata(files, metadata) { + // new episode might not yet been indexed by cinemeta. + // detect this if episode number is larger than the last episode or season is larger than the last one + return files.length === 1 + && /continuing|current/i.test(metadata.status) + && files.filter(file => !file.isMovie && file.episodes) + .every(file => file.season >= metadata.episodeCount.length + && file.episodes.every(ep => ep > metadata.episodeCount[file.season - 1])) +} + +function decomposeConcatSeasonAndEpisodeFiles(torrent, files, metadata) { + files + .filter(file => file.episodes && file.season !== 0 && file.episodes.every(ep => ep > 100)) + .filter(file => metadata.episodeCount[(file.season || div100(file.episodes[0])) - 1] < 100) + .filter(file => file.season && file.episodes.every(ep => div100(ep) === file.season) || !file.season) + .forEach(file => { + file.season = div100(file.episodes[0]); + file.episodes = file.episodes.map(ep => mod100(ep)) + }); + +} + +function decomposeAbsoluteEpisodeFiles(torrent, files, metadata) { + if (metadata.episodeCount.length === 0) { + files + .filter(file => !Number.isInteger(file.season) && file.episodes && !file.isMovie) + .forEach(file => { + file.season = 1; + }); + return; + } + files + .filter(file => file.episodes && !file.isMovie && file.season !== 0) + .filter(file => !file.season || (metadata.episodeCount[file.season - 1] || 0) < file.episodes[0]) + .forEach(file => { + const seasonIdx = ([...metadata.episodeCount.keys()] + .find((i) => metadata.episodeCount.slice(0, i + 1).reduce((a, b) => a + b) >= file.episodes[0]) + + 1 || metadata.episodeCount.length) - 1; + + file.season = seasonIdx + 1; + file.episodes = file.episodes + .map(ep => ep - metadata.episodeCount.slice(0, seasonIdx).reduce((a, b) => a + b, 0)) + }); +} + +function decomposeDateEpisodeFiles(torrent, files, metadata) { + if (!metadata || !metadata.videos || !metadata.videos.length) { + return; + } + + const timeZoneOffset = getTimeZoneOffset(metadata.country); + const offsetVideos = metadata.videos + .reduce((map, video) => { + const releaseDate = moment(video.released).utcOffset(timeZoneOffset).format('YYYY-MM-DD'); + map[releaseDate] = video; + return map; + }, {}); + + files + .filter(file => file.date) + .forEach(file => { + const video = offsetVideos[file.date]; + if (video) { + file.season = video.season; + file.episodes = [video.episode]; + } + }); +} + +function decomposeEpisodeTitleFiles(torrent, files, metadata) { + files + // .filter(file => !file.season) + .map(file => { + const episodeTitle = file.name.replace('_', ' ') + .replace(/^.*(?:E\d+[abc]?|- )\s?(.+)\.\w{1,4}$/, '$1') + .trim(); + const foundEpisode = metadata.videos + .map(video => ({ ...video, distance: distance(episodeTitle, video.name) })) + .sort((a, b) => b.distance - a.distance)[0]; + if (foundEpisode) { + file.isMovie = false; + file.season = foundEpisode.season; + file.episodes = [foundEpisode.episode]; + } + }) +} + +function getTimeZoneOffset(country) { + switch (country) { + case 'United States': + case 'USA': + return '-08:00'; + default: + return '00:00'; + } +} + +function assignKitsuOrImdbEpisodes(torrent, files, metadata) { + if (!metadata || !metadata.videos || !metadata.videos.length) { + if (torrent.type === Type.ANIME) { + // assign episodes as kitsu episodes for anime when no metadata available for imdb mapping + files + .filter(file => file.season && file.episodes) + .forEach(file => { + file.kitsuEpisodes = file.episodes; + file.season = undefined; + file.episodes = undefined; + }) + if (metadata.type === Type.MOVIE && files.every(file => !file.imdbId)) { + // sometimes a movie has episode naming, thus not recognized as a movie and imdbId not assigned + files.forEach(file => file.imdbId = metadata.imdbId); + } + } + return files; + } + + const seriesMapping = metadata.videos + .reduce((map, video) => { + const episodeMap = map[video.season] || {}; + episodeMap[video.episode] = video; + map[video.season] = episodeMap; + return map; + }, {}); + + if (metadata.videos.some(video => Number.isInteger(video.imdbSeason)) || !metadata.imdbId) { + // kitsu episode info is the base + files + .filter(file => Number.isInteger(file.season) && file.episodes) + .map(file => { + const seasonMapping = seriesMapping[file.season]; + const episodeMapping = seasonMapping && seasonMapping[file.episodes[0]]; + file.kitsuEpisodes = file.episodes; + if (episodeMapping && Number.isInteger(episodeMapping.imdbSeason)) { + file.imdbId = metadata.imdbId; + file.season = episodeMapping.imdbSeason; + file.episodes = file.episodes.map(ep => seasonMapping[ep] && seasonMapping[ep].imdbEpisode); + } else { + // no imdb mapping available for episode + file.season = undefined; + file.episodes = undefined; + } + }); + } else if (metadata.videos.some(video => video.kitsuEpisode)) { + // imdb episode info is base + files + .filter(file => Number.isInteger(file.season) && file.episodes) + .forEach(file => { + if (seriesMapping[file.season]) { + const seasonMapping = seriesMapping[file.season]; + file.imdbId = metadata.imdbId; + file.kitsuId = seasonMapping[file.episodes[0]] && seasonMapping[file.episodes[0]].kitsuId; + file.kitsuEpisodes = file.episodes.map(ep => seasonMapping[ep] && seasonMapping[ep].kitsuEpisode); + } else if (seriesMapping[file.season - 1]) { + // sometimes a second season might be a continuation of the previous season + const seasonMapping = seriesMapping[file.season - 1]; + const episodes = Object.values(seasonMapping); + const firstKitsuId = episodes.length && episodes[0].kitsuId; + const differentTitlesCount = new Set(episodes.map(ep => ep.kitsuId)).size + const skippedCount = episodes.filter(ep => ep.kitsuId === firstKitsuId).length; + const seasonEpisodes = files + .filter(otherFile => otherFile.season === file.season) + .reduce((a, b) => a.concat(b.episodes), []); + const isAbsoluteOrder = seasonEpisodes.every(ep => ep > skippedCount && ep <= episodes.length) + const isNormalOrder = seasonEpisodes.every(ep => ep + skippedCount <= episodes.length) + if (differentTitlesCount >= 1 && (isAbsoluteOrder || isNormalOrder)) { + file.imdbId = metadata.imdbId; + file.season = file.season - 1; + file.episodes = file.episodes.map(ep => isAbsoluteOrder ? ep : ep + skippedCount); + file.kitsuId = seasonMapping[file.episodes[0]].kitsuId; + file.kitsuEpisodes = file.episodes.map(ep => seasonMapping[ep] && seasonMapping[ep].kitsuEpisode); + } + } else if (Object.values(seriesMapping).length === 1 && seriesMapping[1]) { + // sometimes series might be named with sequel season but it's not a season on imdb and a new title + const seasonMapping = seriesMapping[1]; + file.imdbId = metadata.imdbId; + file.season = 1; + file.kitsuId = seasonMapping[file.episodes[0]].kitsuId; + file.kitsuEpisodes = file.episodes.map(ep => seasonMapping[ep] && seasonMapping[ep].kitsuEpisode); + } + }); + } + return files; +} + +function needsCinemetaMetadataForAnime(files, metadata) { + if (!metadata || !metadata.imdbId || !metadata.videos || !metadata.videos.length) { + return false; + } + + const minSeason = Math.min(...metadata.videos.map(video => video.imdbSeason)) || Number.MAX_VALUE; + const maxSeason = Math.max(...metadata.videos.map(video => video.imdbSeason)) || Number.MAX_VALUE; + const differentSeasons = new Set(metadata.videos + .map(video => video.imdbSeason) + .filter(season => Number.isInteger(season))).size; + const total = metadata.totalCount || Number.MAX_VALUE; + return differentSeasons > 1 || files + .filter(file => !file.isMovie && file.episodes) + .some(file => file.season < minSeason || file.season > maxSeason || file.episodes.every(ep => ep > total)); +} + +async function updateToCinemetaMetadata(metadata) { + return getMetadata(metadata.imdbId, metadata.type) + .then(newMetadata => !newMetadata.videos || !newMetadata.videos.length ? metadata : newMetadata) + .then(newMetadata => { + metadata.videos = newMetadata.videos; + metadata.episodeCount = newMetadata.episodeCount; + metadata.totalCount = newMetadata.totalCount; + return metadata; + }) + .catch(error => console.warn(`Failed ${metadata.imdbId} metadata cinemeta update due: ${error.message}`)); +} + +function findMovieImdbId(title) { + const parsedTitle = typeof title === 'string' ? parse(title) : title; + return imdb_limiter.schedule(() => getImdbId(parsedTitle, Type.MOVIE).catch(() => undefined)); +} + +function findMovieKitsuId(title) { + const parsedTitle = typeof title === 'string' ? parse(title) : title; + return getKitsuId(parsedTitle, Type.MOVIE).catch(() => undefined); +} + +function isDiskTorrent(contents) { + return contents.some(content => isDisk(content.path)); +} + +function isSingleMovie(videos) { + return videos.length === 1 || + (videos.length === 2 && + videos.find(v => /\b(?:part|disc|cd)[ ._-]?0?1\b|^0?1\.\w{2,4}$/i.test(v.path)) && + videos.find(v => /\b(?:part|disc|cd)[ ._-]?0?2\b|^0?2\.\w{2,4}$/i.test(v.path))); +} + +function isFeaturette(video) { + return /featurettes?\/|extras-grym/i.test(video.path); +} + +function clearInfoFields(video) { + video.imdbId = undefined; + video.imdbSeason = undefined; + video.imdbEpisode = undefined; + video.kitsuId = undefined; + video.kitsuEpisode = undefined; + return video; +} + +function div100(episode) { + return (episode / 100 >> 0); // floor to nearest int +} + +function mod100(episode) { + return episode % 100; +} + +module.exports = { parseTorrentFiles }; \ No newline at end of file diff --git a/scraper/lib/torrentSubtitles.js b/scraper/lib/torrentSubtitles.js new file mode 100644 index 0000000..879c182 --- /dev/null +++ b/scraper/lib/torrentSubtitles.js @@ -0,0 +1,91 @@ +const { parse } = require('parse-torrent-title'); + +function assignSubtitles({ contents, videos, subtitles }) { + if (videos && videos.length && subtitles && subtitles.length) { + if (videos.length === 1) { + videos[0].subtitles = subtitles; + return { contents, videos, subtitles: [] }; + } + + const parsedVideos = videos + .map(video => _parseVideo(video)); + const assignedSubs = subtitles + .map(subtitle => ({ subtitle, videos: _mostProbableSubtitleVideos(subtitle, parsedVideos) })); + const unassignedSubs = assignedSubs + .filter(assignedSub => !assignedSub.videos) + .map(assignedSub => assignedSub.subtitle); + + assignedSubs + .filter(assignedSub => assignedSub.videos) + .forEach(assignedSub => assignedSub.videos + .forEach(video => video.subtitles = (video.subtitles || []).concat(assignedSub.subtitle))); + return { contents, videos, subtitles: unassignedSubs }; + } + return { contents, videos, subtitles }; +} + +function _parseVideo(video) { + const fileName = video.title.split('/').pop().replace(/\.(\w{2,4})$/, ''); + const folderName = video.title.replace(/\/?[^/]+$/, ''); + return { + videoFile: video, + fileName: fileName, + folderName: folderName, + ...parseFilename(video.title) + }; +} + +function _mostProbableSubtitleVideos(subtitle, parsedVideos) { + const subTitle = (subtitle.title || subtitle.path).split('/').pop().replace(/\.(\w{2,4})$/, ''); + const parsedSub = parsePath(subtitle.title || subtitle.path); + const byFileName = parsedVideos.filter(video => subTitle.includes(video.fileName)); + if (byFileName.length === 1) { + return byFileName.map(v => v.videoFile); + } + const byTitleSeasonEpisode = parsedVideos.filter(video => video.title === parsedSub.title + && arrayEquals(video.seasons, parsedSub.seasons) + && arrayEquals(video.episodes, parsedSub.episodes)); + if (singleVideoFile(byTitleSeasonEpisode)) { + return byTitleSeasonEpisode.map(v => v.videoFile); + } + const bySeasonEpisode = parsedVideos.filter(video => arrayEquals(video.seasons, parsedSub.seasons) + && arrayEquals(video.episodes, parsedSub.episodes)); + if (singleVideoFile(bySeasonEpisode)) { + return bySeasonEpisode.map(v => v.videoFile); + } + const byTitle = parsedVideos.filter(video => video.title && video.title === parsedSub.title); + if (singleVideoFile(byTitle)) { + return byTitle.map(v => v.videoFile); + } + const byEpisode = parsedVideos.filter(video => arrayEquals(video.episodes, parsedSub.episodes)); + if (singleVideoFile(byEpisode)) { + return byEpisode.map(v => v.videoFile); + } + return undefined; +} + +function singleVideoFile(videos) { + return new Set(videos.map(v => v.videoFile.fileIndex)).size === 1; +} + +function parsePath(path) { + const pathParts = path.split('/').map(part => parseFilename(part)); + const parsedWithEpisode = pathParts.find(parsed => parsed.season && parsed.episodes); + return parsedWithEpisode || pathParts[pathParts.length - 1]; +} + +function parseFilename(filename) { + const parsedInfo = parse(filename) + const titleEpisode = parsedInfo.title.match(/(\d+)$/); + if (!parsedInfo.episodes && titleEpisode) { + parsedInfo.episodes = [parseInt(titleEpisode[1], 10)]; + } + return parsedInfo; +} + +function arrayEquals(array1, array2) { + if (!array1 || !array2) return array1 === array2; + return array1.length === array2.length && array1.every((value, index) => value === array2[index]) +} + +module.exports = { assignSubtitles } \ No newline at end of file diff --git a/scraper/lib/types.js b/scraper/lib/types.js new file mode 100644 index 0000000..2f37a8e --- /dev/null +++ b/scraper/lib/types.js @@ -0,0 +1,5 @@ +exports.Type = { + MOVIE: 'movie', + SERIES: 'series', + ANIME: 'anime' +}; \ No newline at end of file diff --git a/scraper/manual/manual.js b/scraper/manual/manual.js new file mode 100644 index 0000000..b7380d9 --- /dev/null +++ b/scraper/manual/manual.js @@ -0,0 +1,145 @@ +const Bottleneck = require('bottleneck'); +const { parse } = require('parse-torrent-title'); +const Promises = require('../lib/promises'); +const { mostCommonValue } = require('../lib/promises'); +const repository = require('../lib/repository'); +const { getImdbId, getKitsuId } = require('../lib/metadata'); +const { parseTorrentFiles } = require('../lib/torrentFiles'); +const { createTorrentContents } = require('../lib/torrentEntries'); +const { assignSubtitles } = require('../lib/torrentSubtitles'); +const { Type } = require('../lib/types'); + +const limiter = new Bottleneck({ maxConcurrent: 40 }); + +async function updateMovieCollections() { + const collectionFiles = await repository.getFilesBasedOnTitle('logy') + .then(files => files.filter(file => file.fileIndex === null)) + .then(files => files.filter(file => parse(file.title).complete)); + + collectionFiles.map(original => repository.getTorrent({ infoHash: original.infoHash }) + .then(torrent => parseTorrentFiles({ ...torrent.get(), imdbId: original.imdbId })) + .then(files => Promise.all(files.map(file => { + console.log(file); + return repository.createFile(file) + }))) + .then(createdFiled => { + if (createdFiled && createdFiled.length) { + console.log(`Updated movie collection ${original.title}`); + repository.deleteFile(original) + } else { + console.log(`Failed updating movie collection ${original.title}`); + } + })); +} + +async function reapplySeriesSeasonsSavedAsMovies() { + return repository.getTorrentsBasedOnTitle('(?:[^a-zA-Z0-9]|^)[Ss][012]?[0-9](?:[^0-9]|$)', Type.MOVIE) + .then(torrents => Promise.all(torrents + .filter(torrent => parse(torrent.title).seasons) + .map(torrent => limiter.schedule(() => reapplyEpisodeDecomposing(torrent.infoHash, false) + .then(() => { + torrent.type = Type.SERIES; + return torrent.save(); + }))))) + .then(() => console.log('Finished updating multiple torrents')); +} + +async function reapplyDecomposingToTorrentsOnRegex(regex) { + return repository.getTorrentsBasedOnTitle(regex, Type.ANIME) + .then(torrents => Promise.all(torrents + .map(torrent => limiter.schedule(() => reapplyEpisodeDecomposing(torrent.infoHash, true))))) + .then(() => console.log('Finished updating multiple torrents')); +} + +async function reapplyEpisodeDecomposing(infoHash, includeSourceFiles = true) { + const torrent = await repository.getTorrent({ infoHash }); + const storedFiles = await repository.getFiles({ infoHash }); + const fileIndexMap = storedFiles + .reduce((map, next) => { + const fileIndex = next.fileIndex !== undefined ? next.fileIndex : null; + map[fileIndex] = (map[fileIndex] || []).concat(next); + return map; + }, {}); + const files = includeSourceFiles && Object.values(fileIndexMap) + .map(sameIndexFiles => sameIndexFiles[0]) + .map(file => ({ + fileIndex: file.fileIndex, + name: file.title.replace(/.*\//, ''), + path: file.title, + size: file.size + })); + const kitsuId = undefined; + const imdbId = kitsuId + ? undefined + : mostCommonValue(storedFiles.map(file => file.imdbId)) + || await getImdbId(parse(torrent.title)).catch(() => undefined); + + if (!imdbId && !kitsuId) { + console.log(`imdbId or kitsuId not found: ${torrent.provider} ${torrent.title}`); + return Promise.resolve(); + } + + return parseTorrentFiles({ ...torrent.get(), imdbId, kitsuId, files }) + .then(torrentContents => torrentContents.videos) + .then(newFiles => newFiles.map(file => { + const fileIndex = file.fileIndex !== undefined ? file.fileIndex : null; + const mapping = fileIndexMap[fileIndex]; + if (mapping) { + const originalFile = mapping.shift(); + if (originalFile) { + if (!originalFile.imdbId) { + originalFile.imdbId = file.imdbId + } + originalFile.imdbSeason = file.imdbSeason; + originalFile.imdbEpisode = file.imdbEpisode; + originalFile.kitsuId = file.kitsuId; + originalFile.kitsuEpisode = file.kitsuEpisode; + return originalFile; + } + } + return file; + })) + .then(updatedFiles => Promise.all(updatedFiles + .map(file => file.id ? file.save() : repository.createFile(file)))) + .then(() => console.log(`Updated files for [${torrent.infoHash}] ${torrent.title}`)); +} + +async function assignSubs() { + const unassignedSubs = await repository.getUnassignedSubtitles() + .then(subs => subs.reduce((map, sub) => { + map[sub.infoHash] = (map[sub.infoHash] || []).concat(sub); + return map; + }, {})); + const infoHashes = Object.keys(unassignedSubs); + + return Promise.all(infoHashes.map(async infoHash => { + const videos = await repository.getFiles({ infoHash }); + const subtitles = unassignedSubs[infoHash]; + const assignedContents = assignSubtitles({ videos, subtitles }); + return Promise.all(assignedContents.videos + .filter(video => video.subtitles) + .map(video => repository.upsertSubtitles(video, video.subtitles))); + })); +} + +async function openTorrentContents() { + const limiter = new Bottleneck({ maxConcurrent: 15 }); + const unopenedTorrents = await repository.getNoContentsTorrents(); + + return Promise.all(unopenedTorrents.map(torrent => limiter.schedule(() => createTorrentContents(torrent)))) + .then(() => unopenedTorrents.length === 500 ? openTorrentContents() : Promise.resolve) +} + +// const infoHashes = [ +// ] +// Promises.sequence(infoHashes.map(infoHash => () => reapplyEpisodeDecomposing(infoHash))) +// .then(() => console.log('Finished')); + +//findAllFiles().then(() => console.log('Finished')); +//updateMovieCollections().then(() => console.log('Finished')); +reapplyEpisodeDecomposing('96cc18f564f058384c18b4966a183d81808ce3fb', true).then(() => console.log('Finished')); +//reapplySeriesSeasonsSavedAsMovies().then(() => console.log('Finished')); +//reapplyDecomposingToTorrentsOnRegex('.*Title.*').then(() => console.log('Finished')); +//reapplyManualHashes().then(() => console.log('Finished')); +// assignSubs().then(() => console.log('Finished')); +// openTorrentContents().then(() => console.log('Finished')); \ No newline at end of file diff --git a/scraper/package-lock.json b/scraper/package-lock.json new file mode 100644 index 0000000..5bb0dc0 --- /dev/null +++ b/scraper/package-lock.json @@ -0,0 +1,4269 @@ +{ + "name": "stremio-torrentio", + "version": "1.0.14", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "stremio-torrentio", + "version": "1.0.14", + "license": "MIT", + "dependencies": { + "@putdotio/api-client": "^8.42.0", + "all-debrid-api": "^1.1.0", + "axios": "^1.6.1", + "bottleneck": "^2.19.5", + "cache-manager": "^3.4.4", + "cache-manager-mongodb": "^0.3.0", + "cors": "^2.8.5", + "debrid-link-api": "^1.0.1", + "express-rate-limit": "^6.7.0", + "google-it": "^1.6.4", + "google-sr": "^3.2.1", + "he": "^1.2.0", + "jaro-winkler": "^0.2.8", + "magnet-uri": "^6.2.0", + "name-to-imdb": "^3.0.4", + "named-queue": "^2.2.1", + "needle": "^3.3.1", + "node-schedule": "^2.1.1", + "nodejs-bing": "^0.1.0", + "nyaapi": "^2.4.4", + "offcloud-api": "^1.0.2", + "parse-torrent-title": "git://github.com/TheBeastLT/parse-torrent-title.git#022408972c2a040f846331a912a6a8487746a654", + "pg": "^8.11.3", + "pg-hstore": "^2.3.4", + "premiumize-api": "^1.0.3", + "prom-client": "^12.0.0", + "real-debrid-api": "git://github.com/TheBeastLT/node-real-debrid.git#d1f7eaa8593b947edbfbc8a92a176448b48ef445", + "request-ip": "^3.3.0", + "router": "^1.3.8", + "sequelize": "^6.31.1", + "stremio-addon-sdk": "^1.6.10", + "sugar-date": "^2.0.6", + "swagger-stats": "^0.99.7", + "torrent-stream": "^1.2.1", + "ua-parser-js": "^1.0.36", + "user-agents": "^1.0.1444" + } + }, + "node_modules/@putdotio/api-client": { + "version": "8.42.0", + "resolved": "https://registry.npmjs.org/@putdotio/api-client/-/api-client-8.42.0.tgz", + "integrity": "sha512-LaFaPMOO8WbvwzUlvuzBcBH9aSpqZIkA6MuoKJPNZ293kFSMZPyXkE/VddVXPNq0f5sp7HzdueCMIPOxcom9hg==", + "dependencies": { + "axios": "^0.21.1", + "event-emitter": "^0.3.5", + "js-base64": "2.6.3", + "qs": "^6.10.3", + "urijs": "^1.19.7" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@putdotio/api-client/node_modules/axios": { + "version": "0.21.4", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.21.4.tgz", + "integrity": "sha512-ut5vewkiu8jjGBdqpM44XxjuCjq9LAKeHVmoVfHVzy8eHgxxq8SbAVQNovDA8mVi05kP0Ea/n/UzcSHcTJQfNg==", + "dependencies": { + "follow-redirects": "^1.14.0" + } + }, + "node_modules/@types/debug": { + "version": "4.1.7", + "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.7.tgz", + "integrity": "sha512-9AonUzyTjXXhEOa0DnqpzZi6VHlqKMswga9EXjpXnnqxwLtdvPPtlO8evrI5D9S6asFRCQ6v+wpiUKbw+vKqyg==", + "dependencies": { + "@types/ms": "*" + } + }, + "node_modules/@types/ms": { + "version": "0.7.31", + "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.31.tgz", + "integrity": "sha512-iiUgKzV9AuaEkZqkOLDIvlQiL6ltuZd9tGcW3gwpnX8JbuiuhFlEGmmFXEXkN50Cvq7Os88IY2v0dkDqXYWVgA==" + }, + "node_modules/@types/node": { + "version": "18.0.0", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.0.0.tgz", + "integrity": "sha512-cHlGmko4gWLVI27cGJntjs/Sj8th9aYwplmZFwmmgYQQvL5NUsgVJG7OddLvNfLqYS31KFN0s3qlaD9qCaxACA==" + }, + "node_modules/@types/validator": { + "version": "13.7.3", + "resolved": "https://registry.npmjs.org/@types/validator/-/validator-13.7.3.tgz", + "integrity": "sha512-DNviAE5OUcZ5s+XEQHRhERLg8fOp8gSgvyJ4aaFASx5wwaObm+PBwTIMXiOFm1QrSee5oYwEAYb7LMzX2O88gA==" + }, + "node_modules/accepts": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz", + "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==", + "dependencies": { + "mime-types": "~2.1.34", + "negotiator": "0.6.3" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/addr-to-ip-port": { + "version": "1.5.4", + "resolved": "https://registry.npmjs.org/addr-to-ip-port/-/addr-to-ip-port-1.5.4.tgz", + "integrity": "sha512-ByxmJgv8vjmDcl3IDToxL2yrWFrRtFpZAToY0f46XFXl8zS081t7El5MXIodwm7RC6DhHBRoOSMLFSPKCtHukg==" + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/all-debrid-api": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/all-debrid-api/-/all-debrid-api-1.1.0.tgz", + "integrity": "sha512-p6Z8M9UBGkEZK2/qJ2YHBPDyDGW1CEZQ+GCp8IQb4UlC/9GIUgeRPjh2ohoAIBPn3gs6hPvZ8wIVS04lJ3SuHA==", + "dependencies": { + "request": "^2.83.0" + } + }, + "node_modules/ansi-escapes": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-3.2.0.tgz", + "integrity": "sha512-cBhpre4ma+U0T1oM5fXg7Dy1Jw7zzwv7lt/GoCpr+hDQJoYnKVPLL4dCvSEFMmQurOQvSrwT7SL/DAlhBI97RQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-regex": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.1.tgz", + "integrity": "sha512-+O9Jct8wf++lXxxFc4hc8LsjaSq0HFzzL7cVsw8pRDIPdjKD2mT4ytDZlLuSBZ4cLKZFXIrMGO7DbQCtMJJMKw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/ansi-styles": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz", + "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==", + "dependencies": { + "color-convert": "^1.9.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/array-back": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/array-back/-/array-back-3.1.0.tgz", + "integrity": "sha512-TkuxA4UCOvxuDK6NZYXCalszEzj+TLszyASooky+i742l9TqsOdYCMJJupxRic61hwquNtppB3hgcuq9SVSH1Q==", + "engines": { + "node": ">=6" + } + }, + "node_modules/array-flatten": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", + "integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" + }, + "node_modules/asn1": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/asn1/-/asn1-0.2.4.tgz", + "integrity": "sha512-jxwzQpLQjSmWXgwaCZE9Nz+glAG01yF1QnWgbhGwHI5A6FRIEY6IVqtHhIepHqI7/kyEyQEagBC5mBEFlIYvdg==", + "dependencies": { + "safer-buffer": "~2.1.0" + } + }, + "node_modules/assert-plus": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/assert-plus/-/assert-plus-1.0.0.tgz", + "integrity": "sha1-8S4PPF13sLHN2RRpQuTpbB5N1SU=", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/async": { + "version": "3.2.3", + "resolved": "https://registry.npmjs.org/async/-/async-3.2.3.tgz", + "integrity": "sha512-spZRyzKL5l5BZQrr/6m/SqFdBN0q3OCI0f9rjfBzCMBIP4p75P620rR3gTmaksNOhmzgdxcaxdNfMy6anrbM0g==" + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha1-x57Zf380y48robyXkLzDZkdLS3k=" + }, + "node_modules/aws-sign2": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/aws-sign2/-/aws-sign2-0.7.0.tgz", + "integrity": "sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=", + "engines": { + "node": "*" + } + }, + "node_modules/aws4": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/aws4/-/aws4-1.9.1.tgz", + "integrity": "sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==" + }, + "node_modules/axios": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/axios/-/axios-1.6.1.tgz", + "integrity": "sha512-vfBmhDpKafglh0EldBEbVuoe7DyAavGSLWhuSm5ZSEKQnHhBf0xAAwybbNH1IkrJNGnS/VG4I5yxig1pCEXE4g==", + "dependencies": { + "follow-redirects": "^1.15.0", + "form-data": "^4.0.0", + "proxy-from-env": "^1.1.0" + } + }, + "node_modules/axios/node_modules/form-data": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.0.tgz", + "integrity": "sha512-ETEklSGi5t0QMZuiXoA/Q6vcnxcLQP5vdugSpuAyi6SVGi2clPPp+xgEhuMaHC+zGgn31Kd235W35f7Hykkaww==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==" + }, + "node_modules/basic-auth": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/basic-auth/-/basic-auth-2.0.1.tgz", + "integrity": "sha512-NF+epuEdnUYVlGuhaxbbq+dvJttwLnGY+YixlXlME5KpQ5W3CnXA5cVTneY3SPbPDRkcjMbifrwmFYcClgOZeg==", + "dependencies": { + "safe-buffer": "5.1.2" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/basic-auth/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/bcrypt-pbkdf": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bcrypt-pbkdf/-/bcrypt-pbkdf-1.0.2.tgz", + "integrity": "sha1-pDAdOJtqQ/m2f/PKEaP2Y342Dp4=", + "dependencies": { + "tweetnacl": "^0.14.3" + } + }, + "node_modules/bencode": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-0.7.0.tgz", + "integrity": "sha512-MG5AM/hkQIZoz/layZ1JK3xBTfqkLcJ3dJ7u2lx+6vZT1JWyK3OgEFGx1WFzWt6grGH6OSGQvRcCnhWKLp4f1Q==" + }, + "node_modules/bep53-range": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/bep53-range/-/bep53-range-1.1.1.tgz", + "integrity": "sha512-ct6s33iiwRCUPp9KXnJ4QMWDgHIgaw36caK/5XEQ9L8dCzSQlJt1Vk6VmHh1VD4AlGCAI4C2zmtfItifBBPrhQ==" + }, + "node_modules/bintrees": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/bintrees/-/bintrees-1.0.2.tgz", + "integrity": "sha512-VOMgTMwjAaUG580SXn3LacVgjurrbMme7ZZNYGSSV7mmtY6QQRh0Eg3pwIcntQ77DErK1L0NxkbetjcoXzVwKw==" + }, + "node_modules/bitfield": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/bitfield/-/bitfield-0.1.0.tgz", + "integrity": "sha512-M15ypXCxXd81FSOWL2ejHpB1TDKmz7Y55/VuqfExJi72sHW0JzE5dfV+hrSZafZtWRg/tdMsdte5dgwrlOM7nA==" + }, + "node_modules/bittorrent-dht": { + "version": "6.4.2", + "resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-6.4.2.tgz", + "integrity": "sha512-DeBunF1nL/ckThYyU3AVtHFR195zNV06Ob6bKNXA1y6X56GSKMfkNCABB45YcbZevGMW1dytFlm59D/fws5lTg==", + "dependencies": { + "bencode": "^0.7.0", + "buffer-equals": "^1.0.3", + "debug": "^2.2.0", + "inherits": "^2.0.1", + "k-bucket": "^0.6.0", + "k-rpc": "^3.6.0", + "lru": "^2.0.0" + } + }, + "node_modules/bittorrent-tracker": { + "version": "7.7.0", + "resolved": "https://registry.npmjs.org/bittorrent-tracker/-/bittorrent-tracker-7.7.0.tgz", + "integrity": "sha512-YFgPTVRhUMncZr8tM3ige7gnViMGhKoGF23qaiISRG8xtYebTGHrMSMXsTXo6O1KbtdEI+4jzvGY1K/wdT9GUA==", + "dependencies": { + "bencode": "^0.8.0", + "bn.js": "^4.4.0", + "compact2string": "^1.2.0", + "debug": "^2.0.0", + "hat": "0.0.3", + "inherits": "^2.0.1", + "ip": "^1.0.1", + "minimist": "^1.1.1", + "once": "^1.3.0", + "random-iterate": "^1.0.1", + "run-parallel": "^1.1.2", + "run-series": "^1.0.2", + "simple-get": "^2.0.0", + "simple-peer": "^6.0.0", + "simple-websocket": "^4.0.0", + "string2compact": "^1.1.1", + "uniq": "^1.0.1", + "ws": "^1.0.0", + "xtend": "^4.0.0" + }, + "bin": { + "bittorrent-tracker": "bin/cmd.js" + } + }, + "node_modules/bittorrent-tracker/node_modules/bencode": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-0.8.0.tgz", + "integrity": "sha512-MWs3FqaWOGg5l+quIT9JTx7+SlcMbfPqqpWy+GOYi5rjZkX8i03tkNhAQn3pD2GAKENPpP3ScUR97ZUMffhHZA==" + }, + "node_modules/bittorrent-tracker/node_modules/decompress-response": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-3.3.0.tgz", + "integrity": "sha512-BzRPQuY1ip+qDonAOz42gRm/pg9F768C+npV/4JOsxRC2sq+Rlk+Q4ZCAsOhnIaMrgarILY+RMUIvMmmX1qAEA==", + "dependencies": { + "mimic-response": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/bittorrent-tracker/node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, + "node_modules/bittorrent-tracker/node_modules/mimic-response": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz", + "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/bittorrent-tracker/node_modules/simple-get": { + "version": "2.8.2", + "resolved": "https://registry.npmjs.org/simple-get/-/simple-get-2.8.2.tgz", + "integrity": "sha512-Ijd/rV5o+mSBBs4F/x9oDPtTx9Zb6X9brmnXvMW4J7IR15ngi9q5xxqWBKU744jTZiaXtxaPL7uHG6vtN8kUkw==", + "dependencies": { + "decompress-response": "^3.3.0", + "once": "^1.3.1", + "simple-concat": "^1.0.0" + } + }, + "node_modules/bl": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/bl/-/bl-2.2.1.tgz", + "integrity": "sha512-6Pesp1w0DEX1N550i/uGV/TqucVL4AM/pgThFSN/Qq9si1/DF9aIHs1BxD8V/QU0HoeHO6cQRTAuYnLPKq1e4g==", + "dependencies": { + "readable-stream": "^2.3.5", + "safe-buffer": "^5.1.1" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==" + }, + "node_modules/bn.js": { + "version": "4.12.0", + "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-4.12.0.tgz", + "integrity": "sha512-c98Bf3tPniI+scsdk237ku1Dc3ujXQTSgyiPUDEOe7tRkhrqridvh8klBv0HCEso1OLOYcHuCv/cS6DNxKH+ZA==" + }, + "node_modules/bncode": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/bncode/-/bncode-0.5.3.tgz", + "integrity": "sha512-0P5VuWobU5Gwbeio8n9Jsdv0tE1IikrV9n4f7RsnXHNtxmdd/oeIO6QyoSEUAEyo5P6i3XMfBppi82WqNsT4JA==" + }, + "node_modules/body-parser": { + "version": "1.20.1", + "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz", + "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==", + "dependencies": { + "bytes": "3.1.2", + "content-type": "~1.0.4", + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "on-finished": "2.4.1", + "qs": "6.11.0", + "raw-body": "2.5.1", + "type-is": "~1.6.18", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==" + }, + "node_modules/bottleneck": { + "version": "2.19.5", + "resolved": "https://registry.npmjs.org/bottleneck/-/bottleneck-2.19.5.tgz", + "integrity": "sha512-VHiNCbI1lKdl44tGrhNfU3lup0Tj/ZBMJB5/2ZbNXRCPuRCO7ed2mgcK4r17y+KB2EfuYuRaVlwNbAeaWGSpbw==" + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/bson": { + "version": "1.1.6", + "resolved": "https://registry.npmjs.org/bson/-/bson-1.1.6.tgz", + "integrity": "sha512-EvVNVeGo4tHxwi8L6bPj3y3itEvStdwvvlojVxxbyYfoaxJ6keLgrTuKdyfEAszFK+H3olzBuafE0yoh0D1gdg==", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/buffer-alloc": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/buffer-alloc/-/buffer-alloc-1.2.0.tgz", + "integrity": "sha512-CFsHQgjtW1UChdXgbyJGtnm+O/uLQeZdtbDo8mfUgYXCHSM1wgrVxXm6bSyrUuErEb+4sYVGCzASBRot7zyrow==", + "dependencies": { + "buffer-alloc-unsafe": "^1.1.0", + "buffer-fill": "^1.0.0" + } + }, + "node_modules/buffer-alloc-unsafe": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/buffer-alloc-unsafe/-/buffer-alloc-unsafe-1.1.0.tgz", + "integrity": "sha512-TEM2iMIEQdJ2yjPJoSIsldnleVaAk1oW3DBVUykyOLsEsFmEc9kn+SFFPz+gl54KQNxlDnAwCXosOS9Okx2xAg==" + }, + "node_modules/buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha512-RgSV6InVQ9ODPdLWJ5UAqBqJBOg370Nz6ZQtRzpt6nUjc8v0St97uJ4PYC6NztqIScrAXafKM3mZPMygSe1ggA==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/buffer-equals": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/buffer-equals/-/buffer-equals-1.0.4.tgz", + "integrity": "sha512-99MsCq0j5+RhubVEtKQgKaD6EM+UP3xJgIvQqwJ3SOLDUekzxMX1ylXBng+Wa2sh7mGT0W6RUly8ojjr1Tt6nA==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/buffer-fill": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/buffer-fill/-/buffer-fill-1.0.0.tgz", + "integrity": "sha512-T7zexNBwiiaCOGDg9xNX9PBmjrubblRkENuptryuI64URkXDFum9il/JGL8Lm8wYfAXpredVXXZz7eMHilimiQ==" + }, + "node_modules/buffer-from": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", + "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==" + }, + "node_modules/buffer-writer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/buffer-writer/-/buffer-writer-2.0.0.tgz", + "integrity": "sha512-a7ZpuTZU1TRtnwyCNW3I5dc0wWNC3VR9S++Ewyk2HHZdrO3CQJqSpd+95Us590V6AL7JqUAH2IwZ/398PmNFgw==", + "engines": { + "node": ">=4" + } + }, + "node_modules/bytes": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz", + "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/cache-manager": { + "version": "3.6.3", + "resolved": "https://registry.npmjs.org/cache-manager/-/cache-manager-3.6.3.tgz", + "integrity": "sha512-dS4DnV6c6cQcVH5OxzIU1XZaACXwvVIiUPkFytnRmLOACuBGv3GQgRQ1RJGRRw4/9DF14ZK2RFlZu1TUgDniMg==", + "dependencies": { + "async": "3.2.3", + "lodash.clonedeep": "^4.5.0", + "lru-cache": "6.0.0" + } + }, + "node_modules/cache-manager-mongodb": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/cache-manager-mongodb/-/cache-manager-mongodb-0.3.0.tgz", + "integrity": "sha512-r+piWvu8XD8ceBWflZBEQZKemksoaL1V5zSHWyviVTXiGBSVQAf18b4S1v5UwGZMJnrMk8YNFgpBlugF0nuhvg==", + "dependencies": { + "bluebird": "^3.5.3", + "cache-manager": "^2.9.0", + "lodash": "^4.17.15", + "mongodb": "^3.6.3" + } + }, + "node_modules/cache-manager-mongodb/node_modules/async": { + "version": "1.5.2", + "resolved": "https://registry.npmjs.org/async/-/async-1.5.2.tgz", + "integrity": "sha512-nSVgobk4rv61R9PUSDtYt7mPVB2olxNR5RWJcAsH676/ef11bUZwvu7+RGYrYauVdDPcO519v68wRhXQtxsV9w==" + }, + "node_modules/cache-manager-mongodb/node_modules/cache-manager": { + "version": "2.11.1", + "resolved": "https://registry.npmjs.org/cache-manager/-/cache-manager-2.11.1.tgz", + "integrity": "sha512-XhUuc9eYwkzpK89iNewFwtvcDYMUsvtwzHeyEOPJna/WsVsXcrzsA1ft2M0QqPNunEzLhNCYPo05tEfG+YuNow==", + "dependencies": { + "async": "1.5.2", + "lodash.clonedeep": "4.5.0", + "lru-cache": "4.0.0" + } + }, + "node_modules/cache-manager-mongodb/node_modules/lru-cache": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.0.0.tgz", + "integrity": "sha512-WKhDkjlLwzE8jAQdQlsxLUQTPXLCKX/4cJk6s5AlRtJkDBk0IKH5O51bVDH61K9N4bhbbyvLM6EiOuE8ovApPA==", + "dependencies": { + "pseudomap": "^1.0.1", + "yallist": "^2.0.0" + } + }, + "node_modules/cache-manager-mongodb/node_modules/yallist": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz", + "integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==" + }, + "node_modules/call-bind": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz", + "integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==", + "dependencies": { + "function-bind": "^1.1.1", + "get-intrinsic": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/caseless": { + "version": "0.12.0", + "resolved": "https://registry.npmjs.org/caseless/-/caseless-0.12.0.tgz", + "integrity": "sha1-G2gcIf+EAzyCZUMJBolCDRhxUdw=" + }, + "node_modules/chalk": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz", + "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==", + "dependencies": { + "ansi-styles": "^3.2.1", + "escape-string-regexp": "^1.0.5", + "supports-color": "^5.3.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/chardet": { + "version": "0.7.0", + "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz", + "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==" + }, + "node_modules/cheerio": { + "version": "1.0.0-rc.12", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", + "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "dependencies": { + "cheerio-select": "^2.1.0", + "dom-serializer": "^2.0.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "htmlparser2": "^8.0.1", + "parse5": "^7.0.0", + "parse5-htmlparser2-tree-adapter": "^7.0.0" + }, + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + } + }, + "node_modules/cheerio-select": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", + "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", + "dependencies": { + "boolbase": "^1.0.0", + "css-select": "^5.1.0", + "css-what": "^6.1.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/chrome-dgram": { + "version": "3.0.6", + "resolved": "https://registry.npmjs.org/chrome-dgram/-/chrome-dgram-3.0.6.tgz", + "integrity": "sha512-bqBsUuaOiXiqxXt/zA/jukNJJ4oaOtc7ciwqJpZVEaaXwwxqgI2/ZdG02vXYWUhHGziDlvGMQWk0qObgJwVYKA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "inherits": "^2.0.4", + "run-series": "^1.1.9" + } + }, + "node_modules/chrome-dns": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/chrome-dns/-/chrome-dns-1.0.1.tgz", + "integrity": "sha512-HqsYJgIc8ljJJOqOzLphjAs79EUuWSX3nzZi2LNkzlw3GIzAeZbaSektC8iT/tKvLqZq8yl1GJu5o6doA4TRbg==", + "dependencies": { + "chrome-net": "^3.3.2" + } + }, + "node_modules/chrome-net": { + "version": "3.3.4", + "resolved": "https://registry.npmjs.org/chrome-net/-/chrome-net-3.3.4.tgz", + "integrity": "sha512-Jzy2EnzmE+ligqIZUsmWnck9RBXLuUy6CaKyuNMtowFG3ZvLt8d+WBJCTPEludV0DHpIKjAOlwjFmTaEdfdWCw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "inherits": "^2.0.1" + } + }, + "node_modules/cli-cursor": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-2.1.0.tgz", + "integrity": "sha1-s12sN2R5+sw+lHR9QdDQ9SOP/LU=", + "dependencies": { + "restore-cursor": "^2.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/cli-spinners": { + "version": "2.9.2", + "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", + "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/cli-width": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz", + "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=" + }, + "node_modules/clone": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz", + "integrity": "sha512-JQHZ2QMW6l3aH/j6xCqQThY/9OH4D/9ls34cgkUBiEeocRTU04tHfKPBsUK1PqZCUQM7GiA0IIXJSuXHI64Kbg==", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/color-convert": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz", + "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==", + "dependencies": { + "color-name": "1.1.3" + } + }, + "node_modules/color-name": { + "version": "1.1.3", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz", + "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=" + }, + "node_modules/colors": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", + "engines": { + "node": ">=0.1.90" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/command-line-args": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/command-line-args/-/command-line-args-5.2.1.tgz", + "integrity": "sha512-H4UfQhZyakIjC74I9d34fGYDwk3XpSr17QhEd0Q3I9Xq1CETHo4Hcuo87WyWHpAF1aSLjLRf5lD9ZGX2qStUvg==", + "dependencies": { + "array-back": "^3.1.0", + "find-replace": "^3.0.0", + "lodash.camelcase": "^4.3.0", + "typical": "^4.0.0" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/compact2string": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/compact2string/-/compact2string-1.4.1.tgz", + "integrity": "sha512-3D+EY5nsRhqnOwDxveBv5T8wGo4DEvYxjDtPGmdOX+gfr5gE92c2RC0w2wa+xEefm07QuVqqcF3nZJUZ92l/og==", + "dependencies": { + "ipaddr.js": ">= 0.1.5" + } + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==" + }, + "node_modules/content-disposition": { + "version": "0.5.4", + "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz", + "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==", + "dependencies": { + "safe-buffer": "5.2.1" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/content-type": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/content-type/-/content-type-1.0.4.tgz", + "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz", + "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/cookie-signature": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", + "integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" + }, + "node_modules/cookies": { + "version": "0.8.0", + "resolved": "https://registry.npmjs.org/cookies/-/cookies-0.8.0.tgz", + "integrity": "sha512-8aPsApQfebXnuI+537McwYsDtjVxGm8gTIzQI3FDW6t5t/DAhERxtnbEPN/8RX+uZthoz4eCOgloXaE5cYyNow==", + "dependencies": { + "depd": "~2.0.0", + "keygrip": "~1.1.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/core-util-is": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz", + "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=" + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmjs.org/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/cron-parser": { + "version": "4.9.0", + "resolved": "https://registry.npmjs.org/cron-parser/-/cron-parser-4.9.0.tgz", + "integrity": "sha512-p0SaNjrHOnQeR8/VnfGbmg9te2kfyYSQ7Sc/j/6DtPL3JQvKxmjO9TSjNFpujqV3vEYYBvNNvXSxzyksBWAx1Q==", + "dependencies": { + "luxon": "^3.2.1" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/css-select": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", + "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.1.0", + "domhandler": "^5.0.2", + "domutils": "^3.0.1", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/cyclist": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/cyclist/-/cyclist-0.1.1.tgz", + "integrity": "sha512-w8a8nQk9YSCkMmH2wDbFqpH1XMz7l409mSvWnnG6Iu6D0Ydhvq61XASE7QIaA46FxfG2Ag524ZuGgAy2cXPfsw==" + }, + "node_modules/d": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/d/-/d-1.0.1.tgz", + "integrity": "sha512-m62ShEObQ39CfralilEQRjH6oAMtNCV1xJyEx5LpRYUVN+EviphDgUc/F3hnYbADmkiNs67Y+3ylmlG7Lnu+FA==", + "dependencies": { + "es5-ext": "^0.10.50", + "type": "^1.0.1" + } + }, + "node_modules/dashdash": { + "version": "1.14.1", + "resolved": "https://registry.npmjs.org/dashdash/-/dashdash-1.14.1.tgz", + "integrity": "sha1-hTz6D3y+L+1d4gMmuN1YEDX24vA=", + "dependencies": { + "assert-plus": "^1.0.0" + }, + "engines": { + "node": ">=0.10" + } + }, + "node_modules/debrid-link-api": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/debrid-link-api/-/debrid-link-api-1.0.1.tgz", + "integrity": "sha512-8b15xUosQ64v1wcN1cGSvt4YXm4dw7gi5hOvqPDOtvsEtlaH2pp/BdjS9/oUh866bPirFVzXrjnIwVK4dRsm3g==", + "dependencies": { + "request": "^2.83.0" + } + }, + "node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/deepmerge-ts": { + "version": "5.1.0", + "resolved": "https://registry.npmjs.org/deepmerge-ts/-/deepmerge-ts-5.1.0.tgz", + "integrity": "sha512-eS8dRJOckyo9maw9Tu5O5RUi/4inFLrnoLkBe3cPfDMx3WZioXtmOew4TXQaxq7Rhl4xjDtR7c6x8nNTxOvbFw==", + "engines": { + "node": ">=16.0.0" + } + }, + "node_modules/defaults": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.4.tgz", + "integrity": "sha512-eFuaLoy/Rxalv2kr+lqMlUnrDWV+3j4pljOIJgLIhI058IQfWJ7vXhyEIHu+HtC738klGALYxOKDO0bQP3tg8A==", + "dependencies": { + "clone": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha1-3zrhmayt+31ECqrgsp4icrJOxhk=", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/denque": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/denque/-/denque-1.5.1.tgz", + "integrity": "sha512-XwE+iZ4D6ZUB7mfYRMb5wByE8L74HCn30FBN7sWnXksWc1LO1bPDl67pBR9o/kC4z/xSNAwkMYcGgqDV3BE3Hw==", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/depd": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz", + "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/destroy": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz", + "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg==", + "engines": { + "node": ">= 0.8", + "npm": "1.2.8000 || >= 1.4.16" + } + }, + "node_modules/diacritics": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/diacritics/-/diacritics-1.3.0.tgz", + "integrity": "sha512-wlwEkqcsaxvPJML+rDh/2iS824jbREk6DUMUKkEaSlxdYHeS43cClJtsWglvw2RfeXGm6ohKDqsXteJ5sP5enA==" + }, + "node_modules/dom-serializer": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", + "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.2", + "entities": "^4.2.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ] + }, + "node_modules/domhandler": { + "version": "5.0.3", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", + "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", + "dependencies": { + "domelementtype": "^2.3.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/domutils": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", + "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", + "dependencies": { + "dom-serializer": "^2.0.0", + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/dottie": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/dottie/-/dottie-2.0.6.tgz", + "integrity": "sha512-iGCHkfUc5kFekGiqhe8B/mdaurD+lakO9txNnTvKtA6PISrw86LgqHvRzWYPyoE2Ph5aMIrCw9/uko6XHTKCwA==" + }, + "node_modules/ecc-jsbn": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/ecc-jsbn/-/ecc-jsbn-0.1.2.tgz", + "integrity": "sha1-OoOpBOVDUyh4dMVkt1SThoSamMk=", + "dependencies": { + "jsbn": "~0.1.0", + "safer-buffer": "^2.1.0" + } + }, + "node_modules/ee-first": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", + "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==" + }, + "node_modules/encodeurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", + "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/encoding": { + "version": "0.1.13", + "resolved": "https://registry.npmjs.org/encoding/-/encoding-0.1.13.tgz", + "integrity": "sha512-ETBauow1T35Y/WZMkio9jiM0Z5xjHHmJ4XmjZOq1l/dXz3lr2sRn87nJy20RupqSh1F2m3HHPSp8ShIPQJrJ3A==", + "optional": true, + "peer": true, + "dependencies": { + "iconv-lite": "^0.6.2" + } + }, + "node_modules/encoding/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "optional": true, + "peer": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/es5-ext": { + "version": "0.10.53", + "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.53.tgz", + "integrity": "sha512-Xs2Stw6NiNHWypzRTY1MtaG/uJlwCk8kH81920ma8mvN8Xq1gsfhZvpkImLQArw8AHnv8MT2I45J3c0R8slE+Q==", + "dependencies": { + "es6-iterator": "~2.0.3", + "es6-symbol": "~3.1.3", + "next-tick": "~1.0.0" + } + }, + "node_modules/es6-iterator": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz", + "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=", + "dependencies": { + "d": "1", + "es5-ext": "^0.10.35", + "es6-symbol": "^3.1.1" + } + }, + "node_modules/es6-symbol": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.3.tgz", + "integrity": "sha512-NJ6Yn3FuDinBaBRWl/q5X/s4koRHBrgKAu+yGI6JCBeiu3qrcbJhwT2GeR/EXVfylRk8dpQVJoLEFhK+Mu31NA==", + "dependencies": { + "d": "^1.0.1", + "ext": "^1.1.2" + } + }, + "node_modules/escape-html": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", + "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow==" + }, + "node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/event-emitter": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz", + "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=", + "dependencies": { + "d": "1", + "es5-ext": "~0.10.14" + } + }, + "node_modules/events": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/events/-/events-3.3.0.tgz", + "integrity": "sha512-mQw+2fkQbALzQ7V0MY0IqdnXNOeTtP4r0lN9z7AAawCXgqea7bDii20AYrIBrFd/Hx0M2Ocz6S111CaFkUcb0Q==", + "engines": { + "node": ">=0.8.x" + } + }, + "node_modules/express": { + "version": "4.18.2", + "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz", + "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==", + "dependencies": { + "accepts": "~1.3.8", + "array-flatten": "1.1.1", + "body-parser": "1.20.1", + "content-disposition": "0.5.4", + "content-type": "~1.0.4", + "cookie": "0.5.0", + "cookie-signature": "1.0.6", + "debug": "2.6.9", + "depd": "2.0.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "finalhandler": "1.2.0", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "merge-descriptors": "1.0.1", + "methods": "~1.1.2", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "proxy-addr": "~2.0.7", + "qs": "6.11.0", + "range-parser": "~1.2.1", + "safe-buffer": "5.2.1", + "send": "0.18.0", + "serve-static": "1.15.0", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "type-is": "~1.6.18", + "utils-merge": "1.0.1", + "vary": "~1.1.2" + }, + "engines": { + "node": ">= 0.10.0" + } + }, + "node_modules/express-rate-limit": { + "version": "6.7.0", + "resolved": "https://registry.npmjs.org/express-rate-limit/-/express-rate-limit-6.7.0.tgz", + "integrity": "sha512-vhwIdRoqcYB/72TK3tRZI+0ttS8Ytrk24GfmsxDXK9o9IhHNO5bXRiXQSExPQ4GbaE5tvIS7j1SGrxsuWs+sGA==", + "engines": { + "node": ">= 12.9.0" + }, + "peerDependencies": { + "express": "^4 || ^5" + } + }, + "node_modules/ext": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/ext/-/ext-1.4.0.tgz", + "integrity": "sha512-Key5NIsUxdqKg3vIsdw9dSuXpPCQ297y6wBjL30edxwPgt2E44WcWBZey/ZvUc6sERLTxKdyCu4gZFmUbk1Q7A==", + "dependencies": { + "type": "^2.0.0" + } + }, + "node_modules/ext/node_modules/type": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/type/-/type-2.5.0.tgz", + "integrity": "sha512-180WMDQaIMm3+7hGXWf12GtdniDEy7nYcyFMKJn/eZz/6tSLXrUN9V0wKSbMjej0I1WHWbpREDEKHtqPQa9NNw==" + }, + "node_modules/extend": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/extend/-/extend-3.0.2.tgz", + "integrity": "sha512-fjquC59cD7CyW6urNXK0FBufkZcoiGG80wTuPujX590cB5Ttln20E2UB4S/WARVqhXffZl2LNgS+gQdPIIim/g==" + }, + "node_modules/external-editor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz", + "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==", + "dependencies": { + "chardet": "^0.7.0", + "iconv-lite": "^0.4.24", + "tmp": "^0.0.33" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/extsprintf": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/extsprintf/-/extsprintf-1.3.0.tgz", + "integrity": "sha1-lpGEQOMEGnpBT4xS48V06zw+HgU=", + "engines": [ + "node >=0.6.0" + ] + }, + "node_modules/fast-deep-equal": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz", + "integrity": "sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==" + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==" + }, + "node_modules/fifo": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/fifo/-/fifo-0.1.4.tgz", + "integrity": "sha512-CpKgwraLo4YWY9cUEICNJ1WcOVR2WE1Jvot3Nvr7FGBiGOKgkn1CmF4zuCl9VxvEh1nQsdYXtQg+V0etPiED6g==" + }, + "node_modules/figures": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/figures/-/figures-2.0.0.tgz", + "integrity": "sha1-OrGi0qYsi/tDGgyUy3l6L84nyWI=", + "dependencies": { + "escape-string-regexp": "^1.0.5" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/finalhandler": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz", + "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==", + "dependencies": { + "debug": "2.6.9", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "on-finished": "2.4.1", + "parseurl": "~1.3.3", + "statuses": "2.0.1", + "unpipe": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/find-replace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/find-replace/-/find-replace-3.0.0.tgz", + "integrity": "sha512-6Tb2myMioCAgv5kfvP5/PkZZ/ntTpVK39fHY7WkWBgvbeE+VHd/tZuZ4mrC+bxh4cfOZeYKVPaJIZtZXV7GNCQ==", + "dependencies": { + "array-back": "^3.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/flatten": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/flatten/-/flatten-0.0.1.tgz", + "integrity": "sha512-pzNZh42/A2HmcRIpddSP0T+zBofd119o5rNB2u1YHv36CM2C/ietI2ZsjWZ2LSL7J0BNVkFn1a9Ad+cmO2lDQg==", + "deprecated": "flatten is deprecated in favor of utility frameworks such as lodash.", + "engines": { + "node": "*" + } + }, + "node_modules/follow-redirects": { + "version": "1.15.1", + "resolved": "https://registry.npmjs.org/follow-redirects/-/follow-redirects-1.15.1.tgz", + "integrity": "sha512-yLAMQs+k0b2m7cVxpS1VKJVvoz7SS9Td1zss3XRwXj+ZDH00RJgnuLx7E44wx02kQLrdM3aOOy+FpzS7+8OizA==", + "funding": [ + { + "type": "individual", + "url": "https://github.com/sponsors/RubenVerborgh" + } + ], + "engines": { + "node": ">=4.0" + }, + "peerDependenciesMeta": { + "debug": { + "optional": true + } + } + }, + "node_modules/forever-agent": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/forever-agent/-/forever-agent-0.6.1.tgz", + "integrity": "sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=", + "engines": { + "node": "*" + } + }, + "node_modules/form-data": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-2.3.3.tgz", + "integrity": "sha512-1lLKB2Mu3aGP1Q/2eCOx0fNbRMe7XdwktwOruhfqqd0rIJWwN4Dh+E3hrPSlDCXnSR7UtZ1N38rVXm+6+MEhJQ==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.6", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 0.12" + } + }, + "node_modules/forwarded": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz", + "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fresh": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", + "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/fs-chunk-store": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/fs-chunk-store/-/fs-chunk-store-1.7.0.tgz", + "integrity": "sha512-KhjJmZAs2eqfhCb6PdPx4RcZtheGTz86tpTC5JTvqBn/xda+Nb+0C7dCyjOSN7T76H6a56LvH0SVXQMchLXDRw==", + "dependencies": { + "mkdirp": "^0.5.1", + "random-access-file": "^2.0.1", + "randombytes": "^2.0.3", + "rimraf": "^2.4.2", + "run-parallel": "^1.1.2", + "thunky": "^1.0.1" + } + }, + "node_modules/fs-chunk-store/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/fs.realpath": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", + "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==" + }, + "node_modules/function-bind": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz", + "integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==" + }, + "node_modules/get-browser-rtc": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/get-browser-rtc/-/get-browser-rtc-1.1.0.tgz", + "integrity": "sha512-MghbMJ61EJrRsDe7w1Bvqt3ZsBuqhce5nrn/XAwgwOXhcsz53/ltdxOse1h/8eKXj5slzxdsz56g5rzOFSGwfQ==" + }, + "node_modules/get-intrinsic": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.1.tgz", + "integrity": "sha512-kWZrnVM42QCiEA2Ig1bG8zjoIMOgxWwYCEeNdwY6Tv/cOSeGpcoX4pXHfKUxNKVoArnrEr2e9srnAxxGIraS9Q==", + "dependencies": { + "function-bind": "^1.1.1", + "has": "^1.0.3", + "has-symbols": "^1.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/getpass": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/getpass/-/getpass-0.1.7.tgz", + "integrity": "sha1-Xv+OPmhNVprkyysSgmBOi6YhSfo=", + "dependencies": { + "assert-plus": "^1.0.0" + } + }, + "node_modules/glob": { + "version": "7.2.3", + "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", + "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", + "dependencies": { + "fs.realpath": "^1.0.0", + "inflight": "^1.0.4", + "inherits": "2", + "minimatch": "^3.1.1", + "once": "^1.3.0", + "path-is-absolute": "^1.0.0" + }, + "engines": { + "node": "*" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/google-it": { + "version": "1.6.4", + "resolved": "https://registry.npmjs.org/google-it/-/google-it-1.6.4.tgz", + "integrity": "sha512-iM/31cWQ0wLcBngHSR3l6OwtkqYP93kiQWF74YqyHte/sJ5BFQ60IzCckuetu0LH4//mxYqFlH30nhNuBX/udw==", + "dependencies": { + "cheerio": "^1.0.0-rc.11", + "colors": "^1.4.0", + "command-line-args": "^5.0.0", + "ora": "^4.0.3", + "request": "^2.88.0" + }, + "bin": { + "google-it": "lib/app.js" + } + }, + "node_modules/google-sr": { + "version": "3.2.1", + "resolved": "https://registry.npmjs.org/google-sr/-/google-sr-3.2.1.tgz", + "integrity": "sha512-1WGy6mxMTKo+jbIrmq1mwm+2Egvmx9ttsXzCiR0Y2LMcpeG4shqc8C4g12msi4arRn9qEwG1qrFQ1W9jo3dDzw==", + "dependencies": { + "axios": "^1.4.0", + "cheerio": "1.0.0-rc.12", + "deepmerge-ts": "^5.1.0", + "google-sr-selectors": "^0.0.2", + "tslib": "^2.6.1" + } + }, + "node_modules/google-sr-selectors": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/google-sr-selectors/-/google-sr-selectors-0.0.2.tgz", + "integrity": "sha512-7h+vo7NSDf+pZB/InDon4mwhXeTvy/9yvAChGnjppcdHgTwlUWDpYPWGUn781J3PrjBj6rZAginsSTGqG5uUZw==" + }, + "node_modules/google-sr/node_modules/tslib": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.6.2.tgz", + "integrity": "sha512-AEYxH93jGFPn/a2iVAwW87VuUIkR1FVUKB77NwMF7nBTDkDrrT/Hpt/IrCJ0QXhW27jTBDcf5ZY7w6RiqTMw2Q==" + }, + "node_modules/har-schema": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/har-schema/-/har-schema-2.0.0.tgz", + "integrity": "sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=", + "engines": { + "node": ">=4" + } + }, + "node_modules/har-validator": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/har-validator/-/har-validator-5.1.3.tgz", + "integrity": "sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==", + "deprecated": "this library is no longer supported", + "dependencies": { + "ajv": "^6.5.5", + "har-schema": "^2.0.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/has": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz", + "integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==", + "dependencies": { + "function-bind": "^1.1.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/has-flag": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", + "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/has-symbols": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz", + "integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/hat": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/hat/-/hat-0.0.3.tgz", + "integrity": "sha512-zpImx2GoKXy42fVDSEad2BPKuSQdLcqsCYa48K3zHSzM/ugWuYjLDr8IXxpVuL7uCLHw56eaiLxCRthhOzf5ug==", + "engines": { + "node": "*" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "bin": { + "he": "bin/he" + } + }, + "node_modules/htmlparser2": { + "version": "8.0.2", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", + "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", + "funding": [ + "https://github.com/fb55/htmlparser2?sponsor=1", + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "dependencies": { + "domelementtype": "^2.3.0", + "domhandler": "^5.0.3", + "domutils": "^3.0.1", + "entities": "^4.4.0" + } + }, + "node_modules/http-errors": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz", + "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==", + "dependencies": { + "depd": "2.0.0", + "inherits": "2.0.4", + "setprototypeof": "1.2.0", + "statuses": "2.0.1", + "toidentifier": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/http-signature": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/http-signature/-/http-signature-1.2.0.tgz", + "integrity": "sha1-muzZJRFHcvPZW2WmCruPfBj7rOE=", + "dependencies": { + "assert-plus": "^1.0.0", + "jsprim": "^1.2.2", + "sshpk": "^1.7.0" + }, + "engines": { + "node": ">=0.8", + "npm": ">=1.3.7" + } + }, + "node_modules/iconv-lite": { + "version": "0.4.24", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz", + "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/immediate-chunk-store": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/immediate-chunk-store/-/immediate-chunk-store-1.0.8.tgz", + "integrity": "sha512-0tQyTytUaIUskpv5j5L5ZeQuEjYDl9QIekwDUisdqpAM81OZjBaEIriW7hoiRLaLNxj1fXE8e1yx5JaCGrrE7A==" + }, + "node_modules/inflection": { + "version": "1.13.2", + "resolved": "https://registry.npmjs.org/inflection/-/inflection-1.13.2.tgz", + "integrity": "sha512-cmZlljCRTBFouT8UzMzrGcVEvkv6D/wBdcdKG7J1QH5cXjtU75Dm+P27v9EKu/Y43UYyCJd1WC4zLebRrC8NBw==", + "engines": [ + "node >= 0.4.0" + ] + }, + "node_modules/inflight": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", + "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", + "dependencies": { + "once": "^1.3.0", + "wrappy": "1" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==" + }, + "node_modules/inquirer": { + "version": "6.5.2", + "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-6.5.2.tgz", + "integrity": "sha512-cntlB5ghuB0iuO65Ovoi8ogLHiWGs/5yNrtUcKjFhSSiVeAIVpD7koaSU9RM8mpXw5YDi9RdYXGQMaOURB7ycQ==", + "dependencies": { + "ansi-escapes": "^3.2.0", + "chalk": "^2.4.2", + "cli-cursor": "^2.1.0", + "cli-width": "^2.0.0", + "external-editor": "^3.0.3", + "figures": "^2.0.0", + "lodash": "^4.17.12", + "mute-stream": "0.0.7", + "run-async": "^2.2.0", + "rxjs": "^6.4.0", + "string-width": "^2.1.0", + "strip-ansi": "^5.1.0", + "through": "^2.3.6" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/ip-set": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ip-set/-/ip-set-1.0.2.tgz", + "integrity": "sha512-Mb6kv78bTi4RNAIIWL8Bbre7hXOR2pNUi3j8FaQkLaitf/ZWxkq3/iIwXNYk2ACO3IMfdVdQrOkUtwZblO7uBA==", + "dependencies": { + "ip": "^1.1.3" + } + }, + "node_modules/ip-set/node_modules/ip": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/ip/-/ip-1.1.8.tgz", + "integrity": "sha512-PuExPYUiu6qMBQb4l06ecm6T6ujzhmh+MeJcW9wa89PoAz5pvd4zPgN5WJV104mb6S2T1AwNIAaB70JNrLQWhg==" + }, + "node_modules/ipaddr.js": { + "version": "1.9.1", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-1.9.1.tgz", + "integrity": "sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-fullwidth-code-point": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz", + "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=", + "engines": { + "node": ">=4" + } + }, + "node_modules/is-interactive": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz", + "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==", + "engines": { + "node": ">=8" + } + }, + "node_modules/is-promise": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/is-promise/-/is-promise-2.1.0.tgz", + "integrity": "sha1-eaKp7OfwlugPNtKy87wWwf9L8/o=" + }, + "node_modules/is-typedarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/is-typedarray/-/is-typedarray-1.0.0.tgz", + "integrity": "sha1-5HnICFjfDBsR3dppQPlgEfzaSpo=" + }, + "node_modules/is-wsl": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-1.1.0.tgz", + "integrity": "sha1-HxbkqiKwTRM2tmGIpmrzxgDDpm0=", + "engines": { + "node": ">=4" + } + }, + "node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==" + }, + "node_modules/isstream": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/isstream/-/isstream-0.1.2.tgz", + "integrity": "sha1-R+Y/evVa+m+S4VAOaQ64uFKcCZo=" + }, + "node_modules/jaro-winkler": { + "version": "0.2.8", + "resolved": "https://registry.npmjs.org/jaro-winkler/-/jaro-winkler-0.2.8.tgz", + "integrity": "sha512-yr+mElb6dWxA1mzFu0+26njV5DWAQRNTi5pB6fFMm79zHrfAs3d0qjhe/IpZI4AHIUJkzvu5QXQRWOw2O0GQyw==" + }, + "node_modules/js-base64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/js-base64/-/js-base64-2.6.3.tgz", + "integrity": "sha512-fiUvdfCaAXoQTHdKMgTvg6IkecXDcVz6V5rlftUTclF9IKBjMizvSdQaCl/z/6TApDeby5NL+axYou3i0mu1Pg==" + }, + "node_modules/jsbn": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/jsbn/-/jsbn-0.1.1.tgz", + "integrity": "sha1-peZUwuWi3rXyAdls77yoDA7y9RM=" + }, + "node_modules/json-schema": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/json-schema/-/json-schema-0.4.0.tgz", + "integrity": "sha512-es94M3nTIfsEPisRafak+HDLfHXnKBhV3vU5eqPcS3flIWqcxJWgXHXiey3YrpaNsanY5ei1VoYEbOzijuq9BA==" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==" + }, + "node_modules/json-stringify-safe": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/json-stringify-safe/-/json-stringify-safe-5.0.1.tgz", + "integrity": "sha1-Epai1Y/UXxmg9s4B1lcB4sc1tus=" + }, + "node_modules/jsprim": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/jsprim/-/jsprim-1.4.2.tgz", + "integrity": "sha512-P2bSOMAc/ciLz6DzgjVlGJP9+BrJWu5UDGK70C2iweC5QBIeFf0ZXRvGjEj2uYgrY2MkAAhsSWHDWlFtEroZWw==", + "dependencies": { + "assert-plus": "1.0.0", + "extsprintf": "1.3.0", + "json-schema": "0.4.0", + "verror": "1.10.0" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/k-bucket": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-0.6.0.tgz", + "integrity": "sha512-1zJpqkrLYgolqdO1TE1/FWf+mHfhJKLC2Wpi4JaMFZKi4b6tFEn9/d+JqscBIJw5auWFewp16CSAEetFGEC4NQ==", + "dependencies": { + "buffer-equal": "0.0.1", + "inherits": "^2.0.1" + } + }, + "node_modules/k-rpc": { + "version": "3.7.0", + "resolved": "https://registry.npmjs.org/k-rpc/-/k-rpc-3.7.0.tgz", + "integrity": "sha512-XFL8PatIToQ/qhSSAq9FSK73wk4fX4DcHqjnkvSCrWC59PV02Oj1KeYa3KnREAXgA1DlCSzcKjk7M8usnT/dUw==", + "dependencies": { + "buffer-equals": "^1.0.3", + "k-bucket": "^2.0.0", + "k-rpc-socket": "^1.5.0" + } + }, + "node_modules/k-rpc-socket": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/k-rpc-socket/-/k-rpc-socket-1.11.1.tgz", + "integrity": "sha512-8xtA8oqbZ6v1Niryp2/g4GxW16EQh5MvrUylQoOG+zcrDff5CKttON2XUXvMwlIHq4/2zfPVFiinAccJ+WhxoA==", + "dependencies": { + "bencode": "^2.0.0", + "chrome-dgram": "^3.0.2", + "chrome-dns": "^1.0.0", + "chrome-net": "^3.3.2" + } + }, + "node_modules/k-rpc-socket/node_modules/bencode": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/bencode/-/bencode-2.0.3.tgz", + "integrity": "sha512-D/vrAD4dLVX23NalHwb8dSvsUsxeRPO8Y7ToKA015JQYq69MLDOMkC0uGZYA/MPpltLO8rt8eqFC2j8DxjTZ/w==" + }, + "node_modules/k-rpc/node_modules/k-bucket": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-2.0.1.tgz", + "integrity": "sha512-Xuye90xBBDJJbvNSuy3z/Yl8ceVX02/sopqGUEwJkMgRw+//TQXx0/Hbgp60GsoVfZcCBllQXXp6AWe2INu8pw==", + "dependencies": { + "buffer-equal": "0.0.1", + "randombytes": "^2.0.3" + } + }, + "node_modules/keygrip": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/keygrip/-/keygrip-1.1.0.tgz", + "integrity": "sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==", + "dependencies": { + "tsscmp": "1.0.6" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==" + }, + "node_modules/lodash.assignin": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.assignin/-/lodash.assignin-4.2.0.tgz", + "integrity": "sha512-yX/rx6d/UTVh7sSVWVSIMjfnz95evAgDFdb1ZozC35I9mSFCkmzptOzevxjgbQUsc78NR44LVHWjsoMQXy9FDg==" + }, + "node_modules/lodash.bind": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/lodash.bind/-/lodash.bind-4.2.1.tgz", + "integrity": "sha512-lxdsn7xxlCymgLYo1gGvVrfHmkjDiyqVv62FAeF2i5ta72BipE1SLxw8hPEPLhD4/247Ijw07UQH7Hq/chT5LA==" + }, + "node_modules/lodash.camelcase": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/lodash.camelcase/-/lodash.camelcase-4.3.0.tgz", + "integrity": "sha512-TwuEnCnxbc3rAvhf/LbG7tJUDzhqXyFnv3dtzLOPgCG/hODL7WFnsbwktkD7yUV0RrreP/l1PALq/YSg6VvjlA==" + }, + "node_modules/lodash.clonedeep": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.clonedeep/-/lodash.clonedeep-4.5.0.tgz", + "integrity": "sha1-4j8/nE+Pvd6HJSnBBxhXoIblzO8=" + }, + "node_modules/lodash.defaults": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/lodash.defaults/-/lodash.defaults-4.2.0.tgz", + "integrity": "sha512-qjxPLHd3r5DnsdGacqOMU6pb/avJzdh9tFX2ymgoZE27BmjXrNy/y4LoaiTeAb+O3gL8AfpJGtqfX/ae2leYYQ==" + }, + "node_modules/lodash.filter": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.filter/-/lodash.filter-4.6.0.tgz", + "integrity": "sha512-pXYUy7PR8BCLwX5mgJ/aNtyOvuJTdZAo9EQFUvMIYugqmJxnrYaANvTbgndOzHSCSR0wnlBBfRXJL5SbWxo3FQ==" + }, + "node_modules/lodash.flatten": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.flatten/-/lodash.flatten-4.4.0.tgz", + "integrity": "sha512-C5N2Z3DgnnKr0LOpv/hKCgKdb7ZZwafIrsesve6lmzvZIRZRGaZ/l6Q8+2W7NaT+ZwO3fFlSCzCzrDCFdJfZ4g==" + }, + "node_modules/lodash.foreach": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.foreach/-/lodash.foreach-4.5.0.tgz", + "integrity": "sha512-aEXTF4d+m05rVOAUG3z4vZZ4xVexLKZGF0lIxuHZ1Hplpk/3B6Z1+/ICICYRLm7c41Z2xiejbkCkJoTlypoXhQ==" + }, + "node_modules/lodash.map": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.map/-/lodash.map-4.6.0.tgz", + "integrity": "sha512-worNHGKLDetmcEYDvh2stPCrrQRkP20E4l0iIS7F8EvzMqBBi7ltvFN5m1HvTf1P7Jk1txKhvFcmYsCr8O2F1Q==" + }, + "node_modules/lodash.merge": { + "version": "4.6.2", + "resolved": "https://registry.npmjs.org/lodash.merge/-/lodash.merge-4.6.2.tgz", + "integrity": "sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==" + }, + "node_modules/lodash.omit": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.omit/-/lodash.omit-4.5.0.tgz", + "integrity": "sha512-XeqSp49hNGmlkj2EJlfrQFIzQ6lXdNro9sddtQzcJY8QaoC2GO0DT7xaIokHeyM+mIT0mPMlPvkYzg2xCuHdZg==" + }, + "node_modules/lodash.pick": { + "version": "4.4.0", + "resolved": "https://registry.npmjs.org/lodash.pick/-/lodash.pick-4.4.0.tgz", + "integrity": "sha512-hXt6Ul/5yWjfklSGvLQl8vM//l3FtyHZeuelpzK6mm99pNvN9yTDruNZPEJZD1oWrqo+izBmB7oUfWgcCX7s4Q==" + }, + "node_modules/lodash.reduce": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reduce/-/lodash.reduce-4.6.0.tgz", + "integrity": "sha512-6raRe2vxCYBhpBu+B+TtNGUzah+hQjVdu3E17wfusjyrXBka2nBS8OH/gjVZ5PvHOhWmIZTYri09Z6n/QfnNMw==" + }, + "node_modules/lodash.reject": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.reject/-/lodash.reject-4.6.0.tgz", + "integrity": "sha512-qkTuvgEzYdyhiJBx42YPzPo71R1aEr0z79kAv7Ixg8wPFEjgRgJdUsGMG3Hf3OYSF/kHI79XhNlt+5Ar6OzwxQ==" + }, + "node_modules/lodash.some": { + "version": "4.6.0", + "resolved": "https://registry.npmjs.org/lodash.some/-/lodash.some-4.6.0.tgz", + "integrity": "sha512-j7MJE+TuT51q9ggt4fSgVqro163BEFjAt3u97IqU+JA2DkWl80nFTrowzLpZ/BnpN7rrl0JA/593NAdd8p/scQ==" + }, + "node_modules/log-symbols": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz", + "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==", + "dependencies": { + "chalk": "^2.4.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/long-timeout": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/long-timeout/-/long-timeout-0.1.1.tgz", + "integrity": "sha512-BFRuQUqc7x2NWxfJBCyUrN8iYUYznzL9JROmRz1gZ6KlOIgmoD+njPVbb+VNn2nGMKggMsK79iUNErillsrx7w==" + }, + "node_modules/lru": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/lru/-/lru-2.0.1.tgz", + "integrity": "sha512-JGRd3IHM64MPsGVw1Mqbz2Y2HDIePqi/MLfPtdrkHQwvvJnSrS9b6gM3KS9PFR5xJnufXJczHHZSmGqfuII1ew==", + "dependencies": { + "inherits": "^2.0.1" + }, + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/luxon": { + "version": "3.4.4", + "resolved": "https://registry.npmjs.org/luxon/-/luxon-3.4.4.tgz", + "integrity": "sha512-zobTr7akeGHnv7eBOXcRgMeCP6+uyYsczwmeRCauvpvaAltgNyTbLH/+VaEAPUeWBT+1GuNmz4wC/6jtQzbbVA==", + "engines": { + "node": ">=12" + } + }, + "node_modules/magnet-uri": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/magnet-uri/-/magnet-uri-6.2.0.tgz", + "integrity": "sha512-O9AgdDwT771fnUj0giPYu/rACpz8173y8UXCSOdLITjOVfBenZ9H9q3FqQmveK+ORUMuD+BkKNSZP8C3+IMAKQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "bep53-range": "^1.1.0", + "thirty-two": "^1.0.2" + } + }, + "node_modules/media-typer": { + "version": "0.3.0", + "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", + "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/memory-pager": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/memory-pager/-/memory-pager-1.5.0.tgz", + "integrity": "sha512-ZS4Bp4r/Zoeq6+NLJpP+0Zzm0pR8whtGPf1XExKLJBAczGMnSi3It14OiNCStjQjM6NU1okjQGSxgEZN8eBYKg==", + "optional": true + }, + "node_modules/merge-descriptors": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", + "integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" + }, + "node_modules/methods": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", + "integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mimic-fn": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-1.2.0.tgz", + "integrity": "sha512-jf84uxzwiuiIVKiOLpfYk7N46TSy8ubTonmneY9vrpHNAnp0QBt2BxWV9dO3/j+BoVAb+a5G6YDPW3M5HOdMWQ==", + "engines": { + "node": ">=4" + } + }, + "node_modules/minimatch": { + "version": "3.1.2", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", + "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.6", + "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.6.tgz", + "integrity": "sha512-Jsjnk4bw3YJqYzbdyBiNsPWHPfO++UGG749Cxs6peCu5Xg4nrena6OVxOYxrQTqww0Jmwt+Ref8rggumkTLz9Q==" + }, + "node_modules/mkdirp": { + "version": "0.5.6", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.6.tgz", + "integrity": "sha512-FP+p8RB8OWpF3YZBCrP5gtADmtXApB5AMLn+vdyA+PyxCjrCs00mjyUozssO33cwDeT3wNGdLxJ5M//YqtHAJw==", + "dependencies": { + "minimist": "^1.2.6" + }, + "bin": { + "mkdirp": "bin/cmd.js" + } + }, + "node_modules/mkdirp-classic": { + "version": "0.5.3", + "resolved": "https://registry.npmjs.org/mkdirp-classic/-/mkdirp-classic-0.5.3.tgz", + "integrity": "sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==" + }, + "node_modules/moment": { + "version": "2.29.4", + "resolved": "https://registry.npmjs.org/moment/-/moment-2.29.4.tgz", + "integrity": "sha512-5LC9SOxjSc2HF6vO2CyuTDNivEdoz2IvyJJGj6X8DJ0eFyfszE0QiEd+iXmBvUP3WHxSjFH/vIsA0EN00cgr8w==", + "engines": { + "node": "*" + } + }, + "node_modules/moment-timezone": { + "version": "0.5.40", + "resolved": "https://registry.npmjs.org/moment-timezone/-/moment-timezone-0.5.40.tgz", + "integrity": "sha512-tWfmNkRYmBkPJz5mr9GVDn9vRlVZOTe6yqY92rFxiOdWXbjaR0+9LwQnZGGuNR63X456NqmEkbskte8tWL5ePg==", + "dependencies": { + "moment": ">= 2.9.0" + }, + "engines": { + "node": "*" + } + }, + "node_modules/mongodb": { + "version": "3.7.3", + "resolved": "https://registry.npmjs.org/mongodb/-/mongodb-3.7.3.tgz", + "integrity": "sha512-Psm+g3/wHXhjBEktkxXsFMZvd3nemI0r3IPsE0bU+4//PnvNWKkzhZcEsbPcYiWqe8XqXJJEg4Tgtr7Raw67Yw==", + "dependencies": { + "bl": "^2.2.1", + "bson": "^1.1.4", + "denque": "^1.4.1", + "optional-require": "^1.1.8", + "safe-buffer": "^5.1.2" + }, + "engines": { + "node": ">=4" + }, + "optionalDependencies": { + "saslprep": "^1.0.0" + }, + "peerDependenciesMeta": { + "aws4": { + "optional": true + }, + "bson-ext": { + "optional": true + }, + "kerberos": { + "optional": true + }, + "mongodb-client-encryption": { + "optional": true + }, + "mongodb-extjson": { + "optional": true + }, + "snappy": { + "optional": true + } + } + }, + "node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", + "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" + }, + "node_modules/mute-stream": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.7.tgz", + "integrity": "sha1-MHXOk7whuPq0PhvE2n6BFe0ee6s=" + }, + "node_modules/name-to-imdb": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/name-to-imdb/-/name-to-imdb-3.0.4.tgz", + "integrity": "sha512-OVmDvWoAZso2eHxK51UK7TMIpUpM4LnI3KhvvZe+JkDatEda9WS3/YXZVQnand5skI38shoniOFcyrw08QsNeA==", + "dependencies": { + "diacritics": "~1.3.0", + "named-queue": "^2.1.0", + "needle": "^1.1.2", + "node-fetch": "^2.2.0" + } + }, + "node_modules/name-to-imdb/node_modules/needle": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/needle/-/needle-1.6.0.tgz", + "integrity": "sha512-ogVK1D/Cgemw2vM1KJN6B83DwcKbDepdkMNtVJcXIe+xoaCOdC+aJHzhEov7xjsY9S7rBIuHP59W1fLsbGqDhA==", + "dependencies": { + "debug": "^2.1.2", + "iconv-lite": "^0.4.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 0.10.x" + } + }, + "node_modules/named-queue": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/named-queue/-/named-queue-2.2.1.tgz", + "integrity": "sha1-GBRURVNZnVqeQD0N+pN6TODR5qc=" + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/needle/node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/negotiator": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz", + "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/next-tick": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz", + "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=" + }, + "node_modules/node-fetch": { + "version": "2.6.7", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.6.7.tgz", + "integrity": "sha512-ZjMPFEfVx5j+y2yF35Kzx5sF7kDzxuDj6ziH4FFbOp87zKDZNx8yExJIb05OGF4Nlt9IHFIMBkRl41VdvcNdbQ==", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/node-schedule": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/node-schedule/-/node-schedule-2.1.1.tgz", + "integrity": "sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==", + "dependencies": { + "cron-parser": "^4.2.0", + "long-timeout": "0.1.1", + "sorted-array-functions": "^1.3.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/nodejs-bing": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/nodejs-bing/-/nodejs-bing-0.1.0.tgz", + "integrity": "sha512-q0QD8LB8e4GyHBfqPiyM+xWqCAu2zx3gDNN5VoPttE/nYgY9eFjCQRfe+KkG+ZAf60jBVb6BdEpeTEO/V6bTPg==", + "dependencies": { + "cheerio": "^0.22.0", + "request": "^2.79.0", + "request-promise": "^4.1.1", + "urlencode": "^1.1.0" + } + }, + "node_modules/nodejs-bing/node_modules/cheerio": { + "version": "0.22.0", + "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-0.22.0.tgz", + "integrity": "sha512-8/MzidM6G/TgRelkzDG13y3Y9LxBjCb+8yOEZ9+wwq5gVF2w2pV0wmHvjfT0RvuxGyR7UEuK36r+yYMbT4uKgA==", + "dependencies": { + "css-select": "~1.2.0", + "dom-serializer": "~0.1.0", + "entities": "~1.1.1", + "htmlparser2": "^3.9.1", + "lodash.assignin": "^4.0.9", + "lodash.bind": "^4.1.4", + "lodash.defaults": "^4.0.1", + "lodash.filter": "^4.4.0", + "lodash.flatten": "^4.2.0", + "lodash.foreach": "^4.3.0", + "lodash.map": "^4.4.0", + "lodash.merge": "^4.4.0", + "lodash.pick": "^4.2.1", + "lodash.reduce": "^4.4.0", + "lodash.reject": "^4.4.0", + "lodash.some": "^4.4.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/nodejs-bing/node_modules/css-select": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/css-select/-/css-select-1.2.0.tgz", + "integrity": "sha512-dUQOBoqdR7QwV90WysXPLXG5LO7nhYBgiWVfxF80DKPF8zx1t/pUd2FYy73emg3zrjtM6dzmYgbHKfV2rxiHQA==", + "dependencies": { + "boolbase": "~1.0.0", + "css-what": "2.1", + "domutils": "1.5.1", + "nth-check": "~1.0.1" + } + }, + "node_modules/nodejs-bing/node_modules/css-what": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/css-what/-/css-what-2.1.3.tgz", + "integrity": "sha512-a+EPoD+uZiNfh+5fxw2nO9QwFa6nJe2Or35fGY6Ipw1R3R4AGz1d1TEZrCegvw2YTmZ0jXirGYlzxxpYSHwpEg==", + "engines": { + "node": "*" + } + }, + "node_modules/nodejs-bing/node_modules/dom-serializer": { + "version": "0.1.1", + "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-0.1.1.tgz", + "integrity": "sha512-l0IU0pPzLWSHBcieZbpOKgkIn3ts3vAh7ZuFyXNwJxJXk/c4Gwj9xaTJwIDVQCXawWD0qb3IzMGH5rglQaO0XA==", + "dependencies": { + "domelementtype": "^1.3.0", + "entities": "^1.1.1" + } + }, + "node_modules/nodejs-bing/node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==" + }, + "node_modules/nodejs-bing/node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/nodejs-bing/node_modules/domutils": { + "version": "1.5.1", + "resolved": "https://registry.npmjs.org/domutils/-/domutils-1.5.1.tgz", + "integrity": "sha512-gSu5Oi/I+3wDENBsOWBiRK1eoGxcywYSqg3rR960/+EfY0CF4EX1VPkgHOZ3WiS/Jg2DtliF6BhWcHlfpYUcGw==", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/nodejs-bing/node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==" + }, + "node_modules/nodejs-bing/node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/nodejs-bing/node_modules/nth-check": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-1.0.2.tgz", + "integrity": "sha512-WeBOdju8SnzPN5vTUJYxYUxLeXpCaVP5i5e0LF8fg7WORF2Wd7wFX/pk0tYZk7s8T+J7VLy0Da6J1+wCT0AtHg==", + "dependencies": { + "boolbase": "~1.0.0" + } + }, + "node_modules/nodejs-bing/node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/nyaapi": { + "version": "2.4.4", + "resolved": "https://registry.npmjs.org/nyaapi/-/nyaapi-2.4.4.tgz", + "integrity": "sha512-GWdytUu/s2Ci647Kl+iWJYVNY2n9TOo4A6a/Gu1sFCHJy26zIzdRkSvW217uKY03XQEZhhJWyXqMoT0klywFXw==", + "dependencies": { + "axios": "^0.23.0", + "cheerio": "^1.0.0-rc.3", + "form-data": "^3.0.0", + "lodash.omit": "^4.5.0" + } + }, + "node_modules/nyaapi/node_modules/axios": { + "version": "0.23.0", + "resolved": "https://registry.npmjs.org/axios/-/axios-0.23.0.tgz", + "integrity": "sha512-NmvAE4i0YAv5cKq8zlDoPd1VLKAqX5oLuZKs8xkJa4qi6RGn0uhCYFjWtHHC9EM/MwOwYWOs53W+V0aqEXq1sg==", + "dependencies": { + "follow-redirects": "^1.14.4" + } + }, + "node_modules/nyaapi/node_modules/form-data": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-3.0.1.tgz", + "integrity": "sha512-RHkBKtLWUVwd7SqRIvCZMEvAMoGUp0XU+seQiZejj0COz3RI3hWP4sCv3gZWWLjJTd7rGwcsF5eKZGii0r/hbg==", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/oauth-sign": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/oauth-sign/-/oauth-sign-0.9.0.tgz", + "integrity": "sha512-fexhUFFPTGV8ybAtSIGbV6gOkSv8UtRbDBnAyLQw4QPKkgNlsH2ByPGtMUqdWkos6YCRmAqViwgZrJc/mRDzZQ==", + "engines": { + "node": "*" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.12.2", + "resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz", + "integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ==", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/offcloud-api": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/offcloud-api/-/offcloud-api-1.0.2.tgz", + "integrity": "sha512-KOxDX+QIUcI/JEwoXoRGK7P+RygSsmCOta/6bEtKeBMc9CDEnb9xgGNDjDFYCxm6U8rvaOhF9NA02i3EisH9Pw==", + "dependencies": { + "request": "^2.83.0" + } + }, + "node_modules/on-finished": { + "version": "2.4.1", + "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz", + "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==", + "dependencies": { + "ee-first": "1.1.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/once": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", + "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/onetime": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-2.0.1.tgz", + "integrity": "sha1-BnQoIw/WdEOyeUsiu6UotoZ5YtQ=", + "dependencies": { + "mimic-fn": "^1.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/opn": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/opn/-/opn-5.5.0.tgz", + "integrity": "sha512-PqHpggC9bLV0VeWcdKhkpxY+3JTzetLSqTCWL/z/tFIbI6G8JCjondXklT1JinczLz2Xib62sSp0T/gKT4KksA==", + "dependencies": { + "is-wsl": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/optional-require": { + "version": "1.1.8", + "resolved": "https://registry.npmjs.org/optional-require/-/optional-require-1.1.8.tgz", + "integrity": "sha512-jq83qaUb0wNg9Krv1c5OQ+58EK+vHde6aBPzLvPPqJm89UQWsvSuFy9X/OSNJnFeSOKo7btE0n8Nl2+nE+z5nA==", + "dependencies": { + "require-at": "^1.0.6" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/options": { + "version": "0.0.6", + "resolved": "https://registry.npmjs.org/options/-/options-0.0.6.tgz", + "integrity": "sha512-bOj3L1ypm++N+n7CEbbe473A414AB7z+amKYshRb//iuL3MpdDCLhPnw6aVTdKB9g5ZRVHIEp8eUln6L2NUStg==", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/ora": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz", + "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==", + "dependencies": { + "chalk": "^3.0.0", + "cli-cursor": "^3.1.0", + "cli-spinners": "^2.2.0", + "is-interactive": "^1.0.0", + "log-symbols": "^3.0.0", + "mute-stream": "0.0.8", + "strip-ansi": "^6.0.0", + "wcwidth": "^1.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/ansi-regex": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", + "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/ansi-styles": { + "version": "4.3.0", + "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", + "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", + "dependencies": { + "color-convert": "^2.0.1" + }, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/chalk/ansi-styles?sponsor=1" + } + }, + "node_modules/ora/node_modules/chalk": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz", + "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==", + "dependencies": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/cli-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz", + "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==", + "dependencies": { + "restore-cursor": "^3.1.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/color-convert": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", + "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", + "dependencies": { + "color-name": "~1.1.4" + }, + "engines": { + "node": ">=7.0.0" + } + }, + "node_modules/ora/node_modules/color-name": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", + "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==" + }, + "node_modules/ora/node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/mimic-fn": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", + "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", + "engines": { + "node": ">=6" + } + }, + "node_modules/ora/node_modules/mute-stream": { + "version": "0.0.8", + "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz", + "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==" + }, + "node_modules/ora/node_modules/onetime": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", + "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", + "dependencies": { + "mimic-fn": "^2.1.0" + }, + "engines": { + "node": ">=6" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/ora/node_modules/restore-cursor": { + "version": "3.1.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz", + "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==", + "dependencies": { + "onetime": "^5.1.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/strip-ansi": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", + "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", + "dependencies": { + "ansi-regex": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/ora/node_modules/supports-color": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", + "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/os-tmpdir": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz", + "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/packet-reader": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/packet-reader/-/packet-reader-1.0.0.tgz", + "integrity": "sha512-HAKu/fG3HpHFO0AA8WE8q2g+gBJaZ9MG7fcKk+IJPLTGAD6Psw4443l+9DGRbOIh3/aXr7Phy0TjilYivJo5XQ==" + }, + "node_modules/parse-torrent": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/parse-torrent/-/parse-torrent-4.1.0.tgz", + "integrity": "sha512-FeoGe8bOYmSzxO31kYy44A03FjuULCMOIMom8KyuGvO8/lLVPJyo2nr9CwH/iYmNHm74hk7h70o59DOfk9Rq+A==", + "dependencies": { + "magnet-uri": "^4.0.0", + "parse-torrent-file": "^2.0.0" + }, + "bin": { + "parse-torrent": "bin/cmd.js" + } + }, + "node_modules/parse-torrent-file": { + "version": "2.1.4", + "resolved": "https://registry.npmjs.org/parse-torrent-file/-/parse-torrent-file-2.1.4.tgz", + "integrity": "sha512-u2MgLOjZPDDer1oRg1c+H/+54iIQYY5TKgQ5G8KrGLT1Dcwdo7Lj+QfQR123+u8J0AMSFGbQUvsBlSB7uIJcCA==", + "deprecated": "Use the parse-torrent package instead", + "dependencies": { + "bencode": "^0.7.0", + "simple-sha1": "^2.0.0" + }, + "bin": { + "parse-torrent-file": "bin/cmd.js" + } + }, + "node_modules/parse-torrent-title": { + "version": "1.3.0", + "resolved": "git+ssh://git@github.com/TheBeastLT/parse-torrent-title.git#022408972c2a040f846331a912a6a8487746a654", + "integrity": "sha512-Ja7OfUtTb5UKvcjHLh/va3LGZdE/CiJP6it8lxPWf/N9+4aq1hQGwXw1dnJss5dIINQo4ufyDnT2mOIP+ii/pA==", + "license": "MIT", + "dependencies": { + "moment": "^2.24.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/parse-torrent/node_modules/magnet-uri": { + "version": "4.2.3", + "resolved": "https://registry.npmjs.org/magnet-uri/-/magnet-uri-4.2.3.tgz", + "integrity": "sha512-aHhR49CRBOq3BX6jQOBdGMXhNT2+9LIH3CCIwHlR+aFE8nWMfBD1aNYxfm2u2LsCOwvfPeyCsdIg9KXSwdsOLQ==", + "dependencies": { + "flatten": "0.0.1", + "thirty-two": "^0.0.2", + "xtend": "^4.0.0" + } + }, + "node_modules/parse-torrent/node_modules/thirty-two": { + "version": "0.0.2", + "resolved": "https://registry.npmjs.org/thirty-two/-/thirty-two-0.0.2.tgz", + "integrity": "sha512-0j1A9eqbP8dSEtkqqEJGpYFN2lPgQR1d0qKS2KNAmIxkK6gV37D5hRa5b/mYzVL1fyAVWBkeUDIXybZdCLVBzA==", + "engines": { + "node": ">=0.2.6" + } + }, + "node_modules/parse5": { + "version": "7.1.2", + "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", + "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", + "dependencies": { + "entities": "^4.4.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parse5-htmlparser2-tree-adapter": { + "version": "7.0.0", + "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", + "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", + "dependencies": { + "domhandler": "^5.0.2", + "parse5": "^7.0.0" + }, + "funding": { + "url": "https://github.com/inikulin/parse5?sponsor=1" + } + }, + "node_modules/parseurl": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/parseurl/-/parseurl-1.3.3.tgz", + "integrity": "sha512-CiyeOxFT/JZyN5m0z9PfXw4SCBJ6Sygz1Dpl0wqjlhDEGGBP1GnsUVEL0p63hoG1fcj3fHynXi9NYO4nWOL+qQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/path-is-absolute": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", + "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-to-regexp": { + "version": "0.1.7", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", + "integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" + }, + "node_modules/peer-wire-protocol": { + "version": "0.7.1", + "resolved": "https://registry.npmjs.org/peer-wire-protocol/-/peer-wire-protocol-0.7.1.tgz", + "integrity": "sha512-V9oTa/ZcfNNz9fAST28Gg0fXbPeFPk3SBImsYO8GDDG5D0E195vxXmjZ+SPrzr4BJyMQmdDmwUfTf9MZ62z4mw==", + "dependencies": { + "bitfield": "^0.1.0", + "bncode": "^0.2.3", + "buffer-alloc": "^1.1.0", + "buffer-from": "^1.0.0", + "readable-stream": "^1.0.2", + "speedometer": "^0.1.2" + } + }, + "node_modules/peer-wire-protocol/node_modules/bncode": { + "version": "0.2.3", + "resolved": "https://registry.npmjs.org/bncode/-/bncode-0.2.3.tgz", + "integrity": "sha512-IXGfySD68R/J2X/it8GZqAM+Vb3ByZvAlUi0Gysq4ZACq6hXGQ3YshKo0QS/f3S9wOWKjJnEjP6x3ELxqBnAOA==" + }, + "node_modules/peer-wire-protocol/node_modules/isarray": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/isarray/-/isarray-0.0.1.tgz", + "integrity": "sha512-D2S+3GLxWH+uhrNEcoh/fnmYeP8E8/zHl644d/jdA0g2uyXvy3sb0qxotE+ne0LtccHknQzWwZEzhak7oJ0COQ==" + }, + "node_modules/peer-wire-protocol/node_modules/readable-stream": { + "version": "1.1.14", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", + "integrity": "sha512-+MeVjFf4L44XUkhM1eYbD8fyEsxcV81pqMSR5gblfcLCHfZvbrqy4/qYHE+/R5HoBUT11WV5O08Cr1n3YXkWVQ==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.1", + "isarray": "0.0.1", + "string_decoder": "~0.10.x" + } + }, + "node_modules/peer-wire-protocol/node_modules/string_decoder": { + "version": "0.10.31", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", + "integrity": "sha512-ev2QzSzWPYmy9GuqfIVildA4OdcGLeFZQrq5ys6RtiuF+RQQiZWr8TZNyAcuVXyQRYfEO+MsoB/1BuQVhOJuoQ==" + }, + "node_modules/peer-wire-swarm": { + "version": "0.12.2", + "resolved": "https://registry.npmjs.org/peer-wire-swarm/-/peer-wire-swarm-0.12.2.tgz", + "integrity": "sha512-sIWZ1nTL9l6mI9J18kW1AeByBwagvNzGJlMmQA9pM+otKQtTIwnigK8SR0nEFrNZYqZelI6RQ6g4udvtQ2TI1g==", + "dependencies": { + "buffer-from": "^1.0.0", + "fifo": "^0.1.4", + "once": "^1.1.1", + "peer-wire-protocol": "^0.7.0", + "speedometer": "^0.1.2", + "utp": "0.0.7" + } + }, + "node_modules/performance-now": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/performance-now/-/performance-now-2.1.0.tgz", + "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=" + }, + "node_modules/pg": { + "version": "8.11.3", + "resolved": "https://registry.npmjs.org/pg/-/pg-8.11.3.tgz", + "integrity": "sha512-+9iuvG8QfaaUrrph+kpF24cXkH1YOOUeArRNYIxq1viYHZagBxrTno7cecY1Fa44tJeZvaoG+Djpkc3JwehN5g==", + "dependencies": { + "buffer-writer": "2.0.0", + "packet-reader": "1.0.0", + "pg-connection-string": "^2.6.2", + "pg-pool": "^3.6.1", + "pg-protocol": "^1.6.0", + "pg-types": "^2.1.0", + "pgpass": "1.x" + }, + "engines": { + "node": ">= 8.0.0" + }, + "optionalDependencies": { + "pg-cloudflare": "^1.1.1" + }, + "peerDependencies": { + "pg-native": ">=3.0.1" + }, + "peerDependenciesMeta": { + "pg-native": { + "optional": true + } + } + }, + "node_modules/pg-cloudflare": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/pg-cloudflare/-/pg-cloudflare-1.1.1.tgz", + "integrity": "sha512-xWPagP/4B6BgFO+EKz3JONXv3YDgvkbVrGw2mTo3D6tVDQRh1e7cqVGvyR3BE+eQgAvx1XhW/iEASj4/jCWl3Q==", + "optional": true + }, + "node_modules/pg-connection-string": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/pg-connection-string/-/pg-connection-string-2.6.2.tgz", + "integrity": "sha512-ch6OwaeaPYcova4kKZ15sbJ2hKb/VP48ZD2gE7i1J+L4MspCtBMAx8nMgz7bksc7IojCIIWuEhHibSMFH8m8oA==" + }, + "node_modules/pg-hstore": { + "version": "2.3.4", + "resolved": "https://registry.npmjs.org/pg-hstore/-/pg-hstore-2.3.4.tgz", + "integrity": "sha512-N3SGs/Rf+xA1M2/n0JBiXFDVMzdekwLZLAO0g7mpDY9ouX+fDI7jS6kTq3JujmYbtNSJ53TJ0q4G98KVZSM4EA==", + "dependencies": { + "underscore": "^1.13.1" + }, + "engines": { + "node": ">= 0.8.x" + } + }, + "node_modules/pg-int8": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/pg-int8/-/pg-int8-1.0.1.tgz", + "integrity": "sha512-WCtabS6t3c8SkpDBUlb1kjOs7l66xsGdKpIPZsg4wR+B3+u9UAum2odSsF9tnvxg80h4ZxLWMy4pRjOsFIqQpw==", + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/pg-pool": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/pg-pool/-/pg-pool-3.6.1.tgz", + "integrity": "sha512-jizsIzhkIitxCGfPRzJn1ZdcosIt3pz9Sh3V01fm1vZnbnCMgmGl5wvGGdNN2EL9Rmb0EcFoCkixH4Pu+sP9Og==", + "peerDependencies": { + "pg": ">=8.0" + } + }, + "node_modules/pg-protocol": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/pg-protocol/-/pg-protocol-1.6.0.tgz", + "integrity": "sha512-M+PDm637OY5WM307051+bsDia5Xej6d9IR4GwJse1qA1DIhiKlksvrneZOYQq42OM+spubpcNYEo2FcKQrDk+Q==" + }, + "node_modules/pg-types": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/pg-types/-/pg-types-2.2.0.tgz", + "integrity": "sha512-qTAAlrEsl8s4OiEQY69wDvcMIdQN6wdz5ojQiOy6YRMuynxenON0O5oCpJI6lshc6scgAY8qvJ2On/p+CXY0GA==", + "dependencies": { + "pg-int8": "1.0.1", + "postgres-array": "~2.0.0", + "postgres-bytea": "~1.0.0", + "postgres-date": "~1.0.4", + "postgres-interval": "^1.1.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/pgpass": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/pgpass/-/pgpass-1.0.4.tgz", + "integrity": "sha512-YmuA56alyBq7M59vxVBfPJrGSozru8QAdoNlWuW3cz8l+UX3cWge0vTvjKhsSHSJpo3Bom8/Mm6hf0TR5GY0+w==", + "dependencies": { + "split2": "^3.1.1" + } + }, + "node_modules/postgres-array": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/postgres-array/-/postgres-array-2.0.0.tgz", + "integrity": "sha512-VpZrUqU5A69eQyW2c5CA1jtLecCsN2U/bD6VilrFDWq5+5UIEVO7nazS3TEcHf1zuPYO/sqGvUvW62g86RXZuA==", + "engines": { + "node": ">=4" + } + }, + "node_modules/postgres-bytea": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/postgres-bytea/-/postgres-bytea-1.0.0.tgz", + "integrity": "sha1-AntTPAqokOJtFy1Hz5zOzFIazTU=", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postgres-date": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/postgres-date/-/postgres-date-1.0.7.tgz", + "integrity": "sha512-suDmjLVQg78nMK2UZ454hAG+OAW+HQPZ6n++TNDUX+L0+uUlLywnoxJKDou51Zm+zTCjrCl0Nq6J9C5hP9vK/Q==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/postgres-interval": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/postgres-interval/-/postgres-interval-1.2.0.tgz", + "integrity": "sha512-9ZhXKM/rw350N1ovuWHbGxnGh/SNJ4cnxHiM0rxE4VN41wsg8P8zWn9hv/buK00RP4WvlOyr/RBDiptyxVbkZQ==", + "dependencies": { + "xtend": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/premiumize-api": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/premiumize-api/-/premiumize-api-1.0.3.tgz", + "integrity": "sha512-WwJhgmwrKrFFtfjU2EMAaYv602xbe52oaGEwVJXO3z0LZQZ8Cogk9MBADcT0hrFf8MuI7zn5cPMxcJRJPr9cMQ==", + "dependencies": { + "request": "^2.83.0" + } + }, + "node_modules/process-nextick-args": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz", + "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==" + }, + "node_modules/prom-client": { + "version": "12.0.0", + "resolved": "https://registry.npmjs.org/prom-client/-/prom-client-12.0.0.tgz", + "integrity": "sha512-JbzzHnw0VDwCvoqf8y1WDtq4wSBAbthMB1pcVI/0lzdqHGJI3KBJDXle70XK+c7Iv93Gihqo0a5LlOn+g8+DrQ==", + "dependencies": { + "tdigest": "^0.1.1" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/proxy-addr": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz", + "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==", + "dependencies": { + "forwarded": "0.2.0", + "ipaddr.js": "1.9.1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/proxy-from-env": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/proxy-from-env/-/proxy-from-env-1.1.0.tgz", + "integrity": "sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==" + }, + "node_modules/pseudomap": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/pseudomap/-/pseudomap-1.0.2.tgz", + "integrity": "sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==" + }, + "node_modules/psl": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/psl/-/psl-1.8.0.tgz", + "integrity": "sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==" + }, + "node_modules/punycode": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.1.1.tgz", + "integrity": "sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==", + "engines": { + "node": ">=6" + } + }, + "node_modules/qs": { + "version": "6.11.0", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz", + "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/queue-tick": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/queue-tick/-/queue-tick-1.0.1.tgz", + "integrity": "sha512-kJt5qhMxoszgU/62PLP1CJytzd2NKetjSRnyuj31fDd3Rlcz3fzlFdFLD1SItunPwyqEOkca6GbV612BWfaBag==" + }, + "node_modules/random-access-file": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/random-access-file/-/random-access-file-2.2.1.tgz", + "integrity": "sha512-RGU0xmDqdOyEiynob1KYSeh8+9c9Td1MJ74GT1viMEYAn8SJ9oBtWCXLsYZukCF46yududHOdM449uRYbzBrZQ==", + "dependencies": { + "mkdirp-classic": "^0.5.2", + "random-access-storage": "^1.1.1" + } + }, + "node_modules/random-access-storage": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/random-access-storage/-/random-access-storage-1.4.3.tgz", + "integrity": "sha512-D5e2iIC5dNENWyBxsjhEnNOMCwZZ64TARK6dyMN+3g4OTC4MJxyjh9hKLjTGoNhDOPrgjI+YlFEHFnrp/cSnzQ==", + "dependencies": { + "events": "^3.3.0", + "inherits": "^2.0.3", + "queue-tick": "^1.0.0" + } + }, + "node_modules/random-iterate": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/random-iterate/-/random-iterate-1.0.1.tgz", + "integrity": "sha512-Jdsdnezu913Ot8qgKgSgs63XkAjEsnMcS1z+cC6D6TNXsUXsMxy0RpclF2pzGZTEiTXL9BiArdGTEexcv4nqcA==" + }, + "node_modules/randombytes": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/randombytes/-/randombytes-2.1.0.tgz", + "integrity": "sha512-vYl3iOX+4CKUWuxGi9Ukhie6fsqXqS9FE2Zaic4tNFD2N2QQaXOMFbuKK4QmDHC0JO6B1Zp41J0LpT0oR68amQ==", + "dependencies": { + "safe-buffer": "^5.1.0" + } + }, + "node_modules/range-parser": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", + "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/raw-body": { + "version": "2.5.1", + "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz", + "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==", + "dependencies": { + "bytes": "3.1.2", + "http-errors": "2.0.0", + "iconv-lite": "0.4.24", + "unpipe": "1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/re-emitter": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/re-emitter/-/re-emitter-1.1.4.tgz", + "integrity": "sha512-C0SIXdXDSus2yqqvV7qifnb4NoWP7mEBXJq3axci301mXHCZb8Djwm4hrEZo4UeXRaEnfjH98uQ8EBppk2oNWA==" + }, + "node_modules/readable-stream": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.8.tgz", + "integrity": "sha512-8p0AUk4XODgIewSi0l8Epjs+EVnWiK7NoDIEGU0HhE7+ZyY8D1IMY7odu5lRrFXGg71L15KG8QrPmum45RTtdA==", + "dependencies": { + "core-util-is": "~1.0.0", + "inherits": "~2.0.3", + "isarray": "~1.0.0", + "process-nextick-args": "~2.0.0", + "safe-buffer": "~5.1.1", + "string_decoder": "~1.1.1", + "util-deprecate": "~1.0.1" + } + }, + "node_modules/readable-stream/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/real-debrid-api": { + "version": "1.0.1", + "resolved": "git+ssh://git@github.com/TheBeastLT/node-real-debrid.git#d1f7eaa8593b947edbfbc8a92a176448b48ef445", + "integrity": "sha512-P4eoA7/wvDM6/l06OZYX4CBnIzsTNwebdS6fZ4u6LZ3fcJqTzWz3D63xBDZmfcOca/OeUN4ncFld+KxvrNr0oA==", + "license": "MIT", + "dependencies": { + "request": "^2.83.0" + } + }, + "node_modules/request": { + "version": "2.88.2", + "resolved": "https://registry.npmjs.org/request/-/request-2.88.2.tgz", + "integrity": "sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==", + "deprecated": "request has been deprecated, see https://github.com/request/request/issues/3142", + "dependencies": { + "aws-sign2": "~0.7.0", + "aws4": "^1.8.0", + "caseless": "~0.12.0", + "combined-stream": "~1.0.6", + "extend": "~3.0.2", + "forever-agent": "~0.6.1", + "form-data": "~2.3.2", + "har-validator": "~5.1.3", + "http-signature": "~1.2.0", + "is-typedarray": "~1.0.0", + "isstream": "~0.1.2", + "json-stringify-safe": "~5.0.1", + "mime-types": "~2.1.19", + "oauth-sign": "~0.9.0", + "performance-now": "^2.1.0", + "qs": "~6.5.2", + "safe-buffer": "^5.1.2", + "tough-cookie": "~2.5.0", + "tunnel-agent": "^0.6.0", + "uuid": "^3.3.2" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/request-ip": { + "version": "3.3.0", + "resolved": "https://registry.npmjs.org/request-ip/-/request-ip-3.3.0.tgz", + "integrity": "sha512-cA6Xh6e0fDBBBwH77SLJaJPBmD3nWVAcF9/XAcsrIHdjhFzFiB5aNQFytdjCGPezU3ROwrR11IddKAM08vohxA==" + }, + "node_modules/request-promise": { + "version": "4.2.6", + "resolved": "https://registry.npmjs.org/request-promise/-/request-promise-4.2.6.tgz", + "integrity": "sha512-HCHI3DJJUakkOr8fNoCc73E5nU5bqITjOYFMDrKHYOXWXrgD/SBaC7LjwuPymUprRyuF06UK7hd/lMHkmUXglQ==", + "deprecated": "request-promise has been deprecated because it extends the now deprecated request package, see https://github.com/request/request/issues/3142", + "dependencies": { + "bluebird": "^3.5.0", + "request-promise-core": "1.1.4", + "stealthy-require": "^1.1.1", + "tough-cookie": "^2.3.3" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "request": "^2.34" + } + }, + "node_modules/request-promise-core": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/request-promise-core/-/request-promise-core-1.1.4.tgz", + "integrity": "sha512-TTbAfBBRdWD7aNNOoVOBH4pN/KigV6LyapYNNlAPA8JwbovRti1E88m3sYAwsLi5ryhPKsE9APwnjFTgdUjTpw==", + "dependencies": { + "lodash": "^4.17.19" + }, + "engines": { + "node": ">=0.10.0" + }, + "peerDependencies": { + "request": "^2.34" + } + }, + "node_modules/request/node_modules/qs": { + "version": "6.5.3", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.5.3.tgz", + "integrity": "sha512-qxXIEh4pCGfHICj1mAJQ2/2XVZkjCDTcEgfoSQxc/fYivUZxTkk7L3bDBJSoNrEzXI17oUO5Dp07ktqE5KzczA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/require-at": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/require-at/-/require-at-1.0.6.tgz", + "integrity": "sha512-7i1auJbMUrXEAZCOQ0VNJgmcT2VOKPRl2YGJwgpHpC9CE91Mv4/4UYIUm4chGJaI381ZDq1JUicFii64Hapd8g==", + "engines": { + "node": ">=4" + } + }, + "node_modules/restore-cursor": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-2.0.0.tgz", + "integrity": "sha1-n37ih/gv0ybU/RYpI9YhKe7g368=", + "dependencies": { + "onetime": "^2.0.0", + "signal-exit": "^3.0.2" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/retry-as-promised": { + "version": "7.0.4", + "resolved": "https://registry.npmjs.org/retry-as-promised/-/retry-as-promised-7.0.4.tgz", + "integrity": "sha512-XgmCoxKWkDofwH8WddD0w85ZfqYz+ZHlr5yo+3YUCfycWawU56T5ckWXsScsj5B8tqUcIG67DxXByo3VUgiAdA==" + }, + "node_modules/router": { + "version": "1.3.8", + "resolved": "https://registry.npmjs.org/router/-/router-1.3.8.tgz", + "integrity": "sha512-461UFH44NtSfIlS83PUg2N7OZo86BC/kB3dY77gJdsODsBhhw7+2uE0tzTINxrY9CahCUVk1VhpWCA5i1yoIEg==", + "dependencies": { + "array-flatten": "3.0.0", + "debug": "2.6.9", + "methods": "~1.1.2", + "parseurl": "~1.3.3", + "path-to-regexp": "0.1.7", + "setprototypeof": "1.2.0", + "utils-merge": "1.0.1" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/router/node_modules/array-flatten": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-3.0.0.tgz", + "integrity": "sha512-zPMVc3ZYlGLNk4mpK1NzP2wg0ml9t7fUgDsayR5Y5rSzxQilzR9FGu/EH2jQOcKSAeAfWeylyW8juy3OkWRvNA==" + }, + "node_modules/run-async": { + "version": "2.4.0", + "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.0.tgz", + "integrity": "sha512-xJTbh/d7Lm7SBhc1tNvTpeCHaEzoyxPrqNlvSdMfBTYwaY++UJFyXUOxAtsRUXjlqOfj8luNaR9vjCh4KeV+pg==", + "dependencies": { + "is-promise": "^2.1.0" + }, + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/run-series": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/run-series/-/run-series-1.1.9.tgz", + "integrity": "sha512-Arc4hUN896vjkqCYrUXquBFtRZdv1PfLbTYP71efP6butxyQ0kWpiNJyAgsxscmQg1cqvHY32/UCBzXedTpU2g==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/rusha": { + "version": "0.8.14", + "resolved": "https://registry.npmjs.org/rusha/-/rusha-0.8.14.tgz", + "integrity": "sha512-cLgakCUf6PedEu15t8kbsjnwIFFR2D4RfL+W3iWFJ4iac7z4B0ZI8fxy4R3J956kAI68HclCFGL8MPoUVC3qVA==" + }, + "node_modules/rxjs": { + "version": "6.5.4", + "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.5.4.tgz", + "integrity": "sha512-naMQXcgEo3csAEGvw/NydRA0fuS2nDZJiw1YUWFKU7aPPAPGZEsD4Iimit96qwCieH6y614MCLYwdkrWx7z/7Q==", + "dependencies": { + "tslib": "^1.9.0" + }, + "engines": { + "npm": ">=2.0.0" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==" + }, + "node_modules/saslprep": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/saslprep/-/saslprep-1.0.3.tgz", + "integrity": "sha512-/MY/PEMbk2SuY5sScONwhUDsV2p77Znkb/q3nSVstq/yQzYJOH/Azh29p9oJLsl3LnQwSvZDKagDGBsBwSooag==", + "optional": true, + "dependencies": { + "sparse-bitfield": "^3.0.3" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/sax": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.3.0.tgz", + "integrity": "sha512-0s+oAmw9zLl1V1cS9BtZN7JAd0cW5e0QH4W3LWEK6a4LaLEA2OTpGYWDY+6XasBLtz6wkm3u1xRw95mRuJ59WA==" + }, + "node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/send": { + "version": "0.18.0", + "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz", + "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==", + "dependencies": { + "debug": "2.6.9", + "depd": "2.0.0", + "destroy": "1.2.0", + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "etag": "~1.8.1", + "fresh": "0.5.2", + "http-errors": "2.0.0", + "mime": "1.6.0", + "ms": "2.1.3", + "on-finished": "2.4.1", + "range-parser": "~1.2.1", + "statuses": "2.0.1" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/send/node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==" + }, + "node_modules/sequelize": { + "version": "6.31.1", + "resolved": "https://registry.npmjs.org/sequelize/-/sequelize-6.31.1.tgz", + "integrity": "sha512-cahWtRrYLjqoZP/aurGBoaxn29qQCF4bxkAUPEQ/ozjJjt6mtL4Q113S3N39mQRmX5fgxRbli+bzZARP/N51eg==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/sequelize" + } + ], + "dependencies": { + "@types/debug": "^4.1.7", + "@types/validator": "^13.7.1", + "debug": "^4.3.3", + "dottie": "^2.0.2", + "inflection": "^1.13.2", + "lodash": "^4.17.21", + "moment": "^2.29.1", + "moment-timezone": "^0.5.35", + "pg-connection-string": "^2.5.0", + "retry-as-promised": "^7.0.3", + "semver": "^7.3.5", + "sequelize-pool": "^7.1.0", + "toposort-class": "^1.0.1", + "uuid": "^8.3.2", + "validator": "^13.7.0", + "wkx": "^0.5.0" + }, + "engines": { + "node": ">=10.0.0" + }, + "peerDependenciesMeta": { + "ibm_db": { + "optional": true + }, + "mariadb": { + "optional": true + }, + "mysql2": { + "optional": true + }, + "oracledb": { + "optional": true + }, + "pg": { + "optional": true + }, + "pg-hstore": { + "optional": true + }, + "snowflake-sdk": { + "optional": true + }, + "sqlite3": { + "optional": true + }, + "tedious": { + "optional": true + } + } + }, + "node_modules/sequelize-pool": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/sequelize-pool/-/sequelize-pool-7.1.0.tgz", + "integrity": "sha512-G9c0qlIWQSK29pR/5U2JF5dDQeqqHRragoyahj/Nx4KOOQ3CPPfzxnfqFPCSB7x5UgjOgnZ61nSxz+fjDpRlJg==", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/sequelize/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/sequelize/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/sequelize/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/sequelize/node_modules/uuid": { + "version": "8.3.2", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-8.3.2.tgz", + "integrity": "sha512-+NYs2QeMWy+GWFOEm9xnn6HCDp0l7QBD7ml8zLUmJ+93Q5NF0NocErnwkTkXVFNiX3/fpC6afS8Dhb/gz7R7eg==", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/serve-static": { + "version": "1.15.0", + "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz", + "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==", + "dependencies": { + "encodeurl": "~1.0.2", + "escape-html": "~1.0.3", + "parseurl": "~1.3.3", + "send": "0.18.0" + }, + "engines": { + "node": ">= 0.8.0" + } + }, + "node_modules/setprototypeof": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz", + "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw==" + }, + "node_modules/side-channel": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz", + "integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==", + "dependencies": { + "call-bind": "^1.0.0", + "get-intrinsic": "^1.0.2", + "object-inspect": "^1.9.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/signal-exit": { + "version": "3.0.7", + "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", + "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==" + }, + "node_modules/simple-concat": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/simple-concat/-/simple-concat-1.0.1.tgz", + "integrity": "sha512-cSFtAPtRhljv69IK0hTVZQ+OfE9nePi/rtJmw5UjHeVyVroEqJXP1sFztKUy1qU+xvz3u/sfYJLa947b7nAN2Q==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ] + }, + "node_modules/simple-peer": { + "version": "6.4.4", + "resolved": "https://registry.npmjs.org/simple-peer/-/simple-peer-6.4.4.tgz", + "integrity": "sha512-sY35UHankz0ba02Dd8YzdyXhEeTAnW6ZUyDfKOSwUht1GLp9VuMT4jQUXF/wG7C9vpwvitV7Ig7a6IkY/qizwg==", + "dependencies": { + "debug": "^2.1.0", + "get-browser-rtc": "^1.0.0", + "inherits": "^2.0.1", + "randombytes": "^2.0.3", + "readable-stream": "^2.0.5" + } + }, + "node_modules/simple-sha1": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/simple-sha1/-/simple-sha1-2.1.2.tgz", + "integrity": "sha512-TQl9rm4rdKAVmhO++sXAb8TNN0D6JAD5iyI1mqEPNpxUzTRrtm4aOG1pDf/5W/qCFihiaoK6uuL9rvQz1x1VKw==", + "dependencies": { + "rusha": "^0.8.1" + } + }, + "node_modules/simple-websocket": { + "version": "4.3.1", + "resolved": "https://registry.npmjs.org/simple-websocket/-/simple-websocket-4.3.1.tgz", + "integrity": "sha512-knEO6ub2Pw00c7ueOV6snKE1hr7jIdY068+239v0I8DVKofyd7IQmYHXrM9pZL1zuI0H7sd+Y5kedndBi5GXIA==", + "dependencies": { + "debug": "^2.1.3", + "inherits": "^2.0.1", + "randombytes": "^2.0.3", + "readable-stream": "^2.0.5", + "ws": "^2.0.0", + "xtend": "^4.0.1" + } + }, + "node_modules/simple-websocket/node_modules/safe-buffer": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.0.1.tgz", + "integrity": "sha512-cr7dZWLwOeaFBLTIuZeYdkfO7UzGIKhjYENJFAxUOMKWGaWDm2nJM2rzxNRm5Owu0DH3ApwNo6kx5idXZfb/Iw==" + }, + "node_modules/simple-websocket/node_modules/ultron": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.1.1.tgz", + "integrity": "sha512-UIEXBNeYmKptWH6z8ZnqTeS8fV74zG0/eRU9VGkpzz+LIJNs8W/zM/L+7ctCkRrgbNnnR0xxw4bKOr0cW0N0Og==" + }, + "node_modules/simple-websocket/node_modules/ws": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/ws/-/ws-2.3.1.tgz", + "integrity": "sha512-61a+9LgtYZxTq1hAonhX8Xwpo2riK4IOR/BIVxioFbCfc3QFKmpE4x9dLExfLHKtUfVZigYa36tThVhO57erEw==", + "dependencies": { + "safe-buffer": "~5.0.1", + "ultron": "~1.1.0" + } + }, + "node_modules/sorted-array-functions": { + "version": "1.3.0", + "resolved": "https://registry.npmjs.org/sorted-array-functions/-/sorted-array-functions-1.3.0.tgz", + "integrity": "sha512-2sqgzeFlid6N4Z2fUQ1cvFmTOLRi/sEDzSQ0OKYchqgoPmQBVyM3959qYx3fpS6Esef80KjmpgPeEr028dP3OA==" + }, + "node_modules/sparse-bitfield": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/sparse-bitfield/-/sparse-bitfield-3.0.3.tgz", + "integrity": "sha1-/0rm5oZWBWuks+eSqzM004JzyhE=", + "optional": true, + "dependencies": { + "memory-pager": "^1.0.2" + } + }, + "node_modules/speedometer": { + "version": "0.1.4", + "resolved": "https://registry.npmjs.org/speedometer/-/speedometer-0.1.4.tgz", + "integrity": "sha512-phdEoDlA6EUIVtzwq1UiNMXDUogczp204aYF/yfOhjNePWFfIpBJ1k5wLMuXQhEOOMjuTJEcc4vdZa+vuP+n/Q==" + }, + "node_modules/split2": { + "version": "3.2.2", + "resolved": "https://registry.npmjs.org/split2/-/split2-3.2.2.tgz", + "integrity": "sha512-9NThjpgZnifTkJpzTZ7Eue85S49QwpNhZTq6GRJwObb6jnLFNGB7Qm73V5HewTROPyxD0C29xqmaI68bQtV+hg==", + "dependencies": { + "readable-stream": "^3.0.0" + } + }, + "node_modules/split2/node_modules/readable-stream": { + "version": "3.6.0", + "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.0.tgz", + "integrity": "sha512-BViHy7LKeTz4oNnkcLJ+lVSL6vpiFeX6/d3oSH8zCW7UxP2onchk+vTGB143xuFjHS3deTgkKoXXymXqymiIdA==", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/sshpk": { + "version": "1.16.1", + "resolved": "https://registry.npmjs.org/sshpk/-/sshpk-1.16.1.tgz", + "integrity": "sha512-HXXqVUq7+pcKeLqqZj6mHFUMvXtOJt1uoUx09pFW6011inTMxqI8BA8PM95myrIyyKwdnzjdFjLiE6KBPVtJIg==", + "dependencies": { + "asn1": "~0.2.3", + "assert-plus": "^1.0.0", + "bcrypt-pbkdf": "^1.0.0", + "dashdash": "^1.12.0", + "ecc-jsbn": "~0.1.1", + "getpass": "^0.1.1", + "jsbn": "~0.1.0", + "safer-buffer": "^2.0.2", + "tweetnacl": "~0.14.0" + }, + "bin": { + "sshpk-conv": "bin/sshpk-conv", + "sshpk-sign": "bin/sshpk-sign", + "sshpk-verify": "bin/sshpk-verify" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/statuses": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz", + "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/stealthy-require": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/stealthy-require/-/stealthy-require-1.1.1.tgz", + "integrity": "sha512-ZnWpYnYugiOVEY5GkcuJK1io5V8QmNYChG62gSit9pQVGErXtrKuPC55ITaVSukmMta5qpMU7vqLt2Lnni4f/g==", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/stremio-addon-linter": { + "version": "1.7.0", + "resolved": "https://registry.npmjs.org/stremio-addon-linter/-/stremio-addon-linter-1.7.0.tgz", + "integrity": "sha512-ck1L1Wp2qvAhvXLj+4Lq1XRn8K3r2gx1i/f+e1W6K0+Et/oIYYDmaIVoh3SvExiNbCBcbJjH9WWEeDYKoqaMqQ==", + "dependencies": { + "semver": "^5.5.0" + } + }, + "node_modules/stremio-addon-sdk": { + "version": "1.6.10", + "resolved": "https://registry.npmjs.org/stremio-addon-sdk/-/stremio-addon-sdk-1.6.10.tgz", + "integrity": "sha512-+U/lDGv73JPZa7OOy8eMb+SkUFhnHuZGBRXuKNeXcz706oDdwC/sQe9r8Wxw2A7Cw05+f/CQIJSl4zIcmKBkGg==", + "dependencies": { + "chalk": "^2.4.2", + "cors": "^2.8.4", + "express": "^4.16.3", + "inquirer": "^6.2.2", + "mkdirp": "^0.5.1", + "node-fetch": "^2.3.0", + "opn": "^5.4.0", + "router": "^1.3.3", + "stremio-addon-linter": "^1.7.0" + }, + "bin": { + "addon-bootstrap": "cli/bootstrap.js" + } + }, + "node_modules/string_decoder": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz", + "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==", + "dependencies": { + "safe-buffer": "~5.1.0" + } + }, + "node_modules/string_decoder/node_modules/safe-buffer": { + "version": "5.1.2", + "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", + "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" + }, + "node_modules/string-width": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz", + "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==", + "dependencies": { + "is-fullwidth-code-point": "^2.0.0", + "strip-ansi": "^4.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string-width/node_modules/strip-ansi": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz", + "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=", + "dependencies": { + "ansi-regex": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/string2compact": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/string2compact/-/string2compact-1.3.2.tgz", + "integrity": "sha512-3XUxUgwhj7Eqh2djae35QHZZT4mN3fsO7kagZhSGmhhlrQagVvWSFuuFIWnpxFS0CdTB2PlQcaL16RDi14I8uw==", + "dependencies": { + "addr-to-ip-port": "^1.0.1", + "ipaddr.js": "^2.0.0" + } + }, + "node_modules/string2compact/node_modules/ipaddr.js": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/ipaddr.js/-/ipaddr.js-2.1.0.tgz", + "integrity": "sha512-LlbxQ7xKzfBusov6UMi4MFpEg0m+mAm9xyNGEduwXMEDuf4WfzB/RZwMVYEd7IKGvh4IUkEXYxtAVu9T3OelJQ==", + "engines": { + "node": ">= 10" + } + }, + "node_modules/strip-ansi": { + "version": "5.2.0", + "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", + "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", + "dependencies": { + "ansi-regex": "^4.1.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/strip-ansi/node_modules/ansi-regex": { + "version": "4.1.1", + "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.1.tgz", + "integrity": "sha512-ILlv4k/3f6vfQ4OoP2AGvirOktlQ98ZEL1k9FaQjxa3L1abBgbuTDAdPOpvbGncC0BTVQrl+OM8xZGK6tWXt7g==", + "engines": { + "node": ">=6" + } + }, + "node_modules/sugar-core": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/sugar-core/-/sugar-core-2.0.6.tgz", + "integrity": "sha512-YmLFysR3Si6RImqL1+aB6JH81EXxvXn5iXhPf2PsjfoUYEwCxFDYCQY+zC3WqviuGWzxFaSkkJvkUE05Y03L5Q==", + "engines": { + "node": ">= 0.8.23" + } + }, + "node_modules/sugar-date": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/sugar-date/-/sugar-date-2.0.6.tgz", + "integrity": "sha512-5aPXcTl9pIgae3j8wOieRZOEbaowHHpL+MPgZwHHjXdhZz3FjzpacjzM+Aq7rZTjDsWyWuKHzkIALx2uUhnmyg==", + "dependencies": { + "sugar-core": "^2.0.0" + }, + "engines": { + "node": ">= 0.8.23" + } + }, + "node_modules/supports-color": { + "version": "5.5.0", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz", + "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==", + "dependencies": { + "has-flag": "^3.0.0" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/swagger-stats": { + "version": "0.99.7", + "resolved": "https://registry.npmjs.org/swagger-stats/-/swagger-stats-0.99.7.tgz", + "integrity": "sha512-niP70m99Cwpz/Fyfk8ydul1jM0pOKD6UofSaDzW2Op6o6WYFsuAl/BhVbmLkZWOAZ7IloDVvFj6vaU5zA0xydg==", + "dependencies": { + "axios": "^1.4.0", + "basic-auth": "^2.0.1", + "cookies": "^0.8.0", + "debug": "^4.3.4", + "moment": "^2.29.4", + "path-to-regexp": "^6.2.1", + "qs": "^6.11.2", + "send": "^0.18.0", + "uuid": "^9.0.0" + }, + "peerDependencies": { + "prom-client": ">= 10 <= 14" + } + }, + "node_modules/swagger-stats/node_modules/debug": { + "version": "4.3.4", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.4.tgz", + "integrity": "sha512-PRWFHuSU3eDtQJPvnNY7Jcket1j0t5OuOsFzPPzsekD52Zl8qUfFIPEiswXqIvHWGVHOgX+7G/vCNNhehwxfkQ==", + "dependencies": { + "ms": "2.1.2" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/swagger-stats/node_modules/ms": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", + "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==" + }, + "node_modules/swagger-stats/node_modules/path-to-regexp": { + "version": "6.2.1", + "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-6.2.1.tgz", + "integrity": "sha512-JLyh7xT1kizaEvcaXOQwOc2/Yhw6KZOvPf1S8401UyLk86CU79LN3vl7ztXGm/pZ+YjoyAJ4rxmHwbkBXJX+yw==" + }, + "node_modules/swagger-stats/node_modules/qs": { + "version": "6.11.2", + "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.2.tgz", + "integrity": "sha512-tDNIz22aBzCDxLtVH++VnTfzxlfeK5CbqohpSqpJgj1Wg/cQbStNAz3NuqCs5vV+pjBsK4x4pN9HlVh7rcYRiA==", + "dependencies": { + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">=0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/swagger-stats/node_modules/uuid": { + "version": "9.0.1", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz", + "integrity": "sha512-b+1eJOlsR9K8HJpow9Ok3fiWOWSIcIzXodvv0rQjVoOVNpWMpxf1wZNpt4y9h10odCNrqnYp1OBzRktckBe3sA==", + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/tdigest": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/tdigest/-/tdigest-0.1.2.tgz", + "integrity": "sha512-+G0LLgjjo9BZX2MfdvPfH+MKLCrxlXSYec5DaPYP1fe6Iyhf0/fSmJ0bFiZ1F8BT6cGXl2LpltQptzjXKWEkKA==", + "dependencies": { + "bintrees": "1.0.2" + } + }, + "node_modules/thirty-two": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/thirty-two/-/thirty-two-1.0.2.tgz", + "integrity": "sha1-TKL//AKlEpDSdEueP1V2k8prYno=", + "engines": { + "node": ">=0.2.6" + } + }, + "node_modules/through": { + "version": "2.3.8", + "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", + "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=" + }, + "node_modules/thunky": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/thunky/-/thunky-1.1.0.tgz", + "integrity": "sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==" + }, + "node_modules/tmp": { + "version": "0.0.33", + "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", + "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==", + "dependencies": { + "os-tmpdir": "~1.0.2" + }, + "engines": { + "node": ">=0.6.0" + } + }, + "node_modules/toidentifier": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz", + "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==", + "engines": { + "node": ">=0.6" + } + }, + "node_modules/toposort-class": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/toposort-class/-/toposort-class-1.0.1.tgz", + "integrity": "sha1-f/0feMi+KMO6Rc1OGj9e4ZO9mYg=" + }, + "node_modules/torrent-discovery": { + "version": "5.4.0", + "resolved": "https://registry.npmjs.org/torrent-discovery/-/torrent-discovery-5.4.0.tgz", + "integrity": "sha512-bPTDIA7XEjRlw6vQyt7kM/h1mg1INBsibjbujISITonx4POENZgxfyCSEXZpDhbAkluSPH4HKRKs4/YTmNLC6w==", + "dependencies": { + "bittorrent-dht": "^6.0.0", + "bittorrent-tracker": "^7.0.0", + "debug": "^2.0.0", + "inherits": "^2.0.1", + "re-emitter": "^1.0.0", + "run-parallel": "^1.1.2", + "xtend": "^4.0.0" + } + }, + "node_modules/torrent-piece": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/torrent-piece/-/torrent-piece-1.1.2.tgz", + "integrity": "sha512-ElXPyXKKG73o+uziHJ8qlYE9EuyDVxnK2zWL+pW/2bma7RsLpSwFFIJAb8Qui7/tel2hsHQW1z3zBnfQNREpWA==" + }, + "node_modules/torrent-stream": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/torrent-stream/-/torrent-stream-1.2.1.tgz", + "integrity": "sha512-F+3tYmXnpO2gyhZQ7o8yakELJH3FtKISI/FU0iWvchOWFUXiFnjbEBoumSzfcK1P71Qxzx2az4lVK4Dkq4KSew==", + "dependencies": { + "bitfield": "^0.1.0", + "bncode": "^0.5.2", + "buffer-from": "^1.0.0", + "end-of-stream": "^0.1.4", + "fs-chunk-store": "^1.3.0", + "hat": "0.0.3", + "immediate-chunk-store": "^1.0.5", + "ip-set": "^1.0.0", + "mkdirp": "^0.3.5", + "parse-torrent": "^4.0.0", + "peer-wire-swarm": "^0.12.0", + "rimraf": "^2.2.5", + "torrent-discovery": "^5.2.0", + "torrent-piece": "^1.0.0" + } + }, + "node_modules/torrent-stream/node_modules/end-of-stream": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-0.1.5.tgz", + "integrity": "sha512-go5TQkd0YRXYhX+Lc3UrXkoKU5j+m72jEP5lHWr2Nh82L8wfZtH8toKgcg4T10o23ELIMGXQdwCbl+qAXIPDrw==", + "dependencies": { + "once": "~1.3.0" + } + }, + "node_modules/torrent-stream/node_modules/mkdirp": { + "version": "0.3.5", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz", + "integrity": "sha512-8OCq0De/h9ZxseqzCH8Kw/Filf5pF/vMI6+BH7Lu0jXz2pqYCjTAQRolSxRIi+Ax+oCCjlxoJMP0YQ4XlrQNHg==", + "deprecated": "Legacy versions of mkdirp are no longer supported. Please update to mkdirp 1.x. (Note that the API surface has changed to use Promises in 1.x.)" + }, + "node_modules/torrent-stream/node_modules/once": { + "version": "1.3.3", + "resolved": "https://registry.npmjs.org/once/-/once-1.3.3.tgz", + "integrity": "sha512-6vaNInhu+CHxtONf3zw3vq4SP2DOQhjBvIa3rNcG0+P7eKWlYH6Peu7rHizSloRU2EwMz6GraLieis9Ac9+p1w==", + "dependencies": { + "wrappy": "1" + } + }, + "node_modules/torrent-stream/node_modules/rimraf": { + "version": "2.7.1", + "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.7.1.tgz", + "integrity": "sha512-uWjbaKIK3T1OSVptzX7Nl6PvQ3qAGtKEtVRjRuazjfL3Bx5eI409VZSqgND+4UNnmzLVdPj9FqFJNPqBZFve4w==", + "dependencies": { + "glob": "^7.1.3" + }, + "bin": { + "rimraf": "bin.js" + } + }, + "node_modules/tough-cookie": { + "version": "2.5.0", + "resolved": "https://registry.npmjs.org/tough-cookie/-/tough-cookie-2.5.0.tgz", + "integrity": "sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==", + "dependencies": { + "psl": "^1.1.28", + "punycode": "^2.1.1" + }, + "engines": { + "node": ">=0.8" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha1-gYT9NH2snNwYWZLzpmIuFLnZq2o=" + }, + "node_modules/tslib": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.11.1.tgz", + "integrity": "sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==" + }, + "node_modules/tsscmp": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/tsscmp/-/tsscmp-1.0.6.tgz", + "integrity": "sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==", + "engines": { + "node": ">=0.6.x" + } + }, + "node_modules/tunnel-agent": { + "version": "0.6.0", + "resolved": "https://registry.npmjs.org/tunnel-agent/-/tunnel-agent-0.6.0.tgz", + "integrity": "sha1-J6XeoGs2sEoKmWZ3SykIaPD8QP0=", + "dependencies": { + "safe-buffer": "^5.0.1" + }, + "engines": { + "node": "*" + } + }, + "node_modules/tweetnacl": { + "version": "0.14.5", + "resolved": "https://registry.npmjs.org/tweetnacl/-/tweetnacl-0.14.5.tgz", + "integrity": "sha1-WuaBd/GS1EViadEIr6k/+HQ/T2Q=" + }, + "node_modules/type": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/type/-/type-1.2.0.tgz", + "integrity": "sha512-+5nt5AAniqsCnu2cEQQdpzCAh33kVx8n0VoFidKpB1dVVLAN/F+bgVOqOJqOnEnrhp222clB5p3vUlD+1QAnfg==" + }, + "node_modules/type-is": { + "version": "1.6.18", + "resolved": "https://registry.npmjs.org/type-is/-/type-is-1.6.18.tgz", + "integrity": "sha512-TkRKr9sUTxEH8MdfuCSP7VizJyzRNMjj2J2do2Jr3Kym598JVdEksuzPQCnlFPW4ky9Q+iA+ma9BGm06XQBy8g==", + "dependencies": { + "media-typer": "0.3.0", + "mime-types": "~2.1.24" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/typical": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/typical/-/typical-4.0.0.tgz", + "integrity": "sha512-VAH4IvQ7BDFYglMd7BPRDfLgxZZX4O4TFcRDA6EN5X7erNJJq+McIEp8np9aVtxrCJ6qx4GTYVfOWNjcqwZgRw==", + "engines": { + "node": ">=8" + } + }, + "node_modules/ua-parser-js": { + "version": "1.0.36", + "resolved": "https://registry.npmjs.org/ua-parser-js/-/ua-parser-js-1.0.36.tgz", + "integrity": "sha512-znuyCIXzl8ciS3+y3fHJI/2OhQIXbXw9MWC/o3qwyR+RGppjZHrM27CGFSKCJXi2Kctiz537iOu2KnXs1lMQhw==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/ua-parser-js" + }, + { + "type": "paypal", + "url": "https://paypal.me/faisalman" + }, + { + "type": "github", + "url": "https://github.com/sponsors/faisalman" + } + ], + "engines": { + "node": "*" + } + }, + "node_modules/ultron": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/ultron/-/ultron-1.0.2.tgz", + "integrity": "sha512-QMpnpVtYaWEeY+MwKDN/UdKlE/LsFZXM5lO1u7GaZzNgmIbGixHEmVMIKT+vqYOALu3m5GYQy9kz4Xu4IVn7Ow==" + }, + "node_modules/underscore": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==" + }, + "node_modules/uniq": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/uniq/-/uniq-1.0.1.tgz", + "integrity": "sha512-Gw+zz50YNKPDKXs+9d+aKAjVwpjNwqzvNpLigIruT4HA9lMZNdMqs9x07kKHB/L9WRzqp4+DlTU5s4wG2esdoA==" + }, + "node_modules/unpipe": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", + "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ==", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/uri-js": { + "version": "4.2.2", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.2.2.tgz", + "integrity": "sha512-KY9Frmirql91X2Qgjry0Wd4Y+YTdrdZheS8TFwvkbLWf/G5KNJDCh6pKL5OZctEW4+0Baa5idK2ZQuELRwPznQ==", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urijs": { + "version": "1.19.11", + "resolved": "https://registry.npmjs.org/urijs/-/urijs-1.19.11.tgz", + "integrity": "sha512-HXgFDgDommxn5/bIv0cnQZsPhHDA90NPHD6+c/v21U5+Sx5hoP8+dP9IZXBU1gIfvdRfhG8cel9QNPeionfcCQ==" + }, + "node_modules/urlencode": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/urlencode/-/urlencode-1.1.0.tgz", + "integrity": "sha512-OOAOh9owHXr/rCN1tteSnYwIvsrGHamSz0hafMhmQa7RcS4+Ets6/2iVClVGjt9jkDW84UqoMw/Gmpc7QolX6A==", + "dependencies": { + "iconv-lite": "~0.4.11" + } + }, + "node_modules/user-agents": { + "version": "1.1.9", + "resolved": "https://registry.npmjs.org/user-agents/-/user-agents-1.1.9.tgz", + "integrity": "sha512-XxKEWX2bHJzPjvUPRAtw+oPQchReLaR1s59iO/RhBA2TfLLgLUsFvz5MupsejqFfuhXZmZRH8t3kHBvS0ctzGg==", + "dependencies": { + "lodash.clonedeep": "^4.5.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=" + }, + "node_modules/utils-merge": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", + "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", + "engines": { + "node": ">= 0.4.0" + } + }, + "node_modules/utp": { + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/utp/-/utp-0.0.7.tgz", + "integrity": "sha512-2ZLjisH0HQkpqZTg2m7TK0Yn7TETTg7DxM0EpCKIIIV2ky9w9nSxW5a7gzdk4nH2h+pomrrGw0uywrUJfsm2eA==", + "dependencies": { + "cyclist": "~0.1.0" + } + }, + "node_modules/uuid": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-3.4.0.tgz", + "integrity": "sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==", + "deprecated": "Please upgrade to version 7 or higher. Older versions may use Math.random() in certain circumstances, which is known to be problematic. See https://v8.dev/blog/math-random for details.", + "bin": { + "uuid": "bin/uuid" + } + }, + "node_modules/validator": { + "version": "13.7.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.7.0.tgz", + "integrity": "sha512-nYXQLCBkpJ8X6ltALua9dRrZDHVYxjJ1wgskNt1lH9fzGjs3tgojGSCBjmEPwkWS1y29+DrizMTW19Pr9uB2nw==", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/vary/-/vary-1.1.2.tgz", + "integrity": "sha1-IpnwLG3tMNSllhsLn3RSShj2NPw=", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/verror": { + "version": "1.10.0", + "resolved": "https://registry.npmjs.org/verror/-/verror-1.10.0.tgz", + "integrity": "sha1-OhBcoXBTr1XW4nDB+CiGguGNpAA=", + "engines": [ + "node >=0.6.0" + ], + "dependencies": { + "assert-plus": "^1.0.0", + "core-util-is": "1.0.2", + "extsprintf": "^1.2.0" + } + }, + "node_modules/wcwidth": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz", + "integrity": "sha512-XHPEwS0q6TaxcvG85+8EYkbiCux2XtWG2mkc47Ng2A77BQu9+DqIOJldST4HgPkuea7dvKSj5VgX3P1d4rW8Tg==", + "dependencies": { + "defaults": "^1.0.3" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha1-JFNCdeKnvGvnvIZhHMFq4KVlSHE=" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha1-lmRU6HZUYuN2RNNib2dCzotwll0=", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/wkx": { + "version": "0.5.0", + "resolved": "https://registry.npmjs.org/wkx/-/wkx-0.5.0.tgz", + "integrity": "sha512-Xng/d4Ichh8uN4l0FToV/258EjMGU9MGcA0HV2d9B/ZpZB3lqQm7nkOdZdm5GhKtLLhAE7PiVQwN4eN+2YJJUg==", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/wrappy": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", + "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==" + }, + "node_modules/ws": { + "version": "1.1.5", + "resolved": "https://registry.npmjs.org/ws/-/ws-1.1.5.tgz", + "integrity": "sha512-o3KqipXNUdS7wpQzBHSe180lBGO60SoK0yVo3CYJgb2MkobuWuBX6dhkYP5ORCLd55y+SaflMOV5fqAB53ux4w==", + "dependencies": { + "options": ">=0.0.5", + "ultron": "1.0.x" + } + }, + "node_modules/xtend": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.2.tgz", + "integrity": "sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==", + "engines": { + "node": ">=0.4" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==" + } + } +} diff --git a/scraper/package.json b/scraper/package.json new file mode 100644 index 0000000..02d7360 --- /dev/null +++ b/scraper/package.json @@ -0,0 +1,49 @@ +{ + "name": "stremio-torrentio", + "version": "1.0.14", + "exports": "./index.js", + "type": "commonjs", + "scripts": { + "start": "node index.js" + }, + "author": "TheBeastLT ", + "license": "MIT", + "dependencies": { + "@putdotio/api-client": "^8.42.0", + "all-debrid-api": "^1.1.0", + "axios": "^1.6.1", + "bottleneck": "^2.19.5", + "cache-manager": "^3.4.4", + "cache-manager-mongodb": "^0.3.0", + "cors": "^2.8.5", + "debrid-link-api": "^1.0.1", + "express-rate-limit": "^6.7.0", + "google-it": "^1.6.4", + "google-sr": "^3.2.1", + "he": "^1.2.0", + "jaro-winkler": "^0.2.8", + "magnet-uri": "^6.2.0", + "name-to-imdb": "^3.0.4", + "named-queue": "^2.2.1", + "needle": "^3.3.1", + "node-schedule": "^2.1.1", + "nodejs-bing": "^0.1.0", + "nyaapi": "^2.4.4", + "offcloud-api": "^1.0.2", + "parse-torrent-title": "git://github.com/TheBeastLT/parse-torrent-title.git#022408972c2a040f846331a912a6a8487746a654", + "pg": "^8.11.3", + "pg-hstore": "^2.3.4", + "premiumize-api": "^1.0.3", + "prom-client": "^12.0.0", + "real-debrid-api": "git://github.com/TheBeastLT/node-real-debrid.git#d1f7eaa8593b947edbfbc8a92a176448b48ef445", + "request-ip": "^3.3.0", + "router": "^1.3.8", + "sequelize": "^6.31.1", + "stremio-addon-sdk": "^1.6.10", + "sugar-date": "^2.0.6", + "swagger-stats": "^0.99.7", + "torrent-stream": "^1.2.1", + "ua-parser-js": "^1.0.36", + "user-agents": "^1.0.1444" + } +} diff --git a/scraper/scheduler/scheduler.js b/scraper/scheduler/scheduler.js new file mode 100644 index 0000000..b9816a5 --- /dev/null +++ b/scraper/scheduler/scheduler.js @@ -0,0 +1,14 @@ +const { scheduleScraping, scrapeAll } = require('./scraper') +const { scheduleUpdateSeeders, scheduleUpdateSeedersForNewTorrents } = require('./seeders') + +function startScraper() { + if (process.env.ENABLE_SCHEDULING) { + scheduleScraping(); + scheduleUpdateSeeders(); + scheduleUpdateSeedersForNewTorrents(); + } else { + scrapeAll() + } +} + +module.exports = { startScraper } \ No newline at end of file diff --git a/scraper/scheduler/scraper.js b/scraper/scheduler/scraper.js new file mode 100644 index 0000000..3f06643 --- /dev/null +++ b/scraper/scheduler/scraper.js @@ -0,0 +1,28 @@ +const schedule = require('node-schedule'); +const scrapers = require('./scrapers'); +const { sequence } = require('../lib/promises') + +function scheduleScraping() { + const allCrons = scrapers.reduce((crons, provider) => { + crons[provider.cron] = (crons[provider.cron] || []).concat(provider) + return crons; + }, {}); + Object.entries(allCrons).forEach(([cron, providers]) => schedule.scheduleJob(cron, () => _scrapeProviders(providers))) +} + +function scrapeAll() { + return _scrapeProviders(scrapers) +} + +async function _scrapeProviders(providers) { + return sequence(providers.map(provider => () => _singleScrape(provider))); +} + +async function _singleScrape(provider) { + return provider.scraper.scrape().catch(error => { + console.warn(`Failed ${provider.name} scraping due: `, error); + return Promise.resolve() + }) +} + +module.exports = { scheduleScraping, scrapeAll } \ No newline at end of file diff --git a/scraper/scheduler/scrapers.js b/scraper/scheduler/scrapers.js new file mode 100644 index 0000000..3bb6c48 --- /dev/null +++ b/scraper/scheduler/scrapers.js @@ -0,0 +1,45 @@ +const thepiratebayScraper = require('../scrapers/thepiratebay/thepiratebay_scraper'); +const thepiratebayFakeRemoval = require('../scrapers/thepiratebay/thepiratebay_fakes_removal'); +const ytsScraper = require('../scrapers/yts/yts_scraper'); +const eztvScraper = require('../scrapers/eztv/eztv_scraper'); +const leetxScraper = require('../scrapers/1337x/1337x_scraper'); +const kickassScraper = require('../scrapers/kickass/kickass_scraper'); +const rarbgScraper = require('../scrapers/rarbg/rarbg_scraper'); +const nyaaPantsuScraper = require('../scrapers/nyaapantsu/nyaa_pantsu_scraper'); +const nyaaSiScraper = require('../scrapers/nyaasi/nyaa_si_scraper'); +const erairawsScraper = require('../scrapers/erairaws/erairaws_scraper'); +const torrentGalaxyScraper = require('../scrapers/torrentgalaxy/torrentgalaxy_scraper'); +const rutorScraper = require('../scrapers/rutor/rutor_scraper'); +const Comando = require('../scrapers/comando/comando_scraper') +const ComoEuBaixo = require('../scrapers/comoeubaixo/comoeubaixo_scraper') +const Lapumia = require('../scrapers/lapumia/lapumia_scraper') +const OndeBaixa = require('../scrapers/ondebaixa/ondebaixa_scraper'); +const AnimesTorrent = require('../scrapers/animestorrent/animestorrent_scraper') +const DarkMahou = require('../scrapers/darkmahou/darkmahou_scraper') + +module.exports = [ + { scraper: ytsScraper, name: ytsScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: eztvScraper, name: eztvScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: nyaaSiScraper, name: nyaaSiScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: nyaaPantsuScraper, name: nyaaPantsuScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: rarbgScraper, name: rarbgScraper.NAME, cron: '0 0 */1 ? * *' }, + { scraper: rutorScraper, name: rutorScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: thepiratebayScraper, name: thepiratebayScraper.NAME, cron: '0 0 */2 ? * *' }, + { scraper: thepiratebayFakeRemoval, name: thepiratebayFakeRemoval.NAME, cron: '0 0 */12 ? * *' }, + { scraper: torrentGalaxyScraper, name: torrentGalaxyScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: leetxScraper, name: leetxScraper.NAME, cron: '0 0 */4 ? * *' }, + // { scraper: kickassScraper, name: kickassScraper.NAME, cron: '0 0 */4 ? * *' }, + { scraper: Comando, name: Comando.NAME, cron: '0 0 */4 ? * *' }, + { scraper: ComoEuBaixo, name: ComoEuBaixo.NAME, cron: '0 0 */4 ? * *' }, + { scraper: Lapumia, name: Lapumia.NAME, cron: '0 0 */4 ? * *' }, + { scraper: OndeBaixa, name: OndeBaixa.NAME, cron: '0 0 */4 ? * *' }, + // { scraper: AnimesTorrent, name: AnimesTorrent.NAME, cron: '0 0 */4 ? * *' }, + // { scraper: DarkMahou, name: DarkMahou.NAME, cron: '0 0 */4 ? * *' }, + { scraper: erairawsScraper, name: erairawsScraper.NAME, cron: '0 0 */24 ? * *' }, + // { scraper: require('../scrapers/rarbg/rarbg_dump_scraper') } + // { scraper: require('../scrapers/1337x/1337x_search_scraper') } + // { scraper: require('../scrapers/rarbg/rarbg_dump_scraper') } + // { scraper: require('../scrapers/thepiratebay/thepiratebay_dump_scraper') } + // { scraper: require('../scrapers/thepiratebay/thepiratebay_unofficial_dump_scraper') } + // { scraper: require('../scrapers/thepiratebay/thepiratebay_update_size_scraper') } +]; diff --git a/scraper/scheduler/seeders.js b/scraper/scheduler/seeders.js new file mode 100644 index 0000000..9fae79a --- /dev/null +++ b/scraper/scheduler/seeders.js @@ -0,0 +1,54 @@ +const Bottleneck = require('bottleneck'); +const repository = require('../lib/repository') +const { delay } = require('../lib/promises') +const { updateCurrentSeeders } = require('../lib/torrent') +const { updateTorrentSeeders } = require('../lib/torrentEntries') + +const DELAY_MS = 0; // 0 seconds +const updateLimiter = new Bottleneck({ maxConcurrent: 5 }); +const statistics = {}; +const statisticsNew = {}; + +function scheduleUpdateSeeders() { + console.log('Starting seeders update...') + getTorrents() + .then(torrents => updateCurrentSeeders(torrents)) + .then(updatedTorrents => Promise.all( + updatedTorrents.map(updated => updateLimiter.schedule(() => updateTorrentSeeders(updated))))) + .then(torrents => updateStatistics(torrents, statistics)) + .then(() => console.log('Finished seeders update:', statistics)) + .catch(error => console.warn('Failed seeders update:', error)) + .then(() => delay(DELAY_MS)) + .then(() => scheduleUpdateSeeders()); +} + +function scheduleUpdateSeedersForNewTorrents() { + console.log('Starting seeders update for new torrents...') + getNewTorrents() + .then(torrents => updateCurrentSeeders(torrents)) + .then(updatedTorrents => Promise.all( + updatedTorrents.map(updated => updateLimiter.schedule(() => updateTorrentSeeders(updated))))) + .then(torrents => updateStatistics(torrents, statisticsNew)) + .then(() => console.log('Finished seeders update for new torrents:', statisticsNew)) + .catch(error => console.warn('Failed seeders update for new torrents:', error)) + .then(() => delay(30_000)) + .then(() => scheduleUpdateSeedersForNewTorrents()); +} + +async function getTorrents() { + return repository.getUpdateSeedersTorrents() + .catch(() => delay(5000).then(() => getTorrents())) +} + +async function getNewTorrents() { + return repository.getUpdateSeedersNewTorrents() + .catch(() => delay(5000).then(() => getNewTorrents())) +} + +function updateStatistics(updatedTorrents, statisticsObject) { + const totalTorrents = updatedTorrents.map(nested => nested.length).reduce((a, b) => a + b, 0); + const date = new Date().toISOString().replace(/T.*/, ''); + statisticsObject[date] = (statisticsObject[date] || 0) + totalTorrents; +} + +module.exports = { scheduleUpdateSeeders, scheduleUpdateSeedersForNewTorrents } \ No newline at end of file diff --git a/scraper/scrapers/1337x/1337x_api.js b/scraper/scrapers/1337x/1337x_api.js new file mode 100644 index 0000000..4877501 --- /dev/null +++ b/scraper/scrapers/1337x/1337x_api.js @@ -0,0 +1,182 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const Sugar = require('sugar-date'); +const decode = require('magnet-uri'); +const Promises = require('../../lib/promises'); +const { escapeHTML } = require('../../lib/metadata'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); + +const defaultProxies = [ + 'https://1337x.to' +]; +const defaultTimeout = 10000; +const maxSearchPage = 50; + +const Categories = { + MOVIE: 'Movies', + TV: 'TV', + ANIME: 'Anime', + DOCUMENTARIES: 'Documentaries', + APPS: 'Apps', + GAMES: 'Games', + MUSIC: 'Music', + PORN: 'XXX', + OTHER: 'Other', +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const proxyList = config.proxyList || defaultProxies; + const slug = torrentId.startsWith('/torrent/') ? torrentId.replace('/torrent/', '') : torrentId; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/torrent/${slug}`, config))) + .then((body) => parseTorrentPage(body)) + .then((torrent) => ({ torrentId: slug, ...torrent })) + .catch((err) => torrent(slug, config, retries - 1)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + const extendToPage = Math.min(maxSearchPage, (config.extendToPage || 1)) + const requestUrl = proxyUrl => category + ? `${proxyUrl}/category-search/${keyword}/${category}/${page}/` + : `${proxyUrl}/search/${keyword}/${page}/`; + + return Promises.first(proxyList + .map(proxyUrl => singleRequest(requestUrl(proxyUrl), config))) + .then(body => parseTableBody(body)) + .then(torrents => torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + const sort = config.sort; + const requestUrl = proxyUrl => sort + ? `${proxyUrl}/sort-cat/${category}/${sort}/desc/${page}/` + : `${proxyUrl}/cat/${category}/${page}/`; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(requestUrl(proxyUrl), config))) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden') || + !(body.includes('1337x'))) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('.table > tbody > tr').each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find('a').eq(1).text(), + torrentId: row.find('a').eq(1).attr('href').replace('/torrent/', ''), + seeders: parseInt(row.children('td.coll-2').text()), + leechers: parseInt(row.children('td.coll-3').text()), + size: parseSize(row.children('td.coll-4').text()) + }); + }); + + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const details = $('.torrent-detail-page'); + const magnetLink = details.find('a:contains(\'Magnet Download\')').attr('href'); + const imdbIdMatch = details.find('div[id=\'description\']').html().match(/imdb\.com\/title\/(tt\d+)/i); + + const torrent = { + name: escapeHTML(decode(magnetLink).name.replace(/\+/g, ' ')), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + seeders: parseInt(details.find('strong:contains(\'Seeders\')').next().text(), 10), + leechers: parseInt(details.find('strong:contains(\'Leechers\')').next().text(), 10), + category: details.find('strong:contains(\'Category\')').next().text(), + languages: details.find('strong:contains(\'Language\')').next().text(), + size: parseSize(details.find('strong:contains(\'Total size\')').next().text()), + uploadDate: parseDate(details.find('strong:contains(\'Date uploaded\')').next().text()), + imdbId: imdbIdMatch && imdbIdMatch[1], + files: details.find('div[id=\'files\']').first().find('li') + .map((i, elem) => $(elem).text()) + .map((i, text) => ({ + fileIndex: i, + name: text.match(/^(.+)\s\(.+\)$/)[1].replace(/^.+\//g, ''), + path: text.match(/^(.+)\s\(.+\)$/)[1], + size: parseSize(text.match(/^.+\s\((.+)\)$/)[1]) + })).get() + }; + resolve(torrent); + }); +} + +function parseDate(dateString) { + if (/decade.*ago/i.test(dateString)) { + return Sugar.Date.create('10 years ago'); + } + return Sugar.Date.create(dateString); +} + +function parseSize(sizeText) { + if (!sizeText) { + return undefined; + } + let scale = 1; + if (sizeText.includes('GB')) { + scale = 1024 * 1024 * 1024 + } else if (sizeText.includes('MB')) { + scale = 1024 * 1024; + } else if (sizeText.includes('KB')) { + scale = 1024; + } + return Math.floor(parseFloat(sizeText.replace(/,/g, '')) * scale); +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/1337x/1337x_scraper.js b/scraper/scrapers/1337x/1337x_scraper.js new file mode 100644 index 0000000..3471694 --- /dev/null +++ b/scraper/scrapers/1337x/1337x_scraper.js @@ -0,0 +1,111 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const leetx = require('./1337x_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = '1337x'; +const UNTIL_PAGE = 10; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => leetx.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + leetx.Categories.MOVIE, + leetx.Categories.TV, + leetx.Categories.ANIME, + leetx.Categories.DOCUMENTARIES + ]; + + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return leetx.browse(({ category, page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); + +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent({ provider: NAME, ...record })) { + return record; + } + + const torrentFound = await leetx.torrent(record.torrentId).catch(() => undefined); + + if (!torrentFound || !TYPE_MAPPING[torrentFound.category]) { + return Promise.resolve('Invalid torrent record'); + } + if (isNaN(torrentFound.uploadDate)) { + console.warn(`Incorrect upload date for [${torrentFound.infoHash}] ${torrentFound.name}`); + return; + } + if (await checkAndUpdateTorrent(torrentFound)) { + return torrentFound; + } + + const torrent = { + infoHash: torrentFound.infoHash, + provider: NAME, + torrentId: torrentFound.torrentId, + title: torrentFound.name.replace(/\t|\s+/g, ' ').trim(), + type: TYPE_MAPPING[torrentFound.category], + size: torrentFound.size, + seeders: torrentFound.seeders, + uploadDate: torrentFound.uploadDate, + imdbId: torrentFound.imdbId, + languages: torrentFound.languages || undefined + }; + + return createTorrentEntry(torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[leetx.Categories.MOVIE] = Type.MOVIE; + mapping[leetx.Categories.DOCUMENTARIES] = Type.SERIES; + mapping[leetx.Categories.TV] = Type.SERIES; + mapping[leetx.Categories.ANIME] = Type.ANIME; + return mapping; +} + +function untilPage(category) { + if (leetx.Categories.ANIME === category) { + return 5; + } + if (leetx.Categories.DOCUMENTARIES === category) { + return 1; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/animestorrent/animestorrent_api.js b/scraper/scrapers/animestorrent/animestorrent_api.js new file mode 100644 index 0000000..836f8f6 --- /dev/null +++ b/scraper/scrapers/animestorrent/animestorrent_api.js @@ -0,0 +1,133 @@ +const needle = require("needle"); +const cheerio = require("cheerio"); +const decode = require("magnet-uri"); +const Promises = require("../../lib/promises"); +const { getRandomUserAgent } = require("../../lib/requestHelper"); + +const defaultTimeout = 10000; +const maxSearchPage = 50; + +const baseUrl = 'https://animestorrent.com'; + +const Categories = { + MOVIE: 'filme', + ANIME: 'tv', + OVA: 'ova' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = torrentId.split("/")[3]; + return singleRequest(`${baseUrl}/${slug}`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map((el) => ({ torrentId: slug, ...el }))) + .catch((err) => torrent(slug, config, retries - 1)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, config.extendToPage || 1); + + return singleRequest(`${baseUrl}/page/${page}/?s=${keyword}`, config) + .then((body) => parseTableBody(body)) + .then((torrents) => + torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }) + .catch(() => []) + .then((nextTorrents) => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + const requestUrl = category ? `${baseUrl}/tipo/${category}/page/${page}/` : `${baseUrl}/page/${page}/`; + + return singleRequest(requestUrl, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { + userAgent: getRandomUserAgent(), + open_timeout: timeout, + follow: 2, + }; + + return needle("get", requestUrl, options).then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if ( + body.includes("502: Bad gateway") || + body.includes("403 Forbidden") + ) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + + const torrents = []; + + $("article.bs").each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("span.ntitle").text(), + torrentId: row.find("div > a").attr("href"), + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise(async (resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + let magnets = []; + $(`a[href^="magnet"]`).each((i, section) => { + const magnet = $(section).attr("href"); + magnets.push(magnet); + }); + const details = $('div.infox') + const torrents = magnets.map((magnetLink) => { + return { + title: decode(magnetLink).name, + originalName: details.find('h1.entry-title').text(), + year: details.find('b:contains(\'Lançamento:\')')[0] + ? details.find('b:contains(\'Lançamento:\')')[0].nextSibling.nodeValue.trim() + : '', + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + category: details.find('b:contains(\'Tipo:\')').next().attr('href').split('/')[4], + uploadDate: new Date($("time[itemprop=dateModified]").attr("datetime")), + }; + }) + resolve(torrents); + }); +} + +module.exports = { torrent, search, browse, Categories }; \ No newline at end of file diff --git a/scraper/scrapers/animestorrent/animestorrent_scraper.js b/scraper/scrapers/animestorrent/animestorrent_scraper.js new file mode 100644 index 0000000..b6de04d --- /dev/null +++ b/scraper/scrapers/animestorrent/animestorrent_scraper.js @@ -0,0 +1,108 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const animetorrrent = require("./animestorrent_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); +const { getKitsuId } = require("../../lib/metadata"); + +const NAME = "AnimesTorrent"; +const UNTIL_PAGE = 5; + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => animetorrrent.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + animetorrrent.Categories.MOVIE, + animetorrrent.Categories.ANIME, + animetorrrent.Categories.OVA + ]; + + return Promises.sequence(allowedCategories + .map((category) => () => scrapeLatestTorrentsForCategory(category))) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return animetorrrent + .browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + return animetorrrent.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + if (!foundTorrent.imdbId && !foundTorrent.kitsuId) { + const info = { title: foundTorrent.originalName, year: foundTorrent.year }; + foundTorrent.kitsuId = await getKitsuId(info).catch(() => undefined); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: Type.ANIME, + imdbId: foundTorrent.imdbId, + kitsuId: foundTorrent.kitsuId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function untilPage(category) { + if (animetorrrent.Categories.ANIME === category) { + return 5; + } + if (animetorrrent.Categories.OVA === category) { + return 3; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/comando/comando_api.js b/scraper/scrapers/comando/comando_api.js new file mode 100644 index 0000000..ca05705 --- /dev/null +++ b/scraper/scrapers/comando/comando_api.js @@ -0,0 +1,161 @@ +const needle = require("needle") +const moment = require("moment") +const cheerio = require("cheerio"); +const decode = require('magnet-uri'); +const Promises = require('../../lib/promises'); +const { escapeHTML } = require('../../lib/metadata'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); +const { isPtDubbed, sanitizePtName, sanitizePtLanguages, sanitizePtOriginalName } = require('../scraperHelper') + +const defaultTimeout = 30000; +const maxSearchPage = 50 + +const baseUrl = 'https://comando.to'; + +const Categories = { + MOVIE: 'filmes', + TV: 'series', + ANIME: 'animes', + DOCUMENTARIES: 'documentario' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = torrentId.split("/")[3]; + return singleRequest(`${baseUrl}/${slug}`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map(el => ({ torrentId: slug, ...el }))) + .catch((err) => { + console.warn(`Failed Comando ${slug} request: `, err); + return torrent(torrentId, config, retries - 1) + }); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, (config.extendToPage || 1)) + + return singleRequest(`${baseUrl}/page/${page}/?s=${keyword}`, config) + .then(body => parseTableBody(body)) + .then(torrents => torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + + return singleRequest(`${baseUrl}/category/${category}/page/${page}/`, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('article').each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("h2 > a").text(), + torrentId: row.find("h2 > a").attr("href") + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const magnets = $('h2 > strong') + .filter((i, elem) => isPtDubbed($(elem).text())).parent() + .map((i, elem) => $(elem).nextUntil('h2, hr')) + .map((i, elem) => $(elem).find('a[href^="magnet"]')) + .map((i, section) => $(section).attr("href")).get(); + const details = $('strong, b').filter((i, elem) => $(elem).text().match(/Servidor|Orig(?:\.|inal)/)).parent(); + const imdbIdMatch = details.find('a[href*="imdb.com"]').attr('href') + const torrents = magnets.map(magnetLink => { + const decodedMagnet = decode(magnetLink); + const originalNameElem = details.find('strong, b') + .filter((i, elem) => $(elem).text().match(/Baixar|Orig(?:\.|inal)|^Título:/)); + const languagesElem = details.find('strong, b') + .filter((i, elem) => $(elem).text().match(/^\s*([IÍ]dioma|[AÁ]udio)/)); + const originalName = parseOriginalName(originalNameElem); + const title = decodedMagnet.name && escapeHTML(decodedMagnet.name.replace(/\+/g, ' ')); + return { + title: title ? sanitizePtName(title) : originalName, + originalName: sanitizePtOriginalName(originalName), + year: details.find('a[href*="comando.to/category/"]').text(), + infoHash: decodedMagnet.infoHash, + magnetLink: magnetLink, + category: parseCategory($('div.entry-categories').html()), + uploadDate: new Date(moment($('a.updated').text(), 'LL', 'pt-br').format()), + imdbId: imdbIdMatch ? imdbIdMatch.split('/')[4] : null, + languages: sanitizePtLanguages(languagesElem[0].nextSibling.nodeValue) + } + }); + resolve(torrents.filter((x) => x)); + }); +} + +function parseOriginalName(originalNameElem) { + if (!originalNameElem[0]) { + return ''; + } + const originalName = originalNameElem.next().text().trim() || originalNameElem[0].nextSibling.nodeValue; + return originalName.replace(/: ?/, ''); +} + +function parseCategory(categorys) { + const $ = cheerio.load(categorys) + if ($('a:contains(\'animes\')').text()) { + return Categories.ANIME + } + if ($('a:contains(\'Filmes\')').text()) { + return Categories.MOVIE + } + if ($('a:contains(\'Series\')').text()) { + return Categories.TV + } +} + +module.exports = { torrent, search, browse, Categories }; \ No newline at end of file diff --git a/scraper/scrapers/comando/comando_scraper.js b/scraper/scrapers/comando/comando_scraper.js new file mode 100644 index 0000000..6062871 --- /dev/null +++ b/scraper/scrapers/comando/comando_scraper.js @@ -0,0 +1,112 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const comando = require("./comando_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { getImdbId } = require("../../lib/metadata"); + +const NAME = "Comando"; +const UNTIL_PAGE = 5; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => comando.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + comando.Categories.MOVIE, + comando.Categories.TV + ]; + + return Promises.sequence(allowedCategories + .map((category) => () => scrapeLatestTorrentsForCategory(category))) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return comando.browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + return comando.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + if (!foundTorrent.imdbId && foundTorrent.originalName) { + const info = { title: foundTorrent.originalName, year: foundTorrent.year }; + foundTorrent.imdbId = await getImdbId(info, TYPE_MAPPING[foundTorrent.category]).catch(() => undefined); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: TYPE_MAPPING[foundTorrent.category], + imdbId: foundTorrent.imdbId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[comando.Categories.MOVIE] = Type.MOVIE; + mapping[comando.Categories.DOCUMENTARIES] = Type.SERIES; + mapping[comando.Categories.TV] = Type.SERIES; + mapping[comando.Categories.ANIME] = Type.ANIME; + return mapping; +} + +function untilPage(category) { + if (comando.Categories.TV === category) { + return 5; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/comoeubaixo/comoeubaixo_api.js b/scraper/scrapers/comoeubaixo/comoeubaixo_api.js new file mode 100644 index 0000000..6e042ae --- /dev/null +++ b/scraper/scrapers/comoeubaixo/comoeubaixo_api.js @@ -0,0 +1,135 @@ +const needle = require("needle") +const cheerio = require("cheerio"); +const decode = require('magnet-uri'); +const { escapeHTML } = require('../../lib/metadata'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); +const { isPtDubbed, sanitizePtName, sanitizePtLanguages } = require('../scraperHelper') + +const defaultTimeout = 10000; +const maxSearchPage = 50 + +const baseUrl = 'https://comoeubaixo.com'; + +const Categories = { + MOVIE: 'filmes', + TV: 'series', + ANIME: 'anime', + DESENHOS: 'desenhos' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = encodeURIComponent(torrentId.split("/")[3]); + return singleRequest(`${baseUrl}/${slug}/`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map(el => ({ torrentId: slug, ...el }))) + .catch((err) => { + console.warn(`Failed ComoEuBaixo ${torrentId} request: `, err); + return torrent(torrentId, config, retries - 1) + }); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, (config.extendToPage || 1)) + + return singleRequest(`${baseUrl}/${keyword}/${page}/`, config) + .then(body => parseTableBody(body)) + .then(torrents => torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + const requestUrl = category ? `${baseUrl}/${category}/${page}/` : `${baseUrl}/${page}/`; + + return singleRequest(requestUrl, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body || (Buffer.isBuffer(body) && !body.size)) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('div.capa_larga.align-middle').each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("a").text(), + torrentId: row.find("a").attr("href"), + isTorrent: !!row.find("p:contains(\'Torrent\')")[0] + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const magnets = $(`a[href^="magnet"]`) + .filter((i, elem) => isPtDubbed($(elem).attr('title'))) + .map((i, elem) => $(elem).attr("href")).get(); + const details = $('div#informacoes') + const category = details.find('strong:contains(\'Gêneros: \')').next().attr('href').split('/')[0] + const torrents = magnets.map(magnetLink => { + const decodedMagnet = decode(magnetLink); + const name = escapeHTML(decodedMagnet.name || '').replace(/\+/g, ' '); + const sanitizedTitle = sanitizePtName(name); + const originalTitle = details.find('strong:contains(\'Baixar\')')[0].nextSibling.nodeValue.split('-')[0]; + const year = details.find('strong:contains(\'Data de Lançamento: \')').next().text().trim(); + const fallBackTitle = `${originalTitle.trim()} ${year.trim()} ${sanitizedTitle.trim()}`; + return { + title: sanitizedTitle.length > 5 ? sanitizedTitle : fallBackTitle, + infoHash: decodedMagnet.infoHash, + magnetLink: magnetLink, + category: category, + uploadDate: new Date($('time').attr('datetime')), + imdbId: details.find('a[href*="imdb.com"]').attr('href').split('/')[4], + languages: sanitizePtLanguages(details.find('strong:contains(\'Idioma\')')[0].nextSibling.nodeValue) + }; + }) + resolve(torrents.filter((x) => x)); + }); +} + +module.exports = { torrent, search, browse, Categories }; \ No newline at end of file diff --git a/scraper/scrapers/comoeubaixo/comoeubaixo_scraper.js b/scraper/scrapers/comoeubaixo/comoeubaixo_scraper.js new file mode 100644 index 0000000..f01799b --- /dev/null +++ b/scraper/scrapers/comoeubaixo/comoeubaixo_scraper.js @@ -0,0 +1,115 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const comoeubaixo = require("./comoeubaixo_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); + +const NAME = "ComoEuBaixo"; +const UNTIL_PAGE = 5; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => comoeubaixo.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + comoeubaixo.Categories.MOVIE, + comoeubaixo.Categories.TV, + comoeubaixo.Categories.DESENHOS + ]; + + return Promises.sequence(allowedCategories + .map((category) => () => scrapeLatestTorrentsForCategory(category))) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return comoeubaixo + .browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + if (!entry.isTorrent) { + return entry; + } + return comoeubaixo.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: TYPE_MAPPING[foundTorrent.category], + imdbId: foundTorrent.imdbId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[comoeubaixo.Categories.MOVIE] = Type.MOVIE; + mapping[comoeubaixo.Categories.TV] = Type.SERIES; + mapping[comoeubaixo.Categories.ANIME] = Type.ANIME; + mapping[comoeubaixo.Categories.DESENHOS] = Type.SERIES; + return mapping; +} + +function untilPage(category) { + if (comoeubaixo.Categories.DESENHOS === category) { + return UNTIL_PAGE; + } + if (comoeubaixo.Categories.TV === category) { + return UNTIL_PAGE; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/darkmahou/darkmahou_api.js b/scraper/scrapers/darkmahou/darkmahou_api.js new file mode 100644 index 0000000..e1d5a22 --- /dev/null +++ b/scraper/scrapers/darkmahou/darkmahou_api.js @@ -0,0 +1,132 @@ +const needle = require("needle"); +const cheerio = require("cheerio"); +const decode = require("magnet-uri"); +const Promises = require("../../lib/promises"); +const { getRandomUserAgent } = require("../../lib/requestHelper"); + +const defaultTimeout = 10000; +const maxSearchPage = 50; + +const baseUrl = 'https://darkmahou.com'; + +const Categories = { + MOVIE: 'movie', + ANIME: 'tv', + OVA: 'ova' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = torrentId.split("/")[3]; + return singleRequest(`${baseUrl}/${slug}`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map((el) => ({ torrentId: slug, ...el }))) + .catch((err) => torrent(slug, config, retries - 1)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, config.extendToPage || 1); + + return singleRequest(`${baseUrl}/page/${page}/?s=${keyword}`, config) + .then((body) => parseTableBody(body)) + .then((torrents) => + torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }) + .catch(() => []) + .then((nextTorrents) => torrents.concat(nextTorrents)) + : torrents + ) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + const requestUrl = category ? `${baseUrl}/category/${category}/page/${page}/` : `${baseUrl}/page/${page}/`; + + return singleRequest(requestUrl, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { + userAgent: getRandomUserAgent(), + open_timeout: timeout, + follow: 2, + }; + + return needle("get", requestUrl, options).then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if ( + body.includes("502: Bad gateway") || + body.includes("403 Forbidden") + ) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + + const torrents = []; + + $("article.bs").each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("span.ntitle").text(), + torrentId: row.find("div > a").attr("href"), + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise(async (resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + let magnets = []; + $(`a[href^="magnet"]`).each((i, section) => { + const magnet = $(section).attr("href"); + magnets.push(magnet); + }); + const details = $('div.infox') + const torrent = magnets.map((magnetLink) => { + return { + title: decode(magnetLink).name, + originalName: details.find('h1.entry-title').text(), + year: details.find('b:contains(\'Lançado:\')')[0].nextSibling.nodeValue || '', + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + category: details.find('b:contains(\'Tipo:\')').next().attr('href').split('/')[4], + uploadDate: new Date($("time[itemprop=dateModified]").attr("datetime")), + }; + }) + resolve(torrent.filter((x) => x)); + }); +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/darkmahou/darkmahou_scraper.js b/scraper/scrapers/darkmahou/darkmahou_scraper.js new file mode 100644 index 0000000..2168b0e --- /dev/null +++ b/scraper/scrapers/darkmahou/darkmahou_scraper.js @@ -0,0 +1,108 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const darkmahou = require("./darkmahou_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); +const { getKitsuId } = require("../../lib/metadata"); + +const NAME = "DarkMahou"; +const UNTIL_PAGE = 5; + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => darkmahou.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + darkmahou.Categories.MOVIE, + darkmahou.Categories.ANIME, + darkmahou.Categories.OVA + ]; + + return Promises.sequence(allowedCategories + .map((category) => () => scrapeLatestTorrentsForCategory(category))) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return darkmahou + .browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + return darkmahou.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + if (!foundTorrent.imdbId && !foundTorrent.kitsuId) { + const info = { title: foundTorrent.originalName, year: foundTorrent.year }; + foundTorrent.kitsuId = await getKitsuId(info).catch(() => undefined); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: Type.ANIME, + imdbId: foundTorrent.imdbId, + kitsuId: foundTorrent.kitsuId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function untilPage(category) { + if (darkmahou.Categories.ANIME === category) { + return 5; + } + if (darkmahou.Categories.OVA === category) { + return 4; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/erairaws/erairaws_api.js b/scraper/scrapers/erairaws/erairaws_api.js new file mode 100644 index 0000000..9535171 --- /dev/null +++ b/scraper/scrapers/erairaws/erairaws_api.js @@ -0,0 +1,94 @@ +const needle = require("needle"); +const axios = require('axios'); +const cheerio = require("cheerio"); +const decode = require("magnet-uri"); +const Promises = require("../../lib/promises"); +const { getRandomUserAgent } = require("../../lib/requestHelper"); + +const defaultTimeout = 10000; + +const baseUrl = 'https://www.erai-raws.info'; + +const Categories = { + ANIMES: 'anime', + EPISODES: 'episodes' +}; + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + + return singleRequest(`${baseUrl}/${category}/page/${page}/`, config) + .then((body) => parseTableBody(body) + .then(animes => Promises.sequence(animes.map(anime => () => singleRequest(anime.animeLink)))) + .then(animeBodies => Promise.all(animeBodies.map(animeBody => parseTorrentPage(animeBody)))) + .then(animeInfos => animeInfos.reduce((a, b) => a.concat(b), []))) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), timeout: timeout, follow: 2, }; + + return axios.get(requestUrl, options).then((response) => { + const body = response.data; + if (!body || (Buffer.isBuffer(body) && !body.size)) { + throw new Error(`No body: ${requestUrl}`); + } else if ( + body.includes("502: Bad gateway") || + body.includes("403 Forbidden") + ) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + + const links = $('[itemprop=\'headline\'] a, .content-area a.aa_ss_ops_new') + .map((i, element) => ({ + name: $(element).text(), + animeLink: $(element).attr("href"), + })).get(); + resolve(links); + }); +} + +function parseTorrentPage(body) { + return new Promise(async (resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error("Failed loading body")); + } + const entries = $('.tab-content table, .content-area table') + .map((i, entry) => { + const languages = $(entry).find('.tooltip3').map((_, l) => $(l).attr('data-title')).get().join('/'); + const magnets = $(entry).find('a[href^="magnet"]').map((_, m) => $(m).attr('href')).get(); + return { languages, magnets } + }).get(); + const torrents = entries + .map(entry => entry.magnets + .map(magnet => decode(magnet)) + .map(decodedMagnet => ({ + title: decodedMagnet.name, + infoHash: decodedMagnet.infoHash, + trackers: decodedMagnet.tr, + languages: entry.languages + }))) + .reduce((a, b) => a.concat(b), []); + resolve(torrents); + }); +} + +module.exports = { browse, Categories }; diff --git a/scraper/scrapers/erairaws/erairaws_scraper.js b/scraper/scrapers/erairaws/erairaws_scraper.js new file mode 100644 index 0000000..3db4474 --- /dev/null +++ b/scraper/scrapers/erairaws/erairaws_scraper.js @@ -0,0 +1,47 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const erairaws = require('./erairaws_api'); +const { checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'EraiRaws'; + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function scrapeLatestTorrents() { + return scrapeLatestTorrentsForCategory(erairaws.Categories.EPISODES) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return erairaws.browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processRecord(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve([])); +} + +async function processRecord(foundTorrent) { + return checkAndUpdateTorrent({ provider: NAME, ...foundTorrent }).then(() => foundTorrent); +} + +function untilPage(category) { + if (category === erairaws.Categories.ANIMES) { + return 45; + } + return 3; +} + +module.exports = { scrape, NAME }; diff --git a/scraper/scrapers/eztv/eztv_api.js b/scraper/scrapers/eztv/eztv_api.js new file mode 100644 index 0000000..af33e0e --- /dev/null +++ b/scraper/scrapers/eztv/eztv_api.js @@ -0,0 +1,135 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const moment = require('moment'); +const Promises = require('../../lib/promises'); +const { getRandomUserAgent } = require('./../../lib/requestHelper'); + +const defaultProxies = [ + 'https://eztv.re' +]; +const defaultTimeout = 120000; +const minDelay = 3000; +const jitterDelay = minDelay; +const limit = 100; +const maxPage = 5; + +function torrent(torrentId, config = {}, retries = 1) { + if (!torrentId) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/ep/${torrentId}`, config))) + .then(body => parseTorrentPage(body)) + .then(torrent => ({ torrentId, ...torrent })) + .catch(error => retries ? jitter().then(() => torrent(torrentId, config, retries - 1)) : Promise.reject(error)); +} + +function search(imdbId, config = {}, retries = 1) { + if (!imdbId) { + return Promise.reject(new Error(`Failed ${imdbId} search`)); + } + const id = imdbId.replace('tt', ''); + const page = config.page || 1; + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/api/get-torrents?limit=${limit}&page=${page}&imdb_id=${id}`, config))) + .then(results => parseResults(results)) + .then(torrents => torrents.length === limit && page < maxPage + ? search(imdbId, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch(error => retries ? jitter().then(() => search(imdbId, config, retries - 1)) : Promise.reject(error)); +} + +function browse(config = {}, retries = 1) { + const page = config.page || 1; + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/api/get-torrents?limit=${limit}&page=${page}`, config))) + .then(results => parseResults(results)) + .catch(error => retries ? jitter().then(() => browse(config, retries - 1)) : Promise.reject(error)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { + userAgent: getRandomUserAgent(), + open_timeout: timeout, + response_timeout: timeout, + read_timeout: timeout, + follow: 2 + }; + + return needle('get', requestUrl, options) + .then(response => { + if (!response.body) { + return Promise.reject(`No body: ${requestUrl}`); + } + return Promise.resolve(response.body); + }); +} + +function parseResults(results) { + if (!results || !Array.isArray(results.torrents)) { + return Promise.reject(`Incorrect results ${results}`) + } + return results.torrents.map(torrent => parseTorrent(torrent)); +} + +function parseTorrent(torrent) { + return { + name: torrent.title.replace(/EZTV$/, ''), + torrentId: torrent.episode_url.replace(/.*\/ep\//, ''), + infoHash: torrent.hash.trim().toLowerCase(), + magnetLink: torrent.magnet_url, + torrentLink: torrent.torrent_url, + seeders: torrent.seeds, + size: torrent.size_bytes, + uploadDate: new Date(torrent.date_released_unix * 1000), + imdbId: torrent.imdb_id !== '0' && 'tt' + torrent.imdb_id || undefined + } +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const content = $('table[class="forum_header_border_normal"]'); + const torrent = { + name: content.find('h1 > span').text().replace(/EZTV$/, ''), + infoHash: content.find('b:contains(\'Torrent Hash:\')')[0].nextSibling.data.trim().toLowerCase(), + magnetLink: content.find('a[title="Magnet Link"]').attr('href'), + torrentLink: content.find('a[title="Download Torrent"]').attr('href'), + seeders: parseInt(content.find('span[class="stat_red"]').first().text(), 10) || 0, + size: parseSize(content.find('b:contains(\'Filesize:\')')[0].nextSibling.data), + uploadDate: moment(content.find('b:contains(\'Released:\')')[0].nextSibling.data, 'Do MMM YYYY').toDate(), + showUrl: content.find('.episode_left_column a').attr('href') + }; + resolve(torrent); + }); +} + +function parseSize(sizeText) { + if (!sizeText) { + return undefined; + } + let scale = 1; + if (sizeText.includes('GB')) { + scale = 1024 * 1024 * 1024 + } else if (sizeText.includes('MB')) { + scale = 1024 * 1024; + } else if (sizeText.includes('KB') || sizeText.includes('kB')) { + scale = 1024; + } + return Math.floor(parseFloat(sizeText.replace(/[',]/g, '')) * scale); +} + +function jitter() { + return Promises.delay(minDelay + Math.round(Math.random() * jitterDelay)) +} + +module.exports = { torrent, search, browse }; diff --git a/scraper/scrapers/eztv/eztv_scraper.js b/scraper/scrapers/eztv/eztv_scraper.js new file mode 100644 index 0000000..ff0e656 --- /dev/null +++ b/scraper/scrapers/eztv/eztv_scraper.js @@ -0,0 +1,85 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const { parse } = require('parse-torrent-title'); +const eztv = require('./eztv_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); +const { isEpisodeImdbId } = require('../../lib/metadata'); + +const NAME = 'EZTV'; +const UNTIL_PAGE = 10; + +const entryLimiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent, getImdbIdsMethod) { + // return getImdbIdsMethod() + // .then(imdbIds => Promise.all(imdbIds.map(imdbId => limiter.schedule(() => eztv.search(imdbId))))) + // .then(results => results.reduce((a, b) => a.concat(b), [])) + // .catch(() => limiter.schedule(() => eztv.torrent(torrent.torrentId))); + return Promise.resolve([]); +} + +async function scrapeLatestTorrents() { + return scrapeLatestTorrentsForCategory(); +} + +async function scrapeLatestTorrentsForCategory(page = 1) { + console.log(`Scrapping ${NAME} page ${page}`); + return eztv.browse(({ page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] due: `, error); + // return Promises.delay(30000).then(() => scrapeLatestTorrentsForCategory(page)) + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(t => entryLimiter.schedule(() => processTorrentRecord(t))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + if (!record || !record.size) { + return Promise.resolve('Invalid torrent record'); + } + + // imdb id for talk shows is usually incorrect on eztv + const parsedTitle = parse(record.name); + const dateEpisode = !parsedTitle.season && parsedTitle.date; + if (dateEpisode && await isEpisodeImdbId(record.imdbId)) { + delete record.imdbId; + } + + const torrent = { + infoHash: record.infoHash, + provider: NAME, + torrentId: record.torrentId, + title: record.name.replace(/\t|\s+/g, ' ').trim(), + type: Type.SERIES, + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + imdbId: record.imdbId, + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/horriblesubs/horriblesubs_api.js b/scraper/scrapers/horriblesubs/horriblesubs_api.js new file mode 100644 index 0000000..aff3cbb --- /dev/null +++ b/scraper/scrapers/horriblesubs/horriblesubs_api.js @@ -0,0 +1,137 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const moment = require('moment'); +const Promises = require('../../lib/promises'); + +const defaultUrl = 'https://horriblesubs.info'; +const defaultTimeout = 10000; + +function allShows(config = {}) { + return _getContent('/shows/', config) + .then(($) => $('div[class="ind-show"]') + .map((index, element) => $(element).children('a')) + .map((index, element) => ({ + title: element.attr('title'), + url: `${config.proxyUrl || defaultUrl}${element.attr('href')}` + })).get()); +} + +async function showData(showInfo, config = {}) { + const showEndpoint = (showInfo.url || showInfo).match(/\/show.+/)[0]; + const title = showInfo.title; + const showId = await _getShowId(showEndpoint); + const packEntries = await _getShowEntries(showId, title, 'batch', config); + const singleEntries = await _getShowEntries(showId, title, 'show', config); + + return { + title: title, + url: showInfo.url || showInfo, + showId: showId, + singleEpisodes: singleEntries, + packEpisodes: packEntries + }; +} + +async function getLatestEntries(config = {}) { + return _getAllLatestEntries(config) + .then((entries) => Promises.sequence(entries.map((entry) => () => _findLatestEntry(entry, config)))) + .then((entries) => entries.filter((entry) => entry)) +} + +function _getContent(endpoint, config = {},) { + const baseUrl = config.proxyUrl || defaultUrl; + const timeout = config.timeout || defaultTimeout; + const url = endpoint.startsWith('http') + ? endpoint.replace(/https?:\/\/[^/]+/, baseUrl) + : `${baseUrl}${endpoint}`; + + return needle('get', url, { open_timeout: timeout }) + .then((response) => response.body) + .then((body) => cheerio.load(body)); +} + +function _getShowId(showEndpoint) { + return _getContent(showEndpoint.replace(/(?:#\d+)?\/?$/, '/')) + .then($ => $('div.entry-content').find('script').html().match(/var hs_showid = (\d+)/)[1]); +} + +function _getShowEntries(animeId, animeTitle, type, config) { + return _getAllEntries(animeId, type, config) + .then((entries) => entries.filter((entry) => entry.title === animeTitle)); +} + +function _getAllEntries(animeId, type, config, page = 0, autoExtend = true) { + const entriesEndpoint = `/api.php?method=getshows&type=${type}&showid=${animeId}&nextid=${page}`; + return _getEntries(entriesEndpoint, config) + .then((entries) => !autoExtend || !entries.length ? entries : + _getAllEntries(animeId, type, config, page + 1) + .then((nextEntries) => entries.concat(nextEntries))); +} + +function _getEntries(endpoint, config) { + return _getContent(endpoint, config) + .then(($) => $('div[class="rls-info-container"]') + .map((index, element) => ({ + title: $(element).find('a[class="rls-label"]').contents() + .filter((i, el) => el.nodeType === 3).first().text().trim(), + episode: $(element).find('a[class="rls-label"]').find('strong').text(), + uploadDate: _parseDate($(element).find('a[class="rls-label"]').find('span[class="rls-date"]').text()), + mirrors: $(element).find('div[class="rls-links-container"]').children() + .map((indexLink, elementLink) => ({ + resolution: $(elementLink).attr('id').match(/\d+p$/)[0], + magnetLink: $(elementLink).find('a[title="Magnet Link"]').attr('href'), + torrentLink: $(elementLink).find('a[title="Torrent Link"]').attr('href') + })).get() + })).get()); +} + +function _getAllLatestEntries(config, page = 0) { + const pageParam = page === 0 ? '' : `&nextid=${page}`; + const entriesEndpoint = `/api.php?method=getlatest${pageParam}`; + return _getContent(entriesEndpoint, config) + .then(($) => $('li a') + .map((index, element) => ({ + urlEndpoint: $(element).attr('href'), + episode: $(element).find('strong').text() + })).get()) + .then((entries) => entries.length < 12 + ? entries + : _getAllLatestEntries(config, page + 1) + .then((nextEntries) => entries.concat(nextEntries))); +} + +async function _findLatestEntry(entry, config) { + const showId = await _getShowId(entry.urlEndpoint); + let foundEntry; + let page = 0; + let reachedEnd = false; + + while (!foundEntry && !reachedEnd) { + const allEntries = await _getAllEntries(showId, 'show', config, page, false); + foundEntry = allEntries.filter((e) => e.episode === entry.episode)[0]; + page = page + 1; + reachedEnd = allEntries.length === 0; + } + + if (!foundEntry) { + return; + } + return { + title: foundEntry.title, + url: entry.urlEndpoint, + showId: showId, + singleEpisodes: [foundEntry] + }; +} + +function _parseDate(date) { + if (date.match(/today/i)) { + return moment().toDate(); + } else if (date.match(/yesterday/i)) { + return moment().subtract(1, 'day').toDate(); + } + return moment(date, 'MM/DD/YYYY').toDate(); +} + +module.exports = { allShows, showData, getLatestEntries, _getShowId }; + diff --git a/scraper/scrapers/horriblesubs/horriblesubs_mapping.json b/scraper/scrapers/horriblesubs/horriblesubs_mapping.json new file mode 100644 index 0000000..1b94e30 --- /dev/null +++ b/scraper/scrapers/horriblesubs/horriblesubs_mapping.json @@ -0,0 +1,5636 @@ +{ + "Absolute Duo": { + "showId": "1", + "kitsu_id": "8641" + }, + "Ace of Diamond": { + "showId": "2", + "kitsu_id": "7699" + }, + "Ace of Diamond S2": { + "showId": "3", + "kitsu_id": "10741" + }, + "Ai-Mai-Mi": { + "showId": "4", + "kitsu_id": "7382" + }, + "Ai-Mai-Mi - Mousou Catastrophie": { + "showId": "5", + "kitsu_id": "8498" + }, + "AIURA": { + "showId": "6", + "kitsu_id": "7576" + }, + "Akagami no Shirayukihime": { + "showId": "7", + "kitsu_id": "10621" + }, + "Akame ga Kill!": { + "showId": "8", + "kitsu_id": "8270" + }, + "Akatsuki no Yona": { + "showId": "9", + "kitsu_id": "8648" + }, + "AKB0048": { + "showId": "10", + "kitsu_id": "6678" + }, + "Aku no Hana": { + "showId": "11", + "kitsu_id": "7387" + }, + "Akuma no Riddle": { + "showId": "12", + "kitsu_id": "7844" + }, + "Aldnoah Zero": { + "showId": "13", + "kitsu_id": "8297" + }, + "Ame-iro Cocoa": { + "showId": "14", + "kitsu_id": "10095" + }, + "Amnesia": { + "showId": "15", + "kitsu_id": "7209" + }, + "Anime de Wakaru Shinryounaika": { + "showId": "16", + "kitsu_id": "9786" + }, + "Ano Natsu de Matteru": { + "showId": "17", + "kitsu_id": "6508" + }, + "Anohana (Live Action)": { + "showId": "18" + }, + "Another": { + "showId": "19", + "kitsu_id": "6462" + }, + "Ao Haru Ride": { + "showId": "20", + "kitsu_id": "8246" + }, + "Aoharu x Kikanjuu": { + "showId": "21", + "kitsu_id": "10716" + }, + "Aoi Sekai no Chuushin de": { + "showId": "22", + "kitsu_id": "7220" + }, + "Aquarion Logos": { + "showId": "23", + "kitsu_id": "10764" + }, + "Arata Kangatari": { + "showId": "24", + "kitsu_id": "7448" + }, + "Argevollen": { + "showId": "25", + "kitsu_id": "8401" + }, + "Arpeggio of Blue Steel - Ars Nova": { + "showId": "26", + "kitsu_id": "7769" + }, + "Arslan Senki": { + "showId": "27", + "kitsu_id": "9972" + }, + "Arslan Senki S2": { + "showId": "27", + "kitsu_id": "11477" + }, + "Ashita no Joe 2": { + "showId": "28", + "kitsu_id": "2646" + }, + "Assassination Classroom": { + "showId": "29", + "kitsu_id": "8640" + }, + "Baby Steps": { + "showId": "30", + "kitsu_id": "8093" + }, + "Baby Steps 2": { + "showId": "31", + "kitsu_id": "9142" + }, + "BAKUMATSU GIJINDEN ROMAN": { + "showId": "32", + "kitsu_id": "7388" + }, + "Bakumatsu Rock": { + "showId": "33", + "kitsu_id": "8533" + }, + "Barakamon": { + "showId": "34", + "kitsu_id": "8026" + }, + "Battle Girls - Time Paradox": { + "showId": "35", + "kitsu_id": "6123" + }, + "Beelzebub": { + "showId": "36", + "kitsu_id": "5766" + }, + "Bikini Warriors": { + "showId": "37", + "kitsu_id": "10920" + }, + "Binan Koukou Chikyuu Bouei-bu Love!": { + "showId": "38", + "kitsu_id": "9173" + }, + "Black Bullet": { + "showId": "39", + "kitsu_id": "8052" + }, + "Blade and Soul": { + "showId": "40", + "kitsu_id": "8293" + }, + "BlazBlue - Alter Memory": { + "showId": "41", + "kitsu_id": "7722" + }, + "Bleach": { + "showId": "42", + "kitsu_id": "244" + }, + "Blood Lad": { + "showId": "43", + "kitsu_id": "6552" + }, + "Blood-C": { + "showId": "44", + "kitsu_id": "6203" + }, + "Boku no Imouto wa Osaka Okan": { + "showId": "45", + "kitsu_id": "7423" + }, + "Bokura wa Minna Kawaisou": { + "showId": "46", + "kitsu_id": "8094" + }, + "Bonjour Sweet Love Patisserie": { + "showId": "47", + "kitsu_id": "8895" + }, + "Bottom Biting Bug": { + "showId": "48", + "kitsu_id": "7273" + }, + "Bottom Biting Bug S2": { + "showId": "48", + "kitsu_id": "7976" + }, + "Bottom Biting Bug S3": { + "showId": "48", + "kitsu_id": "9520" + }, + "Bottom Biting Bug S4": { + "showId": "48", + "kitsu_id": "11590" + }, + "Brave 10": { + "showId": "52", + "kitsu_id": "6481" + }, + "Brothers Conflict": { + "showId": "53", + "kitsu_id": "7280" + }, + "Brynhildr in the Darkness": { + "showId": "54", + "kitsu_id": "7996" + }, + "BTOOOM!": { + "showId": "55", + "kitsu_id": "7113" + }, + "Buddy Complex": { + "showId": "56", + "kitsu_id": "8139" + }, + "Buddy Complex Final Chapter": { + "showId": "56", + "kitsu_id": "8734" + }, + "Campione!": { + "showId": "58", + "kitsu_id": "6702" + }, + "Captain Earth": { + "showId": "59", + "kitsu_id": "7987" + }, + "Cardfight!! Vanguard": { + "showId": "60", + "kitsu_id": "5781" + }, + "Cardfight!! Vanguard (Asia Circuit)": { + "showId": "60", + "kitsu_id": "6893" + }, + "Cardfight!! Vanguard Legion Mate": { + "showId": "60", + "kitsu_id": "8264" + }, + "Cardfight!! Vanguard Link Joker": { + "showId": "60", + "kitsu_id": "7283" + }, + "Cardfight!! Vanguard G": { + "showId": "62", + "kitsu_id": "9781" + }, + "Chaos Dragon": { + "showId": "65", + "kitsu_id": "10619" + }, + "Charlotte": { + "showId": "66", + "kitsu_id": "10103" + }, + "Chihayafuru": { + "showId": "67", + "kitsu_id": "6355" + }, + "Chihayafuru S2": { + "showId": "68", + "kitsu_id": "7123" + }, + "Chitose Get You!": { + "showId": "69", + "kitsu_id": "7107" + }, + "Chuunibyou demo Koi ga Shitai! Ren": { + "showId": "70", + "kitsu_id": "7705" + }, + "Classroom Crisis": { + "showId": "71", + "kitsu_id": "10782" + }, + "Code Breaker": { + "showId": "72", + "kitsu_id": "6570" + }, + "Comet Lucifer": { + "showId": "73", + "kitsu_id": "11234" + }, + "Concrete Revolutio": { + "showId": "74", + "kitsu_id": "11165" + }, + "Coppelion": { + "showId": "75", + "kitsu_id": "5746" + }, + "Croisee in a Foreign Labyrinth": { + "showId": "76", + "kitsu_id": "5950" + }, + "Cross Ange": { + "showId": "77", + "kitsu_id": "8653" + }, + "Cuticle Detective Inaba": { + "showId": "78", + "kitsu_id": "7213" + }, + "D-Frag!": { + "showId": "79", + "kitsu_id": "8001" + }, + "Da Capo III": { + "showId": "80", + "kitsu_id": "7172" + }, + "Daimidaler": { + "showId": "81", + "kitsu_id": "8163" + }, + "Daitoshokan no Hitsujikai": { + "showId": "82", + "kitsu_id": "8002" + }, + "Dance with Devils": { + "showId": "83", + "kitsu_id": "10453" + }, + "Danchigai": { + "showId": "84", + "kitsu_id": "10620" + }, + "Danganronpa - The Animation": { + "showId": "85", + "kitsu_id": "7469" + }, + "DanMachi": { + "showId": "86", + "kitsu_id": "9962" + }, + "Danna ga Nani wo Itteiru ka Wakaranai Ken": { + "showId": "87", + "kitsu_id": "8891" + }, + "Danna ga Nani wo Itteiru ka Wakaranai Ken S2": { + "showId": "88", + "kitsu_id": "10148" + }, + "Dansai Bunri no Crime Edge": { + "showId": "89", + "kitsu_id": "7411" + }, + "Dantalian no Shoka": { + "showId": "90", + "kitsu_id": "5530" + }, + "Date A Live S2": { + "showId": "91", + "kitsu_id": "7864" + }, + "DD Hokuto no Ken 2 - Ichigo Aji+": { + "showId": "92", + "kitsu_id": "11080" + }, + "Deadman Wonderland": { + "showId": "93", + "kitsu_id": "4765" + }, + "Death Parade": { + "showId": "94", + "kitsu_id": "9969" + }, + "Denki-gai no Honya-san": { + "showId": "95", + "kitsu_id": "8629" + }, + "Denpa Kyoushi": { + "showId": "96", + "kitsu_id": "10235" + }, + "Detective Conan": { + "showId": "97", + "kitsu_id": "210" + }, + "DEVIL SURVIVOR 2 THE ANIMATION": { + "showId": "98", + "kitsu_id": "7446" + }, + "Diabolik Lovers": { + "showId": "99", + "kitsu_id": "7707" + }, + "Diabolik Lovers More, Blood": { + "showId": "100", + "kitsu_id": "10454" + }, + "Dog Days S2": { + "showId": "102", + "kitsu_id": "6598" + }, + "Dog Days S3": { + "showId": "103", + "kitsu_id": "7417" + }, + "Donten ni Warau": { + "showId": "104", + "kitsu_id": "7907" + }, + "Dragon Collection": { + "showId": "105", + "kitsu_id": "8352" + }, + "DRAMAtical Murder": { + "showId": "106", + "kitsu_id": "8331" + }, + "Durarara!! X2": { + "showId": "107", + "kitsu_id": "8314" + }, + "Dusk Maiden of Amnesia": { + "showId": "108", + "kitsu_id": "6734" + }, + "Ebiten": { + "showId": "109", + "kitsu_id": "7077" + }, + "Engaged to the Unidentified": { + "showId": "110", + "kitsu_id": "8027" + }, + "Etotama": { + "showId": "111", + "kitsu_id": "9976" + }, + "Eyeshield 21": { + "showId": "112", + "kitsu_id": "6" + }, + "Fairy Tail": { + "showId": "113", + "kitsu_id": "4676" + }, + "Fairy Tail S2": { + "showId": "114", + "kitsu_id": "8203" + }, + "Fantasista Doll": { + "showId": "115", + "kitsu_id": "7332" + }, + "Fate Kaleid Liner PRISMA ILLYA": { + "showId": "116", + "kitsu_id": "7173" + }, + "Fate Kaleid Liner PRISMA ILLYA 2wei Herz!": { + "showId": "117", + "kitsu_id": "9095" + }, + "Fate Kaleid Liner PRISMA ILLYA 2wei!": { + "showId": "118", + "kitsu_id": "8003" + }, + "Fate Stay Night - Unlimited Blade Works": { + "showId": "119", + "kitsu_id": "7882" + }, + "Fate Zero": { + "showId": "120", + "kitsu_id": "6028" + }, + "Fate Zero S2": { + "showId": "120", + "kitsu_id": "7658" + }, + "Folktales from Japan": { + "showId": "122", + "kitsu_id": "6897" + }, + "Free!": { + "showId": "123", + "kitsu_id": "7664" + }, + "Free! (Dub)": { + "showId": "123", + "kitsu_id": "7664" + }, + "Free! Eternal Summer": { + "showId": "124", + "kitsu_id": "8273" + }, + "Freezing Vibration": { + "showId": "125", + "kitsu_id": "7710" + }, + "Fuse Memoirs of the Hunter Girl": { + "showId": "126", + "kitsu_id": "6942" + }, + "Fushigi na Somera-chan": { + "showId": "127", + "kitsu_id": "10924" + }, + "Fuuun Ishin Dai Shogun": { + "showId": "128", + "kitsu_id": "8146" + }, + "Gakkou Gurashi!": { + "showId": "129", + "kitsu_id": "8644" + }, + "Gakusen Toshi Asterisk": { + "showId": "130", + "kitsu_id": "10857" + }, + "Galaxy Express 999": { + "showId": "131", + "kitsu_id": "1174" + }, + "Galilei Donna": { + "showId": "132", + "kitsu_id": "7836" + }, + "Gangsta": { + "showId": "133", + "kitsu_id": "8576" + }, + "Garo - The Animation": { + "showId": "134", + "kitsu_id": "8409" + }, + "Garo - The Crimson Moon": { + "showId": "135", + "kitsu_id": "10045" + }, + "Gatchaman Crowds": { + "showId": "136", + "kitsu_id": "7681" + }, + "Gatchaman Crowds Insight": { + "showId": "137", + "kitsu_id": "8180" + }, + "GATE": { + "showId": "138", + "kitsu_id": "10085" + }, + "gdgd Fairies 2": { + "showId": "139", + "kitsu_id": "7498" + }, + "Gekkan Shoujo Nozaki-kun": { + "showId": "140", + "kitsu_id": "8402" + }, + "Gen'ei o Kakeru Taiyou - Il Sole Penetra le Illusioni": { + "showId": "141", + "kitsu_id": "7670" + }, + "Genshiken Nidaime": { + "showId": "142", + "kitsu_id": "7677" + }, + "Ghost in the Shell Arise - Alternative Architecture": { + "showId": "143", + "kitsu_id": "10229" + }, + "Gifuu Doudou!! Kanetsugu to Keiji": { + "showId": "144", + "kitsu_id": "7744" + }, + "Gin no Saji": { + "showId": "145", + "kitsu_id": "7553" + }, + "Gin no Saji S2": { + "showId": "146", + "kitsu_id": "7860" + }, + "Gingitsune": { + "showId": "147", + "kitsu_id": "7703" + }, + "Gintama": { + "showId": "148", + "kitsu_id": "818" + }, + "Gintama Jump Special Anime Festa 2015": { + "showId": "148", + "kitsu_id": "11545" + }, + "Gintama Rerun": { + "showId": "148" + }, + "Girl Friend Beta": { + "showId": "150", + "kitsu_id": "8632" + }, + "GIRLS und PANZER": { + "showId": "151", + "kitsu_id": "7904" + }, + "GJ-bu": { + "showId": "152", + "kitsu_id": "7168" + }, + "Glasslip": { + "showId": "153", + "kitsu_id": "8325" + }, + "Gochuumon wa Usagi Desu ka": { + "showId": "154", + "kitsu_id": "8095" + }, + "Gochuumon wa Usagi Desu ka S2": { + "showId": "155", + "kitsu_id": "10346" + }, + "GOD EATER": { + "showId": "156", + "kitsu_id": "9130" + }, + "Golden Time": { + "showId": "157", + "kitsu_id": "7708" + }, + "Grisaia no Kajitsu": { + "showId": "158", + "kitsu_id": "7982" + }, + "Grisaia no Meikyuu": { + "showId": "159", + "kitsu_id": "10154" + }, + "Grisaia no Rakuen": { + "showId": "160", + "kitsu_id": "10155" + }, + "Gugure! Kokkuri-san": { + "showId": "161", + "kitsu_id": "8333" + }, + "Gundam Build Fighters": { + "showId": "162", + "kitsu_id": "7852" + }, + "Gundam Build Fighters Try": { + "showId": "163", + "kitsu_id": "8637" + }, + "Gundam Reconguista in G": { + "showId": "164", + "kitsu_id": "8391" + }, + "Gundam Unicorn": { + "showId": "165", + "kitsu_id": "4525" + }, + "Gunslinger Stratos": { + "showId": "166", + "kitsu_id": "10062" + }, + "Hackadoll the Animation": { + "showId": "167", + "kitsu_id": "10906" + }, + "Haikyuu!!": { + "showId": "168", + "kitsu_id": "8133" + }, + "Haikyuu!! S2": { + "showId": "169", + "kitsu_id": "10076" + }, + "Haiyore! Nyaruko-san": { + "showId": "170", + "kitsu_id": "6599" + }, + "Haiyore! Nyaruko-san W": { + "showId": "171", + "kitsu_id": "7295" + }, + "Hajime no Ippo - Rising": { + "showId": "172", + "kitsu_id": "7855" + }, + "Hakkenden - Eight Dogs of the East": { + "showId": "173", + "kitsu_id": "7284" + }, + "Hakkenden - Eight Dogs of the East S2": { + "showId": "174", + "kitsu_id": "7679" + }, + "Hakuoki Reimeiroku": { + "showId": "175", + "kitsu_id": "6884" + }, + "Hamatora": { + "showId": "176", + "kitsu_id": "8057" + }, + "Hanamonogatari": { + "showId": "177", + "kitsu_id": "8032" + }, + "Hanasaku Iroha": { + "showId": "178", + "kitsu_id": "5657" + }, + "Hanayamata": { + "showId": "179", + "kitsu_id": "8138" + }, + "Hayate no Gotoku! Can't Take My Eyes Off You": { + "showId": "180", + "kitsu_id": "7148" + }, + "Hayate no Gotoku! Cuties": { + "showId": "181", + "kitsu_id": "7561" + }, + "Heavy Object": { + "showId": "182", + "kitsu_id": "9731" + }, + "Hello!! Kiniro Mosaic": { + "showId": "183", + "kitsu_id": "8431" + }, + "Hentai Ouji to Warawanai Neko": { + "showId": "184", + "kitsu_id": "7233" + }, + "Hero Bank": { + "showId": "185", + "kitsu_id": "8282" + }, + "Hetalia - The World Twinkle": { + "showId": "186", + "kitsu_id": "10057" + }, + "Hi-sCoool! SeHa Girl": { + "showId": "187", + "kitsu_id": "8428" + }, + "Hibike! Euphonium": { + "showId": "188", + "kitsu_id": "9980" + }, + "High School Star Musical": { + "showId": "189", + "kitsu_id": "10783" + }, + "Highschool DxD BorN": { + "showId": "190", + "kitsu_id": "8514" + }, + "Hiiro no Kakera": { + "showId": "191", + "kitsu_id": "6739" + }, + "Hiiro no Kakera S2": { + "showId": "192", + "kitsu_id": "7146" + }, + "Himegoto": { + "showId": "193", + "kitsu_id": "8306" + }, + "Himouto! Umaru-chan": { + "showId": "194", + "kitsu_id": "10067" + }, + "Hitsugi no Chaika": { + "showId": "195", + "kitsu_id": "8008" + }, + "Hitsugi no Chaika - Avenging Battle": { + "showId": "196", + "kitsu_id": "8577" + }, + "Houkago no Pleiades": { + "showId": "197", + "kitsu_id": "5937" + }, + "Hozuki no Reitetsu": { + "showId": "198", + "kitsu_id": "8009" + }, + "Hunter x Hunter": { + "showId": "199", + "kitsu_id": "115" + }, + "Hyakka Ryouran Samurai Bride": { + "showId": "200", + "kitsu_id": "7244" + }, + "Hyperdimension Neptunia - The Animation": { + "showId": "202", + "kitsu_id": "7379" + }, + "ImoCho - Another Shitty Sister LN Adaptation": { + "showId": "204", + "kitsu_id": "8060" + }, + "ImoCho - Another Shitty Sister Manga Adaptation": { + "showId": "204", + "kitsu_id": "8060" + }, + "Inari, Konkon, Koi Iroha": { + "showId": "205", + "kitsu_id": "7988" + }, + "Infinite Stratos 2": { + "showId": "206", + "kitsu_id": "7733" + }, + "Inou Battle wa Nichijou-kei no Naka de": { + "showId": "207", + "kitsu_id": "8452" + }, + "Inu to Hasami wa Tsukaiyou": { + "showId": "208", + "kitsu_id": "7673" + }, + "Inu x Boku Secret Service": { + "showId": "209", + "kitsu_id": "6439" + }, + "Inugami-san to Nekoyama-san": { + "showId": "210", + "kitsu_id": "8263" + }, + "Ishida to Asakura": { + "showId": "211", + "kitsu_id": "7404" + }, + "ISUCA": { + "showId": "212", + "kitsu_id": "8645" + }, + "Itoshi no Muco": { + "showId": "213", + "kitsu_id": "10978" + }, + "Ixion Saga DT": { + "showId": "214", + "kitsu_id": "7165" + }, + "Jinrui wa Suitai Shimashita": { + "showId": "215", + "kitsu_id": "6146" + }, + "Jitsu wa Watashi wa": { + "showId": "216", + "kitsu_id": "10350" + }, + "JK Meshi!": { + "showId": "217", + "kitsu_id": "11369" + }, + "JoJo's Bizarre Adventure - Stardust Crusaders": { + "showId": "218", + "kitsu_id": "8063" + }, + "JoJo's Bizarre Adventure - Stardust Crusaders Egypt Arc": { + "showId": "218", + "kitsu_id": "8739" + }, + "Jormungand": { + "showId": "220", + "kitsu_id": "6726" + }, + "Joukamachi no Dandelion": { + "showId": "221", + "kitsu_id": "10017" + }, + "Junjou Romantica 3": { + "showId": "222", + "kitsu_id": "8728" + }, + "K": { + "showId": "223", + "kitsu_id": "7125" + }, + "K - Return of Kings": { + "showId": "224", + "kitsu_id": "9964" + }, + "Kaasan Mom's Life": { + "showId": "225", + "kitsu_id": "4432" + }, + "Kagewani": { + "showId": "226", + "kitsu_id": "10860" + }, + "Kagewani S2": { + "showId": "226", + "kitsu_id": "11822" + }, + "Kaiji - Ultimate Survivor": { + "showId": "227", + "kitsu_id": "2713" + }, + "Kaiji S2 - Against All Rules": { + "showId": "228", + "kitsu_id": "6109" + }, + "Kaitou Joker": { + "showId": "229", + "kitsu_id": "8664" + }, + "Kamigami no Asobi": { + "showId": "230", + "kitsu_id": "8160" + }, + "Kamisama Dolls": { + "showId": "231", + "kitsu_id": "6153" + }, + "Kamisama Kiss": { + "showId": "232", + "kitsu_id": "7157" + }, + "Kamisama Kiss 2": { + "showId": "233", + "kitsu_id": "8716" + }, + "Kamisama no Inai Nichiyoubi": { + "showId": "234", + "kitsu_id": "7358" + }, + "Kamisama no Memo-chou": { + "showId": "235", + "kitsu_id": "6244" + }, + "Kanojo ga Flag wo Oraretara": { + "showId": "236", + "kitsu_id": "8011" + }, + "Kantai Collection": { + "showId": "237", + "kitsu_id": "8039" + }, + "Karen Senki": { + "showId": "238", + "kitsu_id": "9100" + }, + "Kekkai Sensen": { + "showId": "239", + "kitsu_id": "8646" + }, + "Kill la Kill": { + "showId": "240", + "kitsu_id": "7712" + }, + "Kimi to Boku": { + "showId": "241", + "kitsu_id": "6191" + }, + "Kimi to Boku 2": { + "showId": "242", + "kitsu_id": "6581" + }, + "Kindaichi Case Files R": { + "showId": "243", + "kitsu_id": "8310" + }, + "Kindaichi Case Files R S2": { + "showId": "243", + "kitsu_id": "11211" + }, + "Kiniro Mosaic": { + "showId": "245", + "kitsu_id": "7501" + }, + "Kitakubu Katsudou Kiroku": { + "showId": "246", + "kitsu_id": "7676" + }, + "Kokoro Connect": { + "showId": "247", + "kitsu_id": "6626" + }, + "Komori-san wa Kotowarenai!": { + "showId": "248", + "kitsu_id": "11208" + }, + "Kono Naka ni Hitori, Imouto ga Iru!": { + "showId": "249", + "kitsu_id": "6947" + }, + "Kotoura-san": { + "showId": "250", + "kitsu_id": "7245" + }, + "Koufuku Graffiti": { + "showId": "251", + "kitsu_id": "8647" + }, + "Kuroko's Basketball": { + "showId": "252", + "kitsu_id": "6595" + }, + "Kuroko's Basketball 2": { + "showId": "252", + "kitsu_id": "7545" + }, + "Kuroko's Basketball 3": { + "showId": "252", + "kitsu_id": "8524" + }, + "Kuroshitsuji - Book of Circus": { + "showId": "255", + "kitsu_id": "8268" + }, + "Kuusen Madoushi Kouhosei no Kyoukan": { + "showId": "256", + "kitsu_id": "8650" + }, + "Kyoukai no Kanata": { + "showId": "257", + "kitsu_id": "7714" + }, + "Kyoukai no Rinne": { + "showId": "258", + "kitsu_id": [ + "10018", + "11366", + "12561" + ] + }, + "Kyoukai Senjou no Horizon S2": { + "showId": "259", + "kitsu_id": "6746" + }, + "Kyousougiga": { + "showId": "260", + "kitsu_id": "7870" + }, + "La Corda d'Oro Blue Sky": { + "showId": "261", + "kitsu_id": "8012" + }, + "La storia della Arcana Famiglia": { + "showId": "262", + "kitsu_id": "6859" + }, + "Lance N' Masques": { + "showId": "263", + "kitsu_id": "8666" + }, + "Little Busters!": { + "showId": "264", + "kitsu_id": "7005" + }, + "Little Busters! Refrain": { + "showId": "265", + "kitsu_id": "7704" + }, + "Little Witch Academia The Enchanted Parade": { + "showId": "266", + "kitsu_id": "7862" + }, + "Locodol": { + "showId": "267", + "kitsu_id": "8267" + }, + "Log Horizon": { + "showId": "268", + "kitsu_id": "7622" + }, + "Log Horizon 2": { + "showId": "269", + "kitsu_id": "8313" + }, + "Love Lab": { + "showId": "270", + "kitsu_id": "7410" + }, + "Love Live! School Idol Project S2": { + "showId": "271", + "kitsu_id": "7871" + }, + "Love Live! School Idol Project": { + "showId": "272", + "kitsu_id": "7203" + }, + "Love Stage!!": { + "showId": "273", + "kitsu_id": "7767" + }, + "Lychee Light Club": { + "showId": "274", + "kitsu_id": "7202" + }, + "M3 - Sono Kuroki Hagane": { + "showId": "275", + "kitsu_id": "8335" + }, + "Madan no Ou to Vanadis": { + "showId": "276", + "kitsu_id": "8630" + }, + "Magi": { + "showId": "277", + "kitsu_id": "7129" + }, + "Magi S2": { + "showId": "278", + "kitsu_id": "7696" + }, + "Magic Kaito 1412": { + "showId": "279", + "kitsu_id": "8636" + }, + "Magical Girl Lyrical Nanoha The MOVIE 2nd": { + "showId": "280", + "kitsu_id": "6056" + }, + "Magical Warfare": { + "showId": "281", + "kitsu_id": "7879" + }, + "Mahou Shoujo Taisen": { + "showId": "282", + "kitsu_id": "8380" + }, + "Mahouka": { + "showId": "283", + "kitsu_id": "8053" + }, + "Majestic Prince": { + "showId": "284", + "kitsu_id": "7325" + }, + "Majikoi~Oh! Samurai Girls": { + "showId": "285", + "kitsu_id": "6081" + }, + "Majimoji Rurumo": { + "showId": "286", + "kitsu_id": "8459" + }, + "Majimoji Rurumo OVA": { + "showId": "286", + "kitsu_id": "42121" + }, + "Majin Bone": { + "showId": "287", + "kitsu_id": "8283" + }, + "Makai Ouji - Devils and Realist": { + "showId": "288", + "kitsu_id": "7544" + }, + "Maken-ki! Two": { + "showId": "289", + "kitsu_id": "7275" + }, + "Makura no Danshi": { + "showId": "290", + "kitsu_id": "10907" + }, + "Mangaka-san to Assistant-san to": { + "showId": "291", + "kitsu_id": "8148" + }, + "Mangirl!": { + "showId": "292", + "kitsu_id": "7071" + }, + "Maoyuu Maou Yuusha": { + "showId": "293", + "kitsu_id": "7174" + }, + "Maria the Virgin Witch": { + "showId": "294", + "kitsu_id": "8951" + }, + "Medaka Box": { + "showId": "295", + "kitsu_id": "6591" + }, + "Medaka Box S2": { + "showId": "296", + "kitsu_id": "7132" + }, + "Meganebu!": { + "showId": "297", + "kitsu_id": "7851" + }, + "Mekakucity Actors": { + "showId": "298", + "kitsu_id": "8000" + }, + "Mikagura Gakuen Kumikyoku": { + "showId": "299", + "kitsu_id": "10072" + }, + "Military!": { + "showId": "300", + "kitsu_id": "8850" + }, + "Million Doll": { + "showId": "301", + "kitsu_id": "10465" + }, + "Miss Monochrome": { + "showId": "302", + "kitsu_id": "7911" + }, + "Miss Monochrome S2": { + "showId": "303", + "kitsu_id": "10765" + }, + "Miss Monochrome S3": { + "showId": "304", + "kitsu_id": "11370" + }, + "Mobile Suit Gundam - Iron-Blooded Orphans": { + "showId": "305", + "kitsu_id": "11206" + }, + "Mobile Suit Gundam The Origin": { + "showId": "306", + "kitsu_id": "6415" + }, + "Momo Kyun Sword": { + "showId": "307", + "kitsu_id": "8557" + }, + "Mondaijitachi ga Isekai Kara Kuru Sou Desu yo": { + "showId": "308", + "kitsu_id": "7239" + }, + "Monogatari Series Second Season": { + "showId": "309", + "kitsu_id": "7573" + }, + "Monster Musume no Iru Nichijou": { + "showId": "310", + "kitsu_id": "10748" + }, + "Moretsu Pirates": { + "showId": "311", + "kitsu_id": "5531" + }, + "Moritasan wa Mukuchi": { + "showId": "312", + "kitsu_id": "6285" + }, + "Moyashimon Returns": { + "showId": "313", + "kitsu_id": "6957" + }, + "Mushibugyo": { + "showId": "314", + "kitsu_id": "7653" + }, + "Mushishi S2": { + "showId": "315", + "kitsu_id": "8204" + }, + "Mushishi Tokubetsu-hen - Hihamukage": { + "showId": "316", + "kitsu_id": "8112" + }, + "Muv-Luv Alternative - Total Eclipse": { + "showId": "317", + "kitsu_id": "6442" + }, + "My Sister Came - Onee-chan ga Kita": { + "showId": "318", + "kitsu_id": "8083" + }, + "Mysterious Girlfriend X": { + "showId": "319", + "kitsu_id": "6740" + }, + "Nagi no Asukara": { + "showId": "320", + "kitsu_id": "7370" + }, + "Namiuchigiwa no Muromi-san": { + "showId": "321", + "kitsu_id": "7549" + }, + "Naruto SD - Rock Lee no Seishun Full-Power Ninden": { + "showId": "322", + "kitsu_id": "6861" + }, + "Naruto Shippuuden": { + "showId": "323", + "kitsu_id": "1555" + }, + "Natsume Yuujinchou San": { + "showId": "324", + "kitsu_id": "6157" + }, + "Natsume Yuujinchou Shi": { + "showId": "325", + "kitsu_id": "6557" + }, + "Natsuyuki Rendezvous": { + "showId": "326", + "kitsu_id": "6996" + }, + "Nekogami Yaoyorozu": { + "showId": "327", + "kitsu_id": "5947" + }, + "Nichijou": { + "showId": "328", + "kitsu_id": "6062" + }, + "Ninja Slayer": { + "showId": "329", + "kitsu_id": "8642" + }, + "Nisekoi": { + "showId": "330", + "kitsu_id": "7821" + }, + "Nisekoi S2": { + "showId": "331", + "kitsu_id": "9178" + }, + "Nisemonogatari": { + "showId": "332", + "kitsu_id": "6546" + }, + "No Game No Life": { + "showId": "333", + "kitsu_id": "7880" + }, + "No-Rin": { + "showId": "334", + "kitsu_id": "7782" + }, + "No. 6": { + "showId": "335", + "kitsu_id": "6059" + }, + "Nobunaga Concerto": { + "showId": "336", + "kitsu_id": "8558" + }, + "Nobunaga the Fool": { + "showId": "337", + "kitsu_id": "8076" + }, + "Nobunagun": { + "showId": "338", + "kitsu_id": "7771" + }, + "Non Non Biyori": { + "showId": "339", + "kitsu_id": "7711" + }, + "Non Non Biyori Repeat": { + "showId": "340", + "kitsu_id": "8410" + }, + "Noragami": { + "showId": "341", + "kitsu_id": "7881" + }, + "Noragami Aragoto": { + "showId": "342", + "kitsu_id": "10800" + }, + "NouKome": { + "showId": "343", + "kitsu_id": "7846" + }, + "Oda Nobuna no Yabou": { + "showId": "344", + "kitsu_id": "7657" + }, + "Okusama ga Seitokaichou!": { + "showId": "345", + "kitsu_id": "10069" + }, + "Okusama ga Seitokaichou! (Uncensored)": { + "showId": "345", + "kitsu_id": "10069" + }, + "One Piece": { + "showId": "347", + "kitsu_id": "12" + }, + "One Piece - Episode of Sabo": { + "showId": "348", + "kitsu_id": "11292" + }, + "One Piece 3D2Y": { + "showId": "349", + "kitsu_id": "8718" + }, + "One Week Friends": { + "showId": "350", + "kitsu_id": "8096" + }, + "One-Punch Man": { + "showId": "351", + "kitsu_id": "10740" + }, + "Onii-chan Dakedo Ai Sae Areba Kankeinai yo ne": { + "showId": "352", + "kitsu_id": "7094" + }, + "Onsen Yousei Hakone-chan": { + "showId": "353", + "kitsu_id": "11174" + }, + "Ookami Shoujo to Kuro Ouji": { + "showId": "354", + "kitsu_id": "8697" + }, + "Ore Monogatari!!": { + "showId": "355", + "kitsu_id": "10016" + }, + "Ore Twintail ni Narimasu": { + "showId": "356", + "kitsu_id": "8710" + }, + "Oreca Battle": { + "showId": "357", + "kitsu_id": "8395" + }, + "Oreimo S2": { + "showId": "358", + "kitsu_id": "7006" + }, + "Orenchi no Furo Jijou": { + "showId": "359", + "kitsu_id": "8575" + }, + "OreShura": { + "showId": "360", + "kitsu_id": "7162" + }, + "Osomatsu-san": { + "showId": "361", + "kitsu_id": "11178" + }, + "Outbreak Company": { + "showId": "362", + "kitsu_id": "7837" + }, + "OverLord": { + "showId": "363", + "kitsu_id": "9965" + }, + "Owarimonogatari": { + "showId": "364", + "kitsu_id": "11182" + }, + "Ozma": { + "showId": "365", + "kitsu_id": "6788" + }, + "Papa no Iukoto wo Kikinasai!": { + "showId": "366", + "kitsu_id": "6469" + }, + "Parasyte - the maxim": { + "showId": "367", + "kitsu_id": "8147" + }, + "Peeping Life S1": { + "showId": "368", + "kitsu_id": "4597" + }, + "Persona 4 - The Golden Animation": { + "showId": "369", + "kitsu_id": "8458" + }, + "Phi Brain S2": { + "showId": "370", + "kitsu_id": "6803" + }, + "Phi Brain S3": { + "showId": "371", + "kitsu_id": "7288" + }, + "Photo Kano": { + "showId": "372", + "kitsu_id": "7421" + }, + "Ping Pong the Animation": { + "showId": "373", + "kitsu_id": "8262" + }, + "Plastic Memories": { + "showId": "374", + "kitsu_id": "9538" + }, + "Polar Bear Cafe": { + "showId": "375", + "kitsu_id": "6821" + }, + "Poyopoyo": { + "showId": "376", + "kitsu_id": "6645" + }, + "Prison School": { + "showId": "377", + "kitsu_id": "10734" + }, + "PSYCHO-PASS": { + "showId": "378", + "kitsu_id": "7000" + }, + "PSYCHO-PASS Extended Edition": { + "showId": "378", + "kitsu_id": "8574" + }, + "PSYCHO-PASS 2": { + "showId": "379", + "kitsu_id": "7863" + }, + "Punch Line": { + "showId": "381", + "kitsu_id": "10038" + }, + "Pupa": { + "showId": "382", + "kitsu_id": "7845" + }, + "Queen's Blade Rebellion": { + "showId": "383", + "kitsu_id": "6620" + }, + "R-15": { + "showId": "384", + "kitsu_id": "6265" + }, + "Rail Wars!": { + "showId": "385", + "kitsu_id": "8155" + }, + "Rakudai Kishi no Cavalry": { + "showId": "386", + "kitsu_id": "10745" + }, + "Ranpo Kitan - Game of Laplace": { + "showId": "387", + "kitsu_id": "10039" + }, + "Re Hamatora": { + "showId": "388", + "kitsu_id": "8523" + }, + "Re-Kan!": { + "showId": "389", + "kitsu_id": "8668" + }, + "Recorder to Randoseru": { + "showId": "391", + "kitsu_id": "6519" + }, + "Recorder to Randoseru Mi": { + "showId": "392", + "kitsu_id": "7695" + }, + "Ro-Kyu-Bu - Fast Break!": { + "showId": "393", + "kitsu_id": "6246" + }, + "Robot Girls Z": { + "showId": "394", + "kitsu_id": "7875" + }, + "Robot Girls Z Plus": { + "showId": "395", + "kitsu_id": "10307" + }, + "Robotics;Notes": { + "showId": "396", + "kitsu_id": "6999" + }, + "Rokka no Yuusha": { + "showId": "397", + "kitsu_id": "10029" + }, + "Rokujouma no Shinryakusha": { + "showId": "398", + "kitsu_id": "8336" + }, + "Rowdy Sumo Wrestler Matsutaro": { + "showId": "399", + "kitsu_id": "8384" + }, + "Rozen Maiden (2013)": { + "showId": "400", + "kitsu_id": "7678" + }, + "Rurouni Kenshin": { + "showId": "401", + "kitsu_id": "27" + }, + "Ryuugajou Nanana no Maizoukin": { + "showId": "402", + "kitsu_id": "8162" + }, + "Sabagebu!": { + "showId": "403", + "kitsu_id": "8016" + }, + "Sacred Seven": { + "showId": "404", + "kitsu_id": "6058" + }, + "Saekano": { + "showId": "405", + "kitsu_id": "8406" + }, + "Sailor Moon Crystal": { + "showId": "406", + "kitsu_id": "7163" + }, + "Saint Seiya - Soul of Gold": { + "showId": "407", + "kitsu_id": "10026" + }, + "Saint Seiya Omega": { + "showId": "408", + "kitsu_id": "6850" + }, + "Saint Seiya The Lost Canvas": { + "showId": "409", + "kitsu_id": "4458" + }, + "Sakamichi no Apollon": { + "showId": "410", + "kitsu_id": "6760" + }, + "Saki - The Nationals": { + "showId": "411", + "kitsu_id": "7375" + }, + "Saki Episode of Side A": { + "showId": "412", + "kitsu_id": "6392" + }, + "Sakura Trick": { + "showId": "413", + "kitsu_id": "7978" + }, + "Sakurako-san no Ashimoto ni wa Shitai ga Umatteiru": { + "showId": "414", + "kitsu_id": "10706" + }, + "Sakurasou no Pet na Kanojo": { + "showId": "415", + "kitsu_id": "7023" + }, + "Samurai Flamenco": { + "showId": "416", + "kitsu_id": "7835" + }, + "Seiken Tsukai no World Break": { + "showId": "417", + "kitsu_id": "8339" + }, + "Seikoku no Dragonar": { + "showId": "418", + "kitsu_id": "7877" + }, + "Seirei Tsukai no Blade Dance": { + "showId": "419", + "kitsu_id": "7878" + }, + "Seitokai no Ichizon Lv.2": { + "showId": "420", + "kitsu_id": "6193" + }, + "Seitokai Yakuindomo S2": { + "showId": "421", + "kitsu_id": "8061" + }, + "Sekai de Ichiban Tsuyoku Naritai!": { + "showId": "422", + "kitsu_id": "6592" + }, + "Sekai Seifuku - Bouryaku no Zvezda": { + "showId": "423", + "kitsu_id": "8082" + }, + "selector infected WIXOSS": { + "showId": "424", + "kitsu_id": "8285" + }, + "selector spread WIXOSS": { + "showId": "425", + "kitsu_id": "8468" + }, + "Sengoku BASARA Judge End": { + "showId": "426", + "kitsu_id": "8272" + }, + "Sengoku Collection": { + "showId": "427", + "kitsu_id": "6774" + }, + "Sengoku Musou": { + "showId": "428", + "kitsu_id": "10013" + }, + "Sengoku Musou Sanada no Shou": { + "showId": "429", + "kitsu_id": "8194" + }, + "Senki Zesshou Symphogear GX": { + "showId": "430", + "kitsu_id": "8136" + }, + "Senyuu": { + "showId": "431", + "kitsu_id": "7303" + }, + "Senyuu S2": { + "showId": "431", + "kitsu_id": "7719" + }, + "Seraph of the End": { + "showId": "433", + "kitsu_id": "8736" + }, + "Seraph of the End S2": { + "showId": "434", + "kitsu_id": "10082" + }, + "Servant x Service": { + "showId": "435", + "kitsu_id": "7669" + }, + "She and Her Cat": { + "showId": "436", + "kitsu_id": "894" + }, + "Shigatsu wa Kimi no Uso": { + "showId": "437", + "kitsu_id": "8403" + }, + "Shimoneta": { + "showId": "438", + "kitsu_id": "10352" + }, + "Shin Atashinchi": { + "showId": "439", + "kitsu_id": "10977" + }, + "Shin Sekai Yori": { + "showId": "440", + "kitsu_id": "6887" + }, + "Shin Strange+": { + "showId": "441", + "kitsu_id": "8344" + }, + "Shingeki no Bahamut - Genesis": { + "showId": "442", + "kitsu_id": "8195" + }, + "Shingeki no Kyojin": { + "showId": "443", + "kitsu_id": "7442" + }, + "Shingeki no Kyojin S2": { + "showId": "443", + "kitsu_id": "8671" + }, + "Shingeki no Kyojin S3": { + "showId": "443", + "kitsu_id": [ + "13569", + "41982" + ] + }, + "Shingeki! Kyojin Chuugakkou": { + "showId": "444", + "kitsu_id": "11315" + }, + "Shinmai Maou no Testament": { + "showId": "445", + "kitsu_id": "8652" + }, + "Shinmai Maou no Testament BURST": { + "showId": "446", + "kitsu_id": "10757" + }, + "Shinryaku Ika Musume S2": { + "showId": "447", + "kitsu_id": "6156" + }, + "Shirobako": { + "showId": "448", + "kitsu_id": "8698" + }, + "Shokugeki no Soma": { + "showId": "449", + "kitsu_id": "9967" + }, + "Shokugeki no Soma S2": { + "showId": "449", + "kitsu_id": "11612" + }, + "Shomin Sample": { + "showId": "450", + "kitsu_id": "8651" + }, + "Shounen Hollywood": { + "showId": "451", + "kitsu_id": "8521" + }, + "Shounen Hollywood - Holly Stage for 50": { + "showId": "452", + "kitsu_id": "9175" + }, + "Show By Rock!!": { + "showId": "453", + "kitsu_id": "9729" + }, + "SKET Dance": { + "showId": "454", + "kitsu_id": "5908" + }, + "Slam Dunk": { + "showId": "455", + "kitsu_id": "148" + }, + "So, I Can't Play H!": { + "showId": "456", + "kitsu_id": "7656" + }, + "SoniAni - SUPER SONICO THE ANIMATION": { + "showId": "457", + "kitsu_id": "8031" + }, + "Sora no Method": { + "showId": "458", + "kitsu_id": "8337" + }, + "Sore ga Seiyuu!": { + "showId": "459", + "kitsu_id": "10153" + }, + "Soredemo Sekai wa Utsukushii": { + "showId": "460", + "kitsu_id": "8258" + }, + "Soukyuu no Fafner Dead Aggressor - Exodus": { + "showId": "461", + "kitsu_id": "7575" + }, + "Soukyuu no Fafner Dead Aggressor - Exodus S2": { + "showId": "461", + "kitsu_id": "10854" + }, + "Soul Eater Not!": { + "showId": "463", + "kitsu_id": "8151" + }, + "Space Brothers": { + "showId": "464", + "kitsu_id": "6729" + }, + "Space Dandy": { + "showId": "465", + "kitsu_id": "7910" + }, + "Space Dandy 2": { + "showId": "466", + "kitsu_id": "8312" + }, + "Sparrow's Hotel": { + "showId": "467", + "kitsu_id": "7654" + }, + "Steins;Gate": { + "showId": "468", + "kitsu_id": "5646" + }, + "Stella Jogakuin Koutouka C3-bu": { + "showId": "469", + "kitsu_id": "7671" + }, + "Straight Title Robot Anime": { + "showId": "470", + "kitsu_id": "7589" + }, + "Strange+": { + "showId": "471", + "kitsu_id": "8099" + }, + "Strike the Blood": { + "showId": "472", + "kitsu_id": "7715" + }, + "Subete ga F ni Naru": { + "showId": "473", + "kitsu_id": "10037" + }, + "Suisei no Gargantia": { + "showId": "474", + "kitsu_id": "7449" + }, + "Sukitte Ii na yo.": { + "showId": "475", + "kitsu_id": "7109" + }, + "Sword Art Online": { + "showId": "476", + "kitsu_id": "6589" + }, + "Sword Art Online EXTRA EDITION": { + "showId": "477", + "kitsu_id": "7914" + }, + "Sword Art Online II": { + "showId": "478", + "kitsu_id": "8174" + }, + "Taimadou Gakuen 35 Shiken Shoutai": { + "showId": "479", + "kitsu_id": "8669" + }, + "Takamiya Nasuno Desu!": { + "showId": "480", + "kitsu_id": "10074" + }, + "Tantei Team KZ Jiken Note": { + "showId": "481", + "kitsu_id": "11280" + }, + "Tari Tari": { + "showId": "482", + "kitsu_id": "6941" + }, + "Teekyu": { + "showId": "483", + "kitsu_id": "7217" + }, + "Teekyu S2": { + "showId": "483", + "kitsu_id": "7718" + }, + "Teekyu S3": { + "showId": "483", + "kitsu_id": "7980" + }, + "Teekyu S4": { + "showId": "483", + "kitsu_id": "8906" + }, + "Teekyu S5": { + "showId": "483", + "kitsu_id": "10858" + }, + "Teekyu S6": { + "showId": "483", + "kitsu_id": "11334" + }, + "Teekyu S7": { + "showId": "483", + "kitsu_id": "11597" + }, + "Teekyu S8": { + "showId": "483", + "kitsu_id": "12473" + }, + "Teekyu S9": { + "showId": "483", + "kitsu_id": "13342" + }, + "Terra Formars": { + "showId": "489", + "kitsu_id": "8356" + }, + "Terra Formars (Uncensored)": { + "showId": "489", + "kitsu_id": "8356" + }, + "Tesagure! Bukatsumono Spin-off Purupurun Sharumu to Asobou": { + "showId": "491", + "kitsu_id": "10339" + }, + "The Disappearance of Nagato Yuki-chan": { + "showId": "492", + "kitsu_id": "8144" + }, + "The iDOLM@STER": { + "showId": "494", + "kitsu_id": "6111" + }, + "THE iDOLM@STER CINDERELLA GIRLS": { + "showId": "495", + "kitsu_id": "8777" + }, + "The Knight in the Area": { + "showId": "496", + "kitsu_id": "6567" + }, + "The New Prince of Tennis": { + "showId": "497", + "kitsu_id": "6501" + }, + "The New Prince of Tennis OVA vs Genius10": { + "showId": "498", + "kitsu_id": "8034" + }, + "The New Prince of Tennis Specials": { + "showId": "499", + "kitsu_id": "6920" + }, + "The Pilot's Love Song": { + "showId": "500", + "kitsu_id": "7770" + }, + "The Rolling Girls": { + "showId": "501", + "kitsu_id": "8667" + }, + "The World God Only Knows - Goddesses Arc": { + "showId": "502", + "kitsu_id": "7496" + }, + "To LOVE-Ru Darkness 2nd": { + "showId": "505", + "kitsu_id": "10078" + }, + "Tokyo ESP": { + "showId": "506", + "kitsu_id": "7706" + }, + "Tokyo Ghoul": { + "showId": "507", + "kitsu_id": "8271" + }, + "Tokyo Ghoul Root A": { + "showId": "508", + "kitsu_id": "9135" + }, + "Tonari no Kaibutsu-kun": { + "showId": "510", + "kitsu_id": "7099" + }, + "Tonari no Seki-kun": { + "showId": "511", + "kitsu_id": "7761" + }, + "Toradora! (DUB)": { + "showId": "512", + "kitsu_id": "3532" + }, + "Toriko": { + "showId": "513", + "kitsu_id": "6002" + }, + "Triage X": { + "showId": "514", + "kitsu_id": "8952" + }, + "Tribe Cool Crew": { + "showId": "515", + "kitsu_id": "9153" + }, + "Trinity Seven": { + "showId": "516", + "kitsu_id": "8607" + }, + "Tsukimonogatari": { + "showId": "517", + "kitsu_id": "9961" + }, + "Tsuritama": { + "showId": "518", + "kitsu_id": "6836" + }, + "Twin Angel - Twinkle Paradise": { + "showId": "519", + "kitsu_id": "6083" + }, + "Uchouten Kazoku": { + "showId": "520", + "kitsu_id": "7675" + }, + "UN-GO": { + "showId": "521", + "kitsu_id": "6353" + }, + "Unbreakable Machine-Doll": { + "showId": "522", + "kitsu_id": "7617" + }, + "Unlimited Fafnir": { + "showId": "524", + "kitsu_id": "8649" + }, + "Upotte!!": { + "showId": "525", + "kitsu_id": "6704" + }, + "Urawa no Usagi-chan": { + "showId": "526", + "kitsu_id": "9949" + }, + "Usagi Drop": { + "showId": "527", + "kitsu_id": "6060" + }, + "Ushinawareta Mirai wo Motomete": { + "showId": "528", + "kitsu_id": "8199" + }, + "Ushio to Tora": { + "showId": "529", + "kitsu_id": "10359" + }, + "Uta No Prince Sama": { + "showId": "530", + "kitsu_id": "6126" + }, + "Uta no Prince Sama 2": { + "showId": "531", + "kitsu_id": "6796" + }, + "Uta no Prince Sama Revolutions": { + "showId": "532", + "kitsu_id": "8143" + }, + "Utakoi": { + "showId": "533", + "kitsu_id": "6943" + }, + "Utawarerumono - Itsuwari no Kamen": { + "showId": "534", + "kitsu_id": "11021" + }, + "Valvrave the Liberator": { + "showId": "535", + "kitsu_id": "7487" + }, + "Valvrave the Liberator S2": { + "showId": "536", + "kitsu_id": "7698" + }, + "Wakaba Girl": { + "showId": "538", + "kitsu_id": "10767" + }, + "Wakako Zake": { + "showId": "539", + "kitsu_id": "10844" + }, + "Wake Up, Girls ZOO!": { + "showId": "540", + "kitsu_id": "8812" + }, + "Wake Up, Girls!": { + "showId": "541", + "kitsu_id": "7774" + }, + "Wake Up, Girls! - Seven Idols": { + "showId": "541", + "kitsu_id": "8200" + }, + "Walkure Romanze": { + "showId": "543", + "kitsu_id": "7849" + }, + "Watamote": { + "showId": "544", + "kitsu_id": "7504" + }, + "White Album 2": { + "showId": "545", + "kitsu_id": "7697" + }, + "Witch Craft Works": { + "showId": "546", + "kitsu_id": "8017" + }, + "Wizard Barristers - Benmashi Cecil": { + "showId": "547", + "kitsu_id": "7898" + }, + "Wonder Momo": { + "showId": "548", + "kitsu_id": "8290" + }, + "Wooser no Sono Higurashi Kakusei-hen": { + "showId": "549", + "kitsu_id": "7979" + }, + "Wooser no Sono Higurashi Mugen-hen": { + "showId": "550", + "kitsu_id": "10138" + }, + "Working'!!": { + "showId": "551", + "kitsu_id": "6220" + }, + "Working!!!": { + "showId": "552", + "kitsu_id": "8712" + }, + "World Trigger": { + "showId": "553", + "kitsu_id": "8631" + }, + "Yahari Ore no Seishun Love Come wa Machigatteiru": { + "showId": "554", + "kitsu_id": "7169" + }, + "Yahari Ore no Seishun Love Come wa Machigatteiru Zoku": { + "showId": "555", + "kitsu_id": "8478" + }, + "Yama no Susume": { + "showId": "556", + "kitsu_id": "7117" + }, + "Yama no Susume 2": { + "showId": "557", + "kitsu_id": "8201" + }, + "Yamada-kun and the Seven Witches": { + "showId": "558", + "kitsu_id": "10042" + }, + "Yami Shibai - Japanese Ghost Stories": { + "showId": "559", + "kitsu_id": "7840" + }, + "Yami Shibai - Japanese Ghost Stories 2": { + "showId": "560", + "kitsu_id": "8359" + }, + "Yoru no Yatterman": { + "showId": "561", + "kitsu_id": "10011" + }, + "Young Black Jack": { + "showId": "562", + "kitsu_id": "10914" + }, + "Yowamushi Pedal": { + "showId": "563", + "kitsu_id": "7700" + }, + "Yowamushi Pedal - Grande Road": { + "showId": "564", + "kitsu_id": "8635" + }, + "Yuki Yuna wa Yusha de Aru": { + "showId": "565", + "kitsu_id": "8638" + }, + "Yuri Kuma Arashi": { + "showId": "566", + "kitsu_id": "8738" + }, + "Yurumate3Dei": { + "showId": "567", + "kitsu_id": "7156" + }, + "YuruYuri": { + "showId": "568", + "kitsu_id": "6205" + }, + "YuruYuri S2": { + "showId": "569", + "kitsu_id": "6724" + }, + "YuruYuri S3": { + "showId": "570", + "kitsu_id": "10742" + }, + "Yuushibu": { + "showId": "571", + "kitsu_id": "7725" + }, + "YUYUSHIKI": { + "showId": "572", + "kitsu_id": "7338" + }, + "Zankyou no Terror": { + "showId": "573", + "kitsu_id": "8342" + }, + "Zero no Tsukaima Final": { + "showId": "574", + "kitsu_id": "6493" + }, + "Zetsuen no Tempest": { + "showId": "576", + "kitsu_id": "7078" + }, + "Zettai Bouei Leviathan": { + "showId": "577", + "kitsu_id": "7644" + }, + "Zettai Karen Children THE UNLIMITED - Hyoubu Kyousuke": { + "showId": "578", + "kitsu_id": "7356" + }, + "ZX IGNITION": { + "showId": "579", + "kitsu_id": "8030" + }, + "Cardfight!! Vanguard G GIRS Crisis": { + "showId": "580", + "kitsu_id": "11220" + }, + "Ame-iro Cocoa S2": { + "showId": "581", + "kitsu_id": "11158" + }, + "Brave Beats": { + "showId": "582", + "kitsu_id": "11387" + }, + "Ani Tore! EX": { + "showId": "583", + "kitsu_id": "11347" + }, + "Valkyrie Drive - Mermaid": { + "showId": "584", + "kitsu_id": "10766" + }, + "Hidan no Aria AA": { + "showId": "585", + "kitsu_id": "10077" + }, + "Kateikyoushi Hitman Reborn!": { + "showId": "587", + "kitsu_id": "1444" + }, + "Digimon Adventure tri": { + "showId": "588", + "kitsu_id": "8684" + }, + "Digimon Xros Wars": { + "showId": "590", + "kitsu_id": "5404" + }, + "Digimon Xros Wars S2": { + "showId": "590", + "kitsu_id": "6183" + }, + "Senki Zesshou Symphogear": { + "showId": "594", + "kitsu_id": "6587" + }, + "Senki Zesshou Symphogear G": { + "showId": "595", + "kitsu_id": "7311" + }, + "Love Live! The School Idol Movie": { + "showId": "597", + "kitsu_id": "8531" + }, + "Wooser no Sono Higurashi": { + "showId": "599", + "kitsu_id": "7238" + }, + "Working!!": { + "showId": "600", + "kitsu_id": "4805" + }, + "Mobile Suit Gundam Thunderbolt": { + "showId": "602", + "kitsu_id": [ + "11476", + "12755" + ] + }, + "Durarara!!": { + "showId": "603", + "kitsu_id": "4696" + }, + "Musaigen no Phantom World": { + "showId": "605", + "kitsu_id": "11333" + }, + "Prince of Stride - Alternative": { + "showId": "606", + "kitsu_id": "11364" + }, + "Haruchika": { + "showId": "607", + "kitsu_id": "11020" + }, + "Active Raid": { + "showId": "608", + "kitsu_id": "11456" + }, + "Assassination Classroom S2": { + "showId": "609", + "kitsu_id": "10877" + }, + "Lupin III (2015)": { + "showId": "610", + "kitsu_id": "9958" + }, + "Boku dake ga Inai Machi": { + "showId": "611", + "kitsu_id": "11110" + }, + "Ojisan to Marshmallow": { + "showId": "612", + "kitsu_id": "11261" + }, + "Lupin III Part I": { + "showId": "613", + "kitsu_id": "1265" + }, + "Lupin III Part II": { + "showId": "614", + "kitsu_id": "1278" + }, + "Lupin III Part III": { + "showId": "615", + "kitsu_id": "1279" + }, + "Norn9 - Norn+Nonet": { + "showId": "616", + "kitsu_id": "11337" + }, + "Shoujo-tachi wa Kouya wo Mezasu": { + "showId": "617", + "kitsu_id": "11457" + }, + "Divine Gate": { + "showId": "618", + "kitsu_id": "11409" + }, + "Oshiete! Galko-chan": { + "showId": "619", + "kitsu_id": "11487" + }, + "Sekkou Boys": { + "showId": "620", + "kitsu_id": "11358" + }, + "Tabi Machi Late Show": { + "showId": "621", + "kitsu_id": "11668" + }, + "Koukaku no Pandora": { + "showId": "622", + "kitsu_id": "11587" + }, + "Shouwa Genroku Rakugo Shinjuu": { + "showId": "624", + "kitsu_id": "10051" + }, + "Phantasy Star Online 2 The Animation": { + "showId": "625", + "kitsu_id": "11200" + }, + "Bubuki Buranki": { + "showId": "626", + "kitsu_id": "11486" + }, + "Luck & Logic": { + "showId": "627", + "kitsu_id": "11536" + }, + "Nurse Witch Komugi-chan R": { + "showId": "628", + "kitsu_id": "11517" + }, + "Ooyasan wa Shishunki!": { + "showId": "629", + "kitsu_id": "11396" + }, + "Hai to Gensou no Grimgar": { + "showId": "630", + "kitsu_id": "11447" + }, + "Dimension W": { + "showId": "631", + "kitsu_id": "11170" + }, + "Nijiiro Days": { + "showId": "632", + "kitsu_id": "11323" + }, + "Schwarzesmarken": { + "showId": "633", + "kitsu_id": "10938" + }, + "Yami Shibai - Japanese Ghost Stories 3": { + "showId": "634", + "kitsu_id": "11484" + }, + "Mahou Shoujo Nante Mou Ii Desukara": { + "showId": "635", + "kitsu_id": "11552" + }, + "Saijaku Muhai no Bahamut": { + "showId": "637", + "kitsu_id": "10913" + }, + "Ao no Kanata no Four Rhythm": { + "showId": "638", + "kitsu_id": "10021" + }, + "Dagashi Kashi": { + "showId": "639", + "kitsu_id": "11381" + }, + "Kono Subarashii Sekai ni Shukufuku wo!": { + "showId": "640", + "kitsu_id": "10941" + }, + "Glass no Hana to Kowasu Sekai": { + "showId": "641", + "kitsu_id": "8971" + }, + "Noblesse - Awakening": { + "showId": "642", + "kitsu_id": "11806" + }, + "Kono Danshi, Mahou ga Oshigoto Desu": { + "showId": "643", + "kitsu_id": "11599" + }, + "She and Her Cat - Everything Flows": { + "showId": "644", + "kitsu_id": "11737" + }, + "DD Hokuto no Ken": { + "showId": "645", + "kitsu_id": "7646" + }, + "Hidan no Aria": { + "showId": "646", + "kitsu_id": "5407" + }, + "Brotherhood - Final Fantasy XV": { + "showId": "647", + "kitsu_id": "12019" + }, + "Space Patrol Luluco": { + "showId": "648", + "kitsu_id": "11818" + }, + "JoJo's Bizarre Adventure - Diamond is Unbreakable": { + "showId": "650", + "kitsu_id": "11459" + }, + "Terra Formars S2": { + "showId": "651", + "kitsu_id": "11344" + }, + "Mayoiga": { + "showId": "653", + "kitsu_id": "11682" + }, + "Ace Attorney": { + "showId": "654", + "kitsu_id": "11375" + }, + "Kiznaiver": { + "showId": "655", + "kitsu_id": "11437" + }, + "Endride": { + "showId": "657", + "kitsu_id": "11807" + }, + "Mobile Suit Gundam Unicorn RE 0096": { + "showId": "658", + "kitsu_id": "11850" + }, + "Boku no Hero Academia": { + "showId": "659", + "kitsu_id": [ + "11469", + "12268", + "13881", + "41971" + ] + }, + "Re Zero kara Hajimeru Isekai Seikatsu": { + "showId": "660", + "kitsu_id": [ + "11209", + "42198" + ] + }, + "Pan de Peace!": { + "showId": "661", + "kitsu_id": "11349" + }, + "Kuma Miko": { + "showId": "662", + "kitsu_id": "11446" + }, + "Macross Delta": { + "showId": "663", + "kitsu_id": "9992" + }, + "Hundred": { + "showId": "664", + "kitsu_id": "11029" + }, + "Bakuon!!": { + "showId": "665", + "kitsu_id": "10939" + }, + "Seisen Cerberus": { + "showId": "666", + "kitsu_id": "11779" + }, + "Shounen Ashibe Go! Go! Goma-chan": { + "showId": "667", + "kitsu_id": "12038" + }, + "Joker Game": { + "showId": "668", + "kitsu_id": "11320" + }, + "Super Lovers": { + "showId": "669", + "kitsu_id": "11485" + }, + "Bungou Stray Dogs": { + "showId": "670", + "kitsu_id": "11339" + }, + "Bishoujo Yuugi Unit Crane Game Girls": { + "showId": "671", + "kitsu_id": "11932" + }, + "Sousei no Onmyouji": { + "showId": "672", + "kitsu_id": "11553" + }, + "Anne Happy": { + "showId": "673", + "kitsu_id": "11134" + }, + "Netoge no Yome wa Onnanoko ja Nai to Omotta": { + "showId": "674", + "kitsu_id": "11319" + }, + "Kabaneri of the Iron Fortress": { + "showId": "676", + "kitsu_id": "10036" + }, + "Shounen Maid": { + "showId": "677", + "kitsu_id": "11570" + }, + "Sakamoto desu ga": { + "showId": "678", + "kitsu_id": "11751" + }, + "Flying Witch": { + "showId": "679", + "kitsu_id": "11317" + }, + "Tanaka-kun wa Itsumo Kedaruge": { + "showId": "680", + "kitsu_id": "11538" + }, + "Haifuri": { + "showId": "681", + "kitsu_id": "11346" + }, + "Sansha Sanyou": { + "showId": "682", + "kitsu_id": "11401" + }, + "Tonkatsu DJ Agetarou": { + "showId": "683", + "kitsu_id": "11318" + }, + "Wagamama High Spec": { + "showId": "684", + "kitsu_id": "11332" + }, + "Usakame": { + "showId": "685", + "kitsu_id": "11685" + }, + "Kuromukuro": { + "showId": "686", + "kitsu_id": "11605" + }, + "Onigiri": { + "showId": "687", + "kitsu_id": "11785" + }, + "Big Order": { + "showId": "688", + "kitsu_id": "11455" + }, + "Cardfight!! Vanguard G Stride Gate": { + "showId": "689", + "kitsu_id": "11857" + }, + "Tensei Shitara Slime Datta Ken": { + "showId": "1152", + "kitsu_id": "41024" + }, + "Wake Up, Girls! New Chapter": { + "showId": "Wake Up, Girls! New Chapter", + "kitsu_id": "13707" + }, + "Yowamushi Pedal Re RIDE": { + "showId": "691", + "kitsu_id": "8657" + }, + "Yowamushi Pedal Re ROAD": { + "showId": "691", + "kitsu_id": "8635" + }, + "Yowamushi Pedal The Movie": { + "showId": "691", + "kitsu_id": "10769" + }, + "Bonobono": { + "showId": "694", + "kitsu_id": "8967" + }, + "Berserk": { + "showId": "696", + "kitsu_id": "24" + }, + "ReLIFE": { + "showId": "697", + "kitsu_id": "10464" + }, + "Momokuri": { + "showId": "698", + "kitsu_id": "10466" + }, + "Love Live! Sunshine!!": { + "showId": "700", + "kitsu_id": "11745" + }, + "Rewrite": { + "showId": "702", + "kitsu_id": "11410" + }, + "Hatsukoi Monster": { + "showId": "703", + "kitsu_id": "11181" + }, + "B-Project": { + "showId": "704", + "kitsu_id": "12088" + }, + "DAYS": { + "showId": "705", + "kitsu_id": "11748" + }, + "Orange": { + "showId": "706", + "kitsu_id": "11844" + }, + "Fukigen na Mononokean": { + "showId": "708", + "kitsu_id": "11826" + }, + "Tales of Zestiria the X": { + "showId": "709", + "kitsu_id": "11023" + }, + "Bananya": { + "showId": "710", + "kitsu_id": "11912" + }, + "Puzzle and Dragons Cross": { + "showId": "711", + "kitsu_id": "11846" + }, + "Show By Rock!! Short!!": { + "showId": "712", + "kitsu_id": "11493" + }, + "Amaama to Inazuma": { + "showId": "713", + "kitsu_id": "11870" + }, + "D.Gray-man Hallow": { + "showId": "714", + "kitsu_id": "11654" + }, + "Taboo Tattoo": { + "showId": "715", + "kitsu_id": "10344" + }, + "Cheer Danshi!!": { + "showId": "716", + "kitsu_id": "11770" + }, + "Fudanshi Koukou Seikatsu": { + "showId": "717", + "kitsu_id": "12103" + }, + "Servamp": { + "showId": "718", + "kitsu_id": "11210" + }, + "New Game!": { + "showId": "719", + "kitsu_id": "11467" + }, + "Masou Gakuen HxH": { + "showId": "720", + "kitsu_id": "11529" + }, + "Scared Rider Xechs": { + "showId": "721", + "kitsu_id": "12026" + }, + "Tsukiuta. The Animation": { + "showId": "722", + "kitsu_id": "11998" + }, + "Ozmafia!!": { + "showId": "723", + "kitsu_id": "11829" + }, + "Fate Kaleid Liner PRISMA ILLYA 3rei!!": { + "showId": "724", + "kitsu_id": "11438" + }, + "Regalia - The Three Sacred Stars": { + "showId": "725", + "kitsu_id": "11948" + }, + "Binan Koukou Chikyuu Bouei-bu Love! S2": { + "showId": "726", + "kitsu_id": "11329" + }, + "Kono Bijutsubu ni wa Mondai ga Aru!": { + "showId": "727", + "kitsu_id": "11466" + }, + "Planetarian": { + "showId": "728", + "kitsu_id": "12023" + }, + "Amanchu!": { + "showId": "729", + "kitsu_id": "11432" + }, + "Alderamin on the Sky": { + "showId": "730", + "kitsu_id": "11433" + }, + "91 Days": { + "showId": "731", + "kitsu_id": "11957" + }, + "Thunderbolt Fantasy": { + "showId": "732", + "kitsu_id": "11838" + }, + "Time Travel Shoujo": { + "showId": "733", + "kitsu_id": "12236" + }, + "Handa-kun": { + "showId": "734", + "kitsu_id": "11802" + }, + "Qualidea Code": { + "showId": "735", + "kitsu_id": "11653" + }, + "Hitori no Shita - The Outcast": { + "showId": "736", + "kitsu_id": "12250" + }, + "Ange Vierge": { + "showId": "737", + "kitsu_id": "11593" + }, + "Active Raid S2": { + "showId": "738", + "kitsu_id": "11618" + }, + "Saiki Kusuo no Psi-nan": { + "showId": "739", + "kitsu_id": "12127" + }, + "Danganronpa 3 - Future Arc": { + "showId": "740", + "kitsu_id": "11579" + }, + "Mob Psycho 100": { + "showId": "741", + "kitsu_id": "11578" + }, + "Mob Pyscho 100 OVA": { + "showId": "741", + "kitsu_id": "41073" + }, + "Mahou Shoujo Naria Girls": { + "showId": "742", + "kitsu_id": "12244" + }, + "Danganronpa 3 - Despair Arc": { + "showId": "743", + "kitsu_id": "12105" + }, + "Battery": { + "showId": "744", + "kitsu_id": "11938" + }, + "One Piece - Heart of Gold": { + "showId": "745", + "kitsu_id": "12228" + }, + "Gundam Build Fighters Try Island Wars": { + "showId": "746", + "kitsu_id": "10872" + }, + "Persona 5 - THE DAY BREAKERS": { + "showId": "747", + "kitsu_id": "11602" + }, + "Mahoutsukai no Yome OVA": { + "showId": "749", + "kitsu_id": "11913" + }, + "Heybot!": { + "showId": "750", + "kitsu_id": "12346" + }, + "Dream Festival!": { + "showId": "751", + "kitsu_id": "12200" + }, + "Nyanbo!": { + "showId": "752", + "kitsu_id": "11945" + }, + "Kaijuu Girls": { + "showId": "753", + "kitsu_id": "12118" + }, + "Danganronpa 3 - Hope Arc": { + "showId": "754", + "kitsu_id": "12554" + }, + "Time Bokan 24": { + "showId": "755", + "kitsu_id": "12204" + }, + "Bloodivores": { + "showId": "756", + "kitsu_id": "12539" + }, + "Shuumatsu no Izetta": { + "showId": "757", + "kitsu_id": "12260" + }, + "WWW.Working!!": { + "showId": "758", + "kitsu_id": "12024" + }, + "Mahou Shoujo Ikusei Keikaku": { + "showId": "759", + "kitsu_id": "11363" + }, + "Uta no Prince Sama Legend Star": { + "showId": "760", + "kitsu_id": "11217" + }, + "Tiger Mask W": { + "showId": "761", + "kitsu_id": "11966" + }, + "Cardfight!! Vanguard G NEXT": { + "showId": "762", + "kitsu_id": "12564" + }, + "Monster Hunter Stories Ride On": { + "showId": "763", + "kitsu_id": "11584" + }, + "Show By Rock!! S2": { + "showId": "765", + "kitsu_id": "11494" + }, + "Magic-Kyun! Renaissance": { + "showId": "766", + "kitsu_id": "12182" + }, + "Okusama ga Seitokaichou! S2 (Uncensored)": { + "showId": "767", + "kitsu_id": "11784" + }, + "Touken Ranbu - Hanamaru": { + "showId": "768", + "kitsu_id": "11995" + }, + "Ao Oni The Animation": { + "showId": "769", + "kitsu_id": "12477" + }, + "Gakuen Handsome": { + "showId": "770", + "kitsu_id": "12482" + }, + "Trickster": { + "showId": "771", + "kitsu_id": "12234" + }, + "Shakunetsu no Takkyuu Musume": { + "showId": "772", + "kitsu_id": "12009" + }, + "Nobunaga no Shinobi": { + "showId": "773", + "kitsu_id": [ + "11871", + "13303", + "14207" + ] + }, + "Zutto Mae kara Suki deshita": { + "showId": "774", + "kitsu_id": "11204" + }, + "Soushin Shoujo Matoi": { + "showId": "775", + "kitsu_id": "12322" + }, + "Natsume Yuujinchou Go": { + "showId": "776", + "kitsu_id": "11950" + }, + "Natsume Yuujinchou Go Specials": { + "showId": "776", + "kitsu_id": "13143" + }, + "Nanbaka": { + "showId": "777", + "kitsu_id": "10467" + }, + "Cheating Craft": { + "showId": "778", + "kitsu_id": "12542" + }, + "TO BE HERO": { + "showId": "779", + "kitsu_id": "12536" + }, + "Mahou Shoujo Nante Mou Ii Desukara S2": { + "showId": "781", + "kitsu_id": "12467" + }, + "Ani Tore! XX": { + "showId": "782", + "kitsu_id": "12459" + }, + "Kiitarou Shounen no Youkai Enikki": { + "showId": "783", + "kitsu_id": "12119" + }, + "Bishoujo Yuugi Unit Crane Game Girls Galaxy": { + "showId": "784", + "kitsu_id": "12465" + }, + "Nazotokine": { + "showId": "785", + "kitsu_id": "12448" + }, + "Hibike! Euphonium S2": { + "showId": "786", + "kitsu_id": "11474" + }, + "Brave Witches": { + "showId": "788", + "kitsu_id": "11887" + }, + "Yuri!!! on Ice": { + "showId": "789", + "kitsu_id": "11999" + }, + "Flip Flappers": { + "showId": "790", + "kitsu_id": "11997" + }, + "Keijo!!!!!!!!": { + "showId": "791", + "kitsu_id": "11824" + }, + "All Out!!": { + "showId": "792", + "kitsu_id": "11373" + }, + "Bernard Jou Iwaku.": { + "showId": "793", + "kitsu_id": "12556" + }, + "Drifters": { + "showId": "794", + "kitsu_id": "11028" + }, + "Lostorage incited WIXOSS": { + "showId": "795", + "kitsu_id": "12065" + }, + "Haikyuu!! S3": { + "showId": "796", + "kitsu_id": "11935" + }, + "Watashi ga Motete Dousunda": { + "showId": "797", + "kitsu_id": "11910" + }, + "ClassicaLoid": { + "showId": "798", + "kitsu_id": "11172" + }, + "Long Riders!": { + "showId": "799", + "kitsu_id": "10878" + }, + "3-gatsu no Lion": { + "showId": "800", + "kitsu_id": "11380" + }, + "Occultic;Nine": { + "showId": "801", + "kitsu_id": "11949" + }, + "Sengoku Choujuu Giga": { + "showId": "802", + "kitsu_id": "12492" + }, + "Udon no Kuni no Kiniro Kemari": { + "showId": "803", + "kitsu_id": "11823" + }, + "Stella no Mahou": { + "showId": "804", + "kitsu_id": "11756" + }, + "Soul Buster": { + "showId": "805", + "kitsu_id": "11803" + }, + "Girlish Number": { + "showId": "806", + "kitsu_id": "11793" + }, + "Shelter": { + "showId": "807", + "imdb_id": "tt6443118" + }, + "3-Nen D-Gumi Glass no Kamen": { + "showId": "808", + "kitsu_id": "12567" + }, + "Dragon Ball Super": { + "showId": "809", + "kitsu_id": "10879" + }, + "Kuroko's Basketball Winter Cup Highlights": { + "showId": "810", + "kitsu_id": "11889" + }, + "Natsume Yuujinchou - Nyanko-sensei to Hajimete no Otsukai": { + "showId": "811", + "kitsu_id": "7747" + }, + "Hagane Orchestra": { + "showId": "812", + "kitsu_id": "12593" + }, + "Osomatsu-san - Ouma de Kobanashi": { + "showId": "813", + "kitsu_id": "12720" + }, + "Chain Chronicle - Haecceitas no Hikari (Movie)": { + "showId": "814", + "kitsu_id": "12463" + }, + "Koro-sensei Quest!": { + "showId": "815", + "kitsu_id": "12923" + }, + "Fate Grand Order - First Order": { + "showId": "816", + "kitsu_id": "12710" + }, + "Ai-Mai-Mi - Surgical Friends": { + "showId": "817", + "kitsu_id": "12864" + }, + "Akiba's Trip The Animation": { + "showId": "818", + "kitsu_id": "12532" + }, + "Masamune-kun no Revenge": { + "showId": "819", + "kitsu_id": "12267" + }, + "Masamune-kun no Revenge OVA": { + "showId": "819", + "kitsu_id": "41264" + }, + "Youjo Senki": { + "showId": "821", + "kitsu_id": "11794" + }, + "Minami Kamakura Koukou Joshi Jitensha-bu": { + "showId": "822", + "kitsu_id": "11330" + }, + "Fuuka": { + "showId": "823", + "kitsu_id": "12460" + }, + "Schoolgirl Strikers - Animation Channel": { + "showId": "824", + "kitsu_id": "12685" + }, + "Ao no Exorcist - Kyoto Fujouou-hen": { + "showId": "825", + "kitsu_id": "12275" + }, + "Shouwa Genroku Rakugo Shinjuu S2": { + "showId": "826", + "kitsu_id": "12022" + }, + "Seiren": { + "showId": "827", + "kitsu_id": "12673" + }, + "Urara Meirochou": { + "showId": "828", + "kitsu_id": "11934" + }, + "Spiritpact": { + "showId": "829", + "kitsu_id": "12862" + }, + "Demi-chan wa Kataritai": { + "showId": "830", + "kitsu_id": "12529" + }, + "Chain Chronicle - Haecceitas no Hikari (TV)": { + "showId": "831", + "kitsu_id": "10071" + }, + "Idol Jihen": { + "showId": "832", + "kitsu_id": "12596" + }, + "Nyanko Days": { + "showId": "833", + "kitsu_id": "12687" + }, + "elDLIVE": { + "showId": "834", + "kitsu_id": "11894" + }, + "Gabriel DropOut": { + "showId": "835", + "kitsu_id": "12497" + }, + "Chiruran - Nibun no Ichi": { + "showId": "836", + "kitsu_id": "12600" + }, + "Yowamushi Pedal - New Generation": { + "showId": "837", + "kitsu_id": "11583" + }, + "ACCA - 13-ku Kansatsu-ka": { + "showId": "838", + "kitsu_id": "12202" + }, + "Hand Shakers": { + "showId": "839", + "kitsu_id": "11951" + }, + "Kemono Friends": { + "showId": "840", + "kitsu_id": "12707" + }, + "Kobayashi-san Chi no Maid Dragon": { + "showId": "841", + "kitsu_id": "12243" + }, + "Kono Subarashii Sekai ni Shukufuku wo! 2": { + "showId": "842", + "kitsu_id": "11937" + }, + "One Room": { + "showId": "843", + "kitsu_id": "12758" + }, + "Piace - Watashi no Italian": { + "showId": "844", + "kitsu_id": "12274" + }, + "ChaoS;Child": { + "showId": "845", + "kitsu_id": "10786" + }, + "Marginal#4 - Kiss kara Tsukuru Big Bang": { + "showId": "846", + "kitsu_id": "12489" + }, + "Super Lovers S2": { + "showId": "847", + "kitsu_id": "12245" + }, + "Kuzu no Honkai": { + "showId": "848", + "kitsu_id": "11940" + }, + "Yami Shibai - Japanese Ghost Stories 4": { + "showId": "849", + "kitsu_id": "12783" + }, + "Granblue Fantasy The Animation": { + "showId": "850", + "kitsu_id": "11382" + }, + "BanG Dream!": { + "showId": "851", + "kitsu_id": "12330" + }, + "Ao Oni The Animation Movie": { + "showId": "852", + "kitsu_id": "12478" + }, + "The Dragon Dentist": { + "showId": "853", + "kitsu_id": "12641" + }, + "Trinity Seven Movie - Eternity Library and Alchemic Girl": { + "showId": "854", + "kitsu_id": "12324" + }, + "Monster Strike 2": { + "showId": "855", + "kitsu_id": "13316" + }, + "Gin no Guardian": { + "showId": "856", + "kitsu_id": "11936" + }, + "Folktales from Japan S2": { + "showId": "857", + "kitsu_id": "13331" + }, + "World Fool News Part II": { + "showId": "858", + "kitsu_id": "13320" + }, + "Alice to Zouroku": { + "showId": "859", + "kitsu_id": "12726" + }, + "Sekai no Yami Zukan": { + "showId": "860", + "kitsu_id": "13302" + }, + "Warau Salesman NEW": { + "showId": "862", + "kitsu_id": "12951" + }, + "High School Star Musical S2": { + "showId": "863", + "kitsu_id": "12241" + }, + "Frame Arms Girl": { + "showId": "864", + "kitsu_id": "12807" + }, + "THE iDOLM@STER CINDERELLA GIRLS Theater (TV)": { + "showId": "866", + "kitsu_id": [ + "12671", + "13895", + "41377", + "42229" + ] + }, + "THE iDOLM@STER CINDERELLA GIRLS Theater (Web)": { + "showId": "866", + "kitsu_id": "13327" + }, + "Rokudenashi Majutsu Koushi to Akashic Records": { + "showId": "867", + "kitsu_id": "11942" + }, + "Oushitsu Kyoushi Haine": { + "showId": "868", + "kitsu_id": "12667" + }, + "Boruto - Naruto Next Generations": { + "showId": "869", + "kitsu_id": "13051" + }, + "Sakura Quest": { + "showId": "870", + "kitsu_id": "12793" + }, + "Busou Shoujo Machiavellianism": { + "showId": "871", + "kitsu_id": "12265" + }, + "Sagrada Reset": { + "showId": "872", + "kitsu_id": "12599" + }, + "Seikaisuru Kado": { + "showId": "873", + "kitsu_id": "11490" + }, + "Tsuki ga Kirei": { + "showId": "874", + "kitsu_id": "13234" + }, + "Renai Boukun": { + "showId": "875", + "kitsu_id": "11610" + }, + "Clockwork Planet": { + "showId": "876", + "kitsu_id": "11662" + }, + "Hinako Note": { + "showId": "877", + "kitsu_id": "12644" + }, + "Twin Angel BREAK": { + "showId": "878", + "kitsu_id": "12295" + }, + "Love Kome - We Love Rice": { + "showId": "879", + "kitsu_id": "13148" + }, + "Kabukibu!": { + "showId": "880", + "kitsu_id": "12487" + }, + "Shingeki no Bahamut - Virgin Soul": { + "showId": "881", + "kitsu_id": "10902" + }, + "Eromanga-sensei": { + "showId": "882", + "kitsu_id": "11914" + }, + "Re-Creators": { + "showId": "883", + "kitsu_id": "8668" + }, + "Uchouten Kazoku S2": { + "showId": "884", + "kitsu_id": "12551" + }, + "Tsugumomo": { + "showId": "885", + "kitsu_id": "12534" + }, + "Zero kara Hajimeru Mahou no Sho": { + "showId": "886", + "kitsu_id": "12623" + }, + "Makeruna!! Aku no Gundan!": { + "showId": "887", + "kitsu_id": "13361" + }, + "Fukumenkei Noise": { + "showId": "888", + "kitsu_id": "12117" + }, + "Shuumatsu Nani Shitemasuka Isogashii Desuka Sukutte Moratte Ii Desuka": { + "showId": "889", + "kitsu_id": "12769" + }, + "Natsume Yuujinchou Roku": { + "showId": "890", + "kitsu_id": "13077" + }, + "Natsume Yuujinchou Roku Specials": { + "showId": "890", + "kitsu_id": "13757" + }, + "Kenka Banchou Otome - Girl Beats Boys": { + "showId": "891", + "kitsu_id": "12821" + }, + "Room Mate": { + "showId": "892", + "kitsu_id": "12759" + }, + "Saekano S2": { + "showId": "893", + "kitsu_id": "10909" + }, + "DanMachi Gaiden - Sword Oratoria": { + "showId": "894", + "kitsu_id": "11902" + }, + "Sin - Nanatsu no Taizai": { + "showId": "895", + "kitsu_id": "12540" + }, + "100% Pascal-sensei": { + "showId": "896", + "kitsu_id": "13433" + }, + "PriPri Chii-chan!!": { + "showId": "897", + "kitsu_id": "13434" + }, + "Atom - The Beginning": { + "showId": "898", + "kitsu_id": "12235" + }, + "Blame! Movie": { + "showId": "899", + "kitsu_id": "11537" + }, + "Koe no Katachi": { + "showId": "900", + "kitsu_id": "10028" + }, + "Yu-Gi-Oh! VRAINS": { + "showId": "901", + "kitsu_id": "13189" + }, + "Monster Strike The Movie": { + "showId": "902", + "kitsu_id": "12504" + }, + "Suki ni Naru Sono Shunkan wo": { + "showId": "903", + "kitsu_id": "12001" + }, + "Hina Logi - From Luck & Logic": { + "showId": "904", + "kitsu_id": "13545" + }, + "Enmusubi no Youko-chan": { + "showId": "907", + "kitsu_id": "13616" + }, + "Katsugeki Touken Ranbu": { + "showId": "908", + "kitsu_id": "11994" + }, + "Knight's & Magic": { + "showId": "909", + "kitsu_id": "13274" + }, + "Keppeki Danshi! Aoyama-kun": { + "showId": "910", + "kitsu_id": "13280" + }, + "Yami Shibai - Japanese Ghost Stories 5": { + "showId": "911", + "kitsu_id": "13576" + }, + "Battle Girl High School": { + "showId": "912", + "kitsu_id": "13115" + }, + "Isekai Shokudou": { + "showId": "913", + "kitsu_id": "12535" + }, + "Youkai Apartment no Yuuga na Nichijou": { + "showId": "914", + "kitsu_id": "13260" + }, + "Koi to Uso": { + "showId": "915", + "kitsu_id": "13257" + }, + "Aho Girl": { + "showId": "916", + "kitsu_id": "13259" + }, + "Tsurezure Children": { + "showId": "917", + "kitsu_id": "13258" + }, + "Nana Maru San Batsu": { + "showId": "918", + "kitsu_id": "13263" + }, + "Netsuzou TRap - NTR": { + "showId": "919", + "kitsu_id": "12757" + }, + "Saiyuki Reload Blast": { + "showId": "920", + "kitsu_id": "12464" + }, + "Dive!!": { + "showId": "921", + "kitsu_id": "13007" + }, + "Konbini Kareshi": { + "showId": "922", + "kitsu_id": "13537" + }, + "Castlevania": { + "showId": "923", + "kitsu_id": "13529" + }, + "Made in Abyss": { + "showId": "924", + "kitsu_id": "13273" + }, + "Vatican Kiseki Chousakan": { + "showId": "925", + "kitsu_id": "12732" + }, + "Ballroom e Youkoso": { + "showId": "926", + "kitsu_id": "13068" + }, + "Shoukoku no Altair": { + "showId": "927", + "kitsu_id": "13057" + }, + "18if": { + "showId": "928", + "kitsu_id": "13281" + }, + "Hitorijime My Hero": { + "showId": "929", + "kitsu_id": "12318" + }, + "Princess Principal": { + "showId": "930", + "kitsu_id": "13261" + }, + "Centaur no Nayami": { + "showId": "931", + "kitsu_id": "13270" + }, + "Jikan no Shihaisha": { + "showId": "932", + "kitsu_id": "12971" + }, + "Action Heroine Cheer Fruits": { + "showId": "933", + "kitsu_id": "13539" + }, + "Tenshi no 3P!": { + "showId": "934", + "kitsu_id": "12624" + }, + "Isekai wa Smartphone to Tomo ni.": { + "showId": "935", + "kitsu_id": "13457" + }, + "New Game!!": { + "showId": "936", + "kitsu_id": "13236" + }, + "Mahoujin Guru Guru (2017)": { + "showId": "937", + "kitsu_id": "13402" + }, + "Clione no Akari": { + "showId": "938", + "kitsu_id": "13231" + }, + "Hajimete no Gal": { + "showId": "939", + "kitsu_id": "12761" + }, + "Ikemen Sengoku": { + "showId": "940", + "kitsu_id": "13642" + }, + "Nora to Oujo to Noraneko Heart": { + "showId": "941", + "kitsu_id": "11811" + }, + "Youkoso Jitsuryoku Shijou Shugi no Kyoushitsu e": { + "showId": "942", + "kitsu_id": "13503" + }, + "Musekinin Galaxy Tylor": { + "showId": "943", + "kitsu_id": "13561" + }, + "Gamers!": { + "showId": "945", + "kitsu_id": "12754" + }, + "Jigoku Shoujo - Yoi no Togi": { + "showId": "946", + "kitsu_id": "13249" + }, + "The Reflection": { + "showId": "947", + "kitsu_id": "11473" + }, + "Gundam Build Fighters Battlogue": { + "showId": "949", + "kitsu_id": "13711" + }, + "Owarimonogatari S2": { + "showId": "950", + "kitsu_id": "13268" + }, + "Little Witch Academia": { + "showId": "951", + "kitsu_id": "12272" + }, + "Dream Festival! R": { + "showId": "952", + "kitsu_id": "12948" + }, + "Gundam Build Fighters GM's Counterattack": { + "showId": "953", + "kitsu_id": "13756" + }, + "One Piece - Episode of East Blue": { + "showId": "954", + "kitsu_id": "13623" + }, + "Blade Runner Black Out 2022": { + "showId": "955", + "kitsu_id": "13811" + }, + "The iDOLM@STER Side M": { + "showId": "956", + "kitsu_id": "13755" + }, + "Osomatsu-san S2": { + "showId": "957", + "kitsu_id": "13326" + }, + "UQ Holder!": { + "showId": "958", + "kitsu_id": "12273" + }, + "Black Clover": { + "showId": "959", + "kitsu_id": "13209" + }, + "Sengoku Night Blood": { + "showId": "960", + "kitsu_id": "13784" + }, + "Juuni Taisen": { + "showId": "961", + "kitsu_id": "13225" + }, + "Shokugeki no Soma S3": { + "showId": "962", + "kitsu_id": "13581" + }, + "Osake wa Fuufu ni Natte Kara": { + "showId": "963", + "kitsu_id": "13719" + }, + "URAHARA": { + "showId": "964", + "kitsu_id": "13638" + }, + "Konohana Kitan": { + "showId": "965", + "kitsu_id": "13752" + }, + "Tsukipro The Animation": { + "showId": "966", + "kitsu_id": "13721" + }, + "Ousama Game": { + "showId": "967", + "kitsu_id": "13727" + }, + "Just Because!": { + "showId": "968", + "kitsu_id": "13530" + }, + "Ame-con!!": { + "showId": "969", + "kitsu_id": "13913" + }, + "Pikotarou no Lullaby Lullaby (Web)": { + "showId": "970", + "kitsu_id": "13572" + }, + "Taishou Chicchai-san": { + "showId": "971", + "kitsu_id": "13065" + }, + "Net-juu no Susume": { + "showId": "972", + "kitsu_id": "13703" + }, + "Kino no Tabi (2017)": { + "showId": "973", + "kitsu_id": "13467" + }, + "Dies Irae": { + "showId": "974", + "kitsu_id": "11212" + }, + "Shoujo Shuumatsu Ryokou": { + "showId": "975", + "kitsu_id": "13597" + }, + "Yuki Yuna wa Yusha de Aru - Washio Sumi no Shou": { + "showId": "976", + "kitsu_id": [ + "12678", + "14029" + ] + }, + "ID-0": { + "showId": "978", + "kitsu_id": "12484" + }, + "Time Bokan 24 S2": { + "showId": "979", + "kitsu_id": "13484" + }, + "Code Realize - Sousei no Himegimi": { + "showId": "980", + "kitsu_id": "11338" + }, + "Garo - Vanishing Line": { + "showId": "981", + "kitsu_id": "13730" + }, + "ClassicaLoid S2": { + "showId": "982", + "kitsu_id": "13317" + }, + "Dynamic Chord": { + "showId": "983", + "kitsu_id": "12945" + }, + "Love Live! Sunshine!! S2": { + "showId": "984", + "kitsu_id": "13299" + }, + "Monster Strike 3": { + "showId": "985", + "kitsu_id": "13970" + }, + "Two Car": { + "showId": "986", + "kitsu_id": "13680" + }, + "Blend S": { + "showId": "987", + "kitsu_id": "13465" + }, + "Mahoutsukai no Yome": { + "showId": "988", + "kitsu_id": "13228" + }, + "Houseki no Kuni": { + "showId": "989", + "kitsu_id": "13521" + }, + "Kekkai Sensen & Beyond": { + "showId": "990", + "kitsu_id": "12770" + }, + "Hozuki no Reitetsu S2": { + "showId": "991", + "kitsu_id": [ + "13226", + "14157" + ] + }, + "Cardfight!! Vanguard G Z": { + "showId": "992", + "kitsu_id": "13786" + }, + "Animegataris": { + "showId": "993", + "kitsu_id": "13699" + }, + "Imouto sae Ireba Ii.": { + "showId": "994", + "kitsu_id": "11207" + }, + "Himouto! Umaru-chan R": { + "showId": "995", + "kitsu_id": "13489" + }, + "Love Kome S2": { + "showId": "996", + "kitsu_id": "13901" + }, + "Wake Up, Girls! Shin Shou": { + "showId": "998", + "kitsu_id": "13707" + }, + "Evil or Live": { + "showId": "999", + "kitsu_id": "13824" + }, + "Onyankopon": { + "showId": "1000", + "kitsu_id": "13908" + }, + "Boku no Kanojo ga Majimesugiru Sho-bitch na Ken": { + "showId": "1001", + "kitsu_id": "13693" + }, + "Inuyashiki": { + "showId": "1002", + "kitsu_id": "13096" + }, + "IDOLiSH7": { + "showId": "1004", + "kitsu_id": "12558" + }, + "Binan Koukou Chikyuu Bouei-bu Love! Love! Love!": { + "showId": "1005", + "kitsu_id": "13651" + }, + "Yuki Yuna wa Yusha de Aru - Yusha no Shou": { + "showId": "1006", + "kitsu_id": "13160" + }, + "Itsudatte Bokura no Koi wa 10 cm Datta.": { + "showId": "1007", + "kitsu_id": "13788" + }, + "Sora yori mo Tooi Basho": { + "showId": "1008", + "kitsu_id": "13615" + }, + "Ramen Daisuki Koizumi-san": { + "showId": "1009", + "kitsu_id": "13531" + }, + "Yuru Camp": { + "showId": "1010", + "kitsu_id": "13480" + }, + "Devilman Crybaby": { + "showId": "1011", + "kitsu_id": "13230" + }, + "Toji no Miko": { + "showId": "1012", + "kitsu_id": "13710" + }, + "Grancrest Senki": { + "showId": "1013", + "kitsu_id": "12705" + }, + "Ito Junji Collection": { + "showId": "1014", + "kitsu_id": "13717" + }, + "Hataraku Onii-san!": { + "showId": "1015", + "kitsu_id": "14161" + }, + "Sanrio Danshi": { + "showId": "1016", + "kitsu_id": "13714" + }, + "Citrus": { + "showId": "1017", + "kitsu_id": "12737" + }, + "Slow Start": { + "showId": "1018", + "kitsu_id": "13712" + }, + "Pop Team Epic": { + "showId": "1019", + "kitsu_id": "13319" + }, + "Cardcaptor Sakura Clear Card": { + "showId": "1020", + "kitsu_id": "12237" + }, + "Mitsuboshi Colors": { + "showId": "1021", + "kitsu_id": "13227" + }, + "Gakuen Babysitters": { + "showId": "1022", + "kitsu_id": "13265" + }, + "Kokkoku": { + "showId": "1023", + "kitsu_id": "13958" + }, + "Ryuuou no Oshigoto!": { + "showId": "1024", + "kitsu_id": "13661" + }, + "Karakai Jouzu no Takagi-san": { + "showId": "1025", + "kitsu_id": "13635" + }, + "Micchiri Neko": { + "showId": "1026", + "kitsu_id": "14162" + }, + "Basilisk - Ouka Ninpouchou": { + "showId": "1027", + "kitsu_id": "13676" + }, + "Yowamushi Pedal - Glory Line": { + "showId": "1029", + "kitsu_id": "13594" + }, + "Overlord II": { + "showId": "1030", + "kitsu_id": "13237" + }, + "Kaijuu Girls S2": { + "showId": "1031", + "kitsu_id": "14152" + }, + "Hitori no Shita - The Outcast S2": { + "showId": "1032", + "kitsu_id": "13885" + }, + "Dame x Prince Anime Caravan": { + "showId": "1033", + "kitsu_id": "13706" + }, + "Violet Evergarden": { + "showId": "1034", + "kitsu_id": "12230" + }, + "Death March kara Hajimaru Isekai Kyousoukyoku": { + "showId": "1035", + "kitsu_id": "13276" + }, + "Koi wa Ameagari no You ni": { + "showId": "1036", + "kitsu_id": "13277" + }, + "Marchen Madchen": { + "showId": "1037", + "kitsu_id": "13700" + }, + "Miira no Kaikata": { + "showId": "1038", + "kitsu_id": "13729" + }, + "Hakumei to Mikochi": { + "showId": "1039", + "kitsu_id": "13950" + }, + "Hakata Tonkotsu Ramens": { + "showId": "1040", + "kitsu_id": "14024" + }, + "Killing Bites": { + "showId": "1041", + "kitsu_id": "14082" + }, + "Hakyuu Houshin Engi": { + "showId": "1042", + "kitsu_id": "13686" + }, + "Takunomi": { + "showId": "1043", + "kitsu_id": "13992" + }, + "Gin no Guardian S2": { + "showId": "1044", + "kitsu_id": "13573" + }, + "Darling in the FranXX": { + "showId": "1045", + "kitsu_id": "13600" + }, + "Dagashi Kashi S2": { + "showId": "1046", + "kitsu_id": "13701" + }, + "Beatless": { + "showId": "1047", + "kitsu_id": [ + "13939", + "41407" + ] + }, + "Zoku Touken Ranbu - Hanamaru": { + "showId": "1048", + "kitsu_id": "13478" + }, + "gdgd men's party": { + "showId": "1049", + "kitsu_id": "14093" + }, + "Godzilla - Kaijuu Wakusei": { + "showId": "1050", + "kitsu_id": "12634" + }, + "Emiya-san Chi no Kyou no Gohan": { + "showId": "1051", + "kitsu_id": "14154" + }, + "Spiritpact S2": { + "showId": "1052", + "kitsu_id": "14144" + }, + "B - The Beginning": { + "showId": "1053", + "kitsu_id": "11880" + }, + "A.I.C.O. - Incarnation": { + "showId": "1054", + "kitsu_id": "13696" + }, + "Sword Gai The Animation": { + "showId": "1056", + "kitsu_id": "9730" + }, + "Sword Gai The Animation S2": { + "showId": "1056", + "kitsu_id": "41175" + }, + "Mahou Shoujo Ore": { + "showId": "1057", + "kitsu_id": "14072" + }, + "Gegege no Kitarou (2018)": { + "showId": "1058", + "kitsu_id": "14246" + }, + "Uma Musume - Pretty Derby": { + "showId": "1059", + "kitsu_id": "13485" + }, + "Kakuriyo no Yadomeshi": { + "showId": "1060", + "kitsu_id": "40580" + }, + "Uchuu Senkan Tiramisu": { + "showId": "1061", + "kitsu_id": "40875" + }, + "Souten no Ken Re-Genesis": { + "showId": "1062", + "kitsu_id": [ + "13983", + "41953" + ] + }, + "Gundam Build Divers": { + "showId": "1063", + "kitsu_id": "40565" + }, + "Legend of the Galactic Heroes - Die Neue These": { + "showId": "1064", + "kitsu_id": "11331" + }, + "Tachibanakan To Lie Angle": { + "showId": "1065", + "kitsu_id": "41016" + }, + "Lupin III Part V": { + "showId": "1066", + "kitsu_id": "13749" + }, + "3D Kanojo Real Girl": { + "showId": "1067", + "kitsu_id": "14276" + }, + "Tokyo Ghoul re": { + "showId": "1068", + "kitsu_id": "13929" + }, + "Alice or Alice": { + "showId": "1069", + "kitsu_id": "13679" + }, + "Tada-kun wa Koi wo Shinai": { + "showId": "1070", + "kitsu_id": "13888" + }, + "Megalo Box": { + "showId": "1071", + "kitsu_id": "13949" + }, + "Comic Girls": { + "showId": "1072", + "kitsu_id": "13722" + }, + "Saredo Tsumibito wa Ryuu to Odoru": { + "showId": "1073", + "kitsu_id": "12626" + }, + "Gurazeni": { + "showId": "1074", + "kitsu_id": "13981" + }, + "Akkun to Kanojo": { + "showId": "1075", + "kitsu_id": "14202" + }, + "Lostorage Conflated WIXOSS": { + "showId": "1076", + "kitsu_id": "13720" + }, + "Mahou Shoujo Site": { + "showId": "1077", + "kitsu_id": "14137" + }, + "Hinamatsuri": { + "showId": "1078", + "kitsu_id": "14018" + }, + "Major 2nd": { + "showId": "1079", + "kitsu_id": "13952" + }, + "Devils Line": { + "showId": "1080", + "kitsu_id": "13708" + }, + "Omae wa Mada Gunma wo Shiranai": { + "showId": "1081", + "kitsu_id": "41146" + }, + "Sword Art Online Alternative - Gun Gale Online": { + "showId": "1082", + "kitsu_id": "13894" + }, + "Amanchu! Advance": { + "showId": "1083", + "kitsu_id": "14015" + }, + "Persona 5 The Animation": { + "showId": "1084", + "kitsu_id": "13684" + }, + "Persona 5 The Animation - Dark Sun": { + "showId": "1084", + "kitsu_id": "41972" + }, + "Persona 5 The Animation - Stars and Ours": { + "showId": "1084", + "kitsu_id": "42090" + }, + "Nil Admirari no Tenbin - Teito Genwaku Kitan": { + "showId": "1085", + "kitsu_id": "12762" + }, + "Caligula": { + "showId": "1086", + "kitsu_id": "14019" + }, + "Cutie Honey Universe": { + "showId": "1087", + "kitsu_id": "14142" + }, + "Binan Koukou Chikyuu Bouei-bu Love! S3": { + "showId": "1088", + "kitsu_id": "41018" + }, + "Chi's Sweet Adventure S2": { + "showId": "1089", + "kitsu_id": "13906" + }, + "Golden Kamuy": { + "showId": "1090", + "kitsu_id": "13689" + }, + "Fumikiri Jikan": { + "showId": "1091", + "kitsu_id": "41086" + }, + "Rokuhoudou Yotsuiro Biyori": { + "showId": "1092", + "kitsu_id": "13932" + }, + "Last Period - Owarinaki Rasen no Monogatari": { + "showId": "1093", + "kitsu_id": "41131" + }, + "Butlers - Chitose Momotose Monogatari": { + "showId": "1094", + "kitsu_id": "14037" + }, + "Steins Gate 0": { + "showId": "1095", + "kitsu_id": "10788" + }, + "High School DxD Hero": { + "showId": "1096", + "kitsu_id": "12677" + }, + "Dorei-ku The Animation": { + "showId": "1097", + "kitsu_id": "40960" + }, + "Wotaku ni Koi wa Muzukashii": { + "showId": "1098", + "kitsu_id": "13660" + }, + "Isekai Izakaya - Koto Aitheria no Izakaya Nobu": { + "showId": "1099", + "kitsu_id": "13466" + }, + "Full Metal Panic! Invisible Victory": { + "showId": "1100", + "kitsu_id": "11460" + }, + "Cardfight!! Vanguard (2018)": { + "showId": "1101", + "kitsu_id": "41145" + }, + "To Be Heroine": { + "showId": "1102", + "kitsu_id": "40592" + }, + "Hanebado!": { + "showId": "1103", + "kitsu_id": "40576" + }, + "Island": { + "showId": "1104", + "kitsu_id": "11965" + }, + "One Room S2": { + "showId": "1105", + "kitsu_id": "13905" + }, + "Yama no Susume S3": { + "showId": "1106", + "kitsu_id": "13583" + }, + "Senjuushi": { + "showId": "1107", + "kitsu_id": "41119" + }, + "Aru Zombie Shoujo no Sainan": { + "showId": "1108", + "kitsu_id": "8018" + }, + "Chuukan Kanriroku Tonegawa": { + "showId": "1109", + "kitsu_id": "41023" + }, + "Isekai Maou to Shoukan Shoujo no Dorei Majutsu": { + "showId": "1110", + "kitsu_id": "41133" + }, + "Yume Oukoku to Nemureru 100-nin no Ouji-sama": { + "showId": "1111", + "kitsu_id": "41378" + }, + "Banana Fish": { + "showId": "1112", + "kitsu_id": "13988" + }, + "Shichisei no Subaru": { + "showId": "1113", + "kitsu_id": "40893" + }, + "Satsuriku no Tenshi": { + "showId": "1114", + "kitsu_id": "13715" + }, + "Harukana Receive": { + "showId": "1116", + "kitsu_id": "13659" + }, + "Chio-chan no Tsuugakuro": { + "showId": "1117", + "kitsu_id": "13592" + }, + "Hataraku Onii-san! No 2!": { + "showId": "1118", + "kitsu_id": "41376" + }, + "Ongaku Shoujo": { + "showId": "1119", + "kitsu_id": "41066" + }, + "Yami Shibai - Japanese Ghost Stories 6": { + "showId": "1121", + "kitsu_id": "41315" + }, + "Yakusoku no Nanaya Matsuri": { + "showId": "1122", + "kitsu_id": "41466" + }, + "Hataraku Saibou": { + "showId": "1123", + "kitsu_id": "14212" + }, + "Hyakuren no Haou to Seiyaku no Valkyria": { + "showId": "1124", + "kitsu_id": "41052" + }, + "Planet With": { + "showId": "1126", + "kitsu_id": "41093" + }, + "Asobi Asobase": { + "showId": "1127", + "kitsu_id": "41149" + }, + "Kyoto Teramachi Sanjou no Holmes": { + "showId": "1129", + "kitsu_id": "41381" + }, + "Phantom in the Twilight": { + "showId": "1130", + "kitsu_id": "41120" + }, + "Jashin-chan Dropkick": { + "showId": "1131", + "kitsu_id": "41165" + }, + "Overlord III": { + "showId": "1132", + "kitsu_id": "41174" + }, + "Angolmois - Genkou Kassenki": { + "showId": "1133", + "kitsu_id": "13614" + }, + "Shinya! Tensai Bakabon": { + "showId": "1134", + "kitsu_id": "41189" + }, + "Free! Dive to the Future": { + "showId": "1135", + "kitsu_id": "14010" + }, + "Lord of Vermilion - Guren no Ou": { + "showId": "1136", + "kitsu_id": "41121" + }, + "Happy Sugar Life": { + "showId": "1137", + "kitsu_id": "41097" + }, + "Grand Blue": { + "showId": "1138", + "kitsu_id": "14190" + }, + "Yuragi-sou no Yuuna-san": { + "showId": "1139", + "kitsu_id": "14090" + }, + "Shoujo Kageki Revue Starlight": { + "showId": "1140", + "kitsu_id": "14174" + }, + "Tsukumogami Kashimasu": { + "showId": "1142", + "kitsu_id": "13991" + }, + "Godzilla - Kessen Kidou Zoushoku Toshi": { + "showId": "1143", + "kitsu_id": "13297" + }, + "Muhyo to Rouji no Mahouritsu Soudan Jimusho": { + "showId": "1145", + "kitsu_id": "41076" + }, + "Shikioriori": { + "showId": "1146", + "kitsu_id": "41404" + }, + "Double Decker! Doug and Kirill": { + "showId": "1147", + "kitsu_id": "41075" + }, + "Bungou Stray Dogs - Dead Apple": { + "showId": "1148", + "kitsu_id": "13570" + }, + "One Piece - Episode of Skypiea": { + "showId": "1149", + "kitsu_id": "41303" + }, + "Frankenstein Family": { + "showId": "1150", + "kitsu_id": "13463" + }, + "RErideD - Tokigoe no Derrida": { + "showId": "1151", + "kitsu_id": "13613" + }, + "Tensei Shitara Slime Datta Ken OAD": { + "showId": "1152", + "kitsu_id": "42022" + }, + "Thunderbolt Fantasy - The Sword of Life and Death": { + "showId": "1153", + "kitsu_id": "40589" + }, + "Thunderbolt Fantasy S2": { + "showId": "1154", + "kitsu_id": "13609" + }, + "Akanesasu Shoujo": { + "showId": "1155", + "kitsu_id": "41943" + }, + "Uchuu Senkan Tiramisu S2": { + "showId": "1156", + "kitsu_id": "41926" + }, + "Ken En Ken - Aoki Kagayaki": { + "showId": "1157", + "kitsu_id": "41946" + }, + "Jingai-san no Yome": { + "showId": "1158", + "kitsu_id": "41951" + }, + "Kaze ga Tsuyoku Fuiteiru": { + "showId": "1159", + "kitsu_id": "41372" + }, + "Sora to Umi no Aida": { + "showId": "1160", + "kitsu_id": "40856" + }, + "Seishun Buta Yarou wa Bunny Girl Senpai no Yume wo Minai": { + "showId": "1161", + "kitsu_id": "41056" + }, + "Zombieland Saga": { + "showId": "1162", + "kitsu_id": "41459" + }, + "Bakumatsu": { + "showId": "1163", + "kitsu_id": "41112" + }, + "Tonari no Kyuuketsuki-san": { + "showId": "1164", + "kitsu_id": "41111" + }, + "Yagate Kimi ni Naru": { + "showId": "1165", + "kitsu_id": "41240" + }, + "Hinomaru Sumo": { + "showId": "1166", + "kitsu_id": "41148" + }, + "Uchi no Maid ga Uzasugiru!": { + "showId": "1167", + "kitsu_id": "41209" + }, + "Dakaretai Otoko 1-i ni Odosarete Imasu.": { + "showId": "1168", + "kitsu_id": "41151" + }, + "JoJo's Bizarre Adventure - Golden Wind": { + "showId": "1169", + "kitsu_id": "41410" + }, + "Kishuku Gakkou no Juliet": { + "showId": "1170", + "kitsu_id": "41065" + }, + "Irozuku Sekai no Ashita kara": { + "showId": "1171", + "kitsu_id": "41101" + }, + "Gakuen Basara": { + "showId": "1172", + "kitsu_id": "41263" + }, + "Ace Attorney S2": { + "showId": "1173", + "kitsu_id": "41069" + }, + "Radiant": { + "showId": "1174", + "kitsu_id": "41099" + }, + "Goblin Slayer": { + "showId": "1175", + "kitsu_id": "40597" + }, + "Sword Art Online - Alicization": { + "showId": "1176", + "kitsu_id": "13893" + }, + "SSSS.Gridman": { + "showId": "1177", + "kitsu_id": "13601" + }, + "Release the Spyce": { + "showId": "1178", + "kitsu_id": "41405" + }, + "Fairy Tail Final Season": { + "showId": "1179", + "kitsu_id": "13658" + }, + "Ulysses - Jeanne d'Arc to Renkin no Kishi": { + "showId": "1180", + "kitsu_id": "13994" + }, + "Anima Yell!": { + "showId": "1181", + "kitsu_id": "41423" + }, + "Himote House": { + "showId": "1182", + "kitsu_id": "41961" + }, + "Gaikotsu Shoten'in Honda-san": { + "showId": "1183", + "kitsu_id": "13821" + }, + "The iDOLM@STER Side M - Wake Atte Mini!": { + "showId": "1184", + "kitsu_id": "41954" + }, + "Ore ga Suki nano wa Imouto dakedo Imouto ja Nai": { + "showId": "1185", + "kitsu_id": "41938" + }, + "Conception": { + "showId": "1186", + "kitsu_id": "41269" + }, + "Merc Storia - Mukiryoku Shounen to Bin no Naka no Shoujo": { + "showId": "1187", + "kitsu_id": "41965" + }, + "Karakuri Circus": { + "showId": "1188", + "kitsu_id": "41053" + }, + "Toaru Majutsu no Index III": { + "showId": "1189", + "kitsu_id": "13880" + }, + "Beelzebub-jou no Okinimesu mama.": { + "showId": "1190", + "kitsu_id": "41218" + }, + "Senran Kagura Shinovi Master - Tokyo Youma-hen": { + "showId": "1191", + "kitsu_id": "13690" + }, + "Tsurune": { + "showId": "1192", + "kitsu_id": "13990" + }, + "Kitsune no Koe": { + "showId": "1193", + "kitsu_id": "41942" + }, + "Castlevania S2": { + "showId": "1194", + "kitsu_id": "13627" + }, + "Saint Seiya - Saintia Shou": { + "showId": "1195", + "kitsu_id": "40611" + }, + "Lord El-Melloi II Case Files": { + "showId": "1197", + "kitsu_id": "42092" + }, + "BanG Dream! S2": { + "showId": "1198", + "kitsu_id": "41289" + }, + "Boogiepop wa Warawanai (2019)": { + "showId": "1199", + "kitsu_id": "41032" + }, + "Egao no Daika": { + "showId": "1200", + "kitsu_id": "42001" + }, + "Fukigen na Mononokean S2": { + "showId": "1201", + "kitsu_id": "42002" + }, + "W'z": { + "showId": "1202", + "kitsu_id": "41077" + }, + "Mini Toji": { + "showId": "1203", + "kitsu_id": "42008" + }, + "Tate no Yuusha no Nariagari": { + "showId": "1204", + "kitsu_id": "13593" + }, + "Ueno-san wa Bukiyou": { + "showId": "1205", + "kitsu_id": "41342" + }, + "Mob Psycho 100 S2": { + "showId": "1206", + "kitsu_id": "41071" + }, + "Pastel Memories": { + "showId": "1207", + "kitsu_id": "41430" + }, + "Dororo": { + "showId": "1208", + "kitsu_id": "41083" + }, + "Ame-iro Cocoa - Side G": { + "showId": "1209", + "kitsu_id": "42109" + }, + "Rinshi!! Ekoda-chan": { + "showId": "1210", + "kitsu_id": "42018" + }, + "Watashi ni Tenshi ga Maiorita!": { + "showId": "1211", + "kitsu_id": "41403" + }, + "Meiji Tokyo Renka": { + "showId": "1212", + "kitsu_id": "13056" + }, + "Doukyonin wa Hiza, Tokidoki, Atama no Ue": { + "showId": "1213", + "kitsu_id": "42000" + }, + "Kemurikusa": { + "showId": "1214", + "kitsu_id": "41408" + }, + "Yakusoku no Neverland": { + "showId": "1215", + "kitsu_id": "41312" + }, + "Go-toubun no Hanayome": { + "showId": "1217", + "kitsu_id": "41966" + }, + "Girly Air Force": { + "showId": "1218", + "kitsu_id": "41375" + }, + "Dimension High School": { + "showId": "1219", + "kitsu_id": "41999" + }, + "Date A Live S3": { + "showId": "1220", + "imdb_id": "tt2575684" + }, + "B-Project S2": { + "showId": "1221", + "kitsu_id": "41992" + }, + "Mahou Shoujo Tokushusen Asuka": { + "showId": "1222", + "kitsu_id": "41490" + }, + "Grimms Notes The Animation": { + "showId": "1223", + "kitsu_id": "42004" + }, + "Domestic na Kanojo": { + "showId": "1224", + "kitsu_id": "41479" + }, + "Bermuda Triangle - Colorful Pastrale": { + "showId": "1225", + "kitsu_id": "41958" + }, + "Kaguya-sama wa Kokurasetai": { + "showId": "1226", + "kitsu_id": "41373" + }, + "Endro": { + "showId": "1227", + "kitsu_id": "41957" + }, + "Kouya no Kotobuki Hikoutai": { + "showId": "1228", + "kitsu_id": "41959" + }, + "Kemono Friends S2": { + "showId": "1229", + "kitsu_id": "13621" + }, + "Virtual-san wa Miteiru": { + "showId": "1230", + "kitsu_id": "42042" + }, + "Manaria Friends": { + "showId": "1231", + "kitsu_id": "11354" + }, + "Ace of Diamond Act II": { + "showId": "1233", + "kitsu_id": "42160" + }, + "Kono Yo no Hate de Koi wo Utau Shoujo YU-NO": { + "showId": "1234", + "kitsu_id": "13469" + }, + "Bakumatsu Crisis": { + "showId": "1235", + "kitsu_id": "42161" + }, + "Fruits Basket (2019)": { + "showId": "1236", + "kitsu_id": "41995" + }, + "Senryuu Shoujo": { + "showId": "1237", + "kitsu_id": "42070" + }, + "Midara na Ao-chan wa Benkyou ga Dekinai": { + "showId": "1238", + "kitsu_id": "42024" + }, + "Hitoribocchi no Marumaru Seikatsu": { + "showId": "1239", + "kitsu_id": "41124" + }, + "Mix - Meisei Story": { + "showId": "1240", + "kitsu_id": "41925" + }, + "Amazing Stranger": { + "showId": "1241", + "kitsu_id": "42228" + }, + "Joshikausei": { + "showId": "1242", + "kitsu_id": "41941" + }, + "Nobunaga-sensei no Osanazuma": { + "showId": "1243", + "kitsu_id": "42093" + }, + "Kimetsu no Yaiba": { + "showId": "1244", + "kitsu_id": "41370" + }, + "Bokutachi wa Benkyou ga Dekinai": { + "showId": "1245", + "kitsu_id": "41956" + }, + "Kono Oto Tomare!": { + "showId": "1246", + "kitsu_id": "42101" + }, + "Nande Koko ni Sensei ga": { + "showId": "1247", + "kitsu_id": "42060" + }, + "Hachigatsu no Cinderella Nine": { + "showId": "1248", + "kitsu_id": "42144" + }, + "Mayonaka no Occult Koumuin": { + "showId": "1249", + "kitsu_id": "41465" + }, + "Fairy Gone": { + "showId": "1250", + "kitsu_id": [ + "42130", + "42358" + ] + }, + "Shoumetsu Toshi": { + "showId": "1251", + "kitsu_id": "41451" + }, + "RobiHachi": { + "showId": "1252", + "kitsu_id": "42226" + }, + "Namu Amida Butsu! - Rendai Utena": { + "showId": "1253", + "kitsu_id": "42214" + }, + "Yatogame-chan Kansatsu Nikki": { + "showId": "1254", + "kitsu_id": "42084" + }, + "Isekai Quartet": { + "showId": "1255", + "kitsu_id": "42032" + }, + "Strike Witches - 501-butai Hasshin Shimasu!": { + "showId": "1256", + "kitsu_id": "42074" + }, + "One Punch Man S2": { + "showId": "1257", + "kitsu_id": "12566" + }, + "Kenja no Mago": { + "showId": "1258", + "kitsu_id": "40944" + }, + "Sewayaki Kitsune no Senko-san": { + "showId": "1259", + "kitsu_id": "42026" + }, + "Sarazanmai": { + "showId": "1260", + "kitsu_id": "41017" + }, + "King of Prism - Shiny Seven Stars": { + "showId": "1261", + "kitsu_id": "42278" + }, + "Cardfight!! Vanguard - Zoku Koukousei-hen": { + "showId": "1262", + "kitsu_id": "42325" + }, + "High School Star Musical S3": { + "showId": "1263", + "kitsu_id": "40964" + }, + "Katsute Kami Datta Kemono-tachi e": { + "showId": "1264", + "kitsu_id": "42268" + }, + "Tejina-senpai": { + "showId": "1265", + "kitsu_id": "42082" + }, + "Sounan desu ka": { + "showId": "1266", + "kitsu_id": "42171" + }, + "Kanata no Astra": { + "showId": "1267", + "kitsu_id": "42148" + }, + "Dumbbell Nan Kilo Moteru": { + "showId": "1268", + "kitsu_id": "42134" + }, + "Maou-sama, Retry!": { + "showId": "1269", + "kitsu_id": "41950" + }, + "UchiMusume": { + "showId": "1270", + "imdb_id": "tt10347622" + }, + "Araburu Kisetsu no Otome-domo yo.": { + "showId": "1271", + "kitsu_id": "42025" + }, + "Joshikousei no Mudazukai": { + "showId": "1272", + "kitsu_id": "42221" + }, + "Dr. Stone": { + "showId": "1273", + "kitsu_id": "42080" + }, + "Enen no Shouboutai": { + "showId": "1274", + "kitsu_id": "42068" + }, + "Granbelm": { + "showId": "1275", + "kitsu_id": "42159" + }, + "Symphogear XV": { + "showId": "1276", + "kitsu_id": "11884" + }, + "Ensemble Stars!": { + "showId": "1277", + "kitsu_id": "11595" + }, + "Nakanohito Genome [Jikkyouchuu]": { + "showId": "1278", + "kitsu_id": "41336" + }, + "Re Stage! Dream Days": { + "showId": "1279", + "kitsu_id": "42280" + }, + "Yami Shibai - Japanese Ghost Stories 7": { + "showId": "1280", + "kitsu_id": "42359" + }, + "DanMachi S2": { + "showId": "1281", + "kitsu_id": "40599" + }, + "Hakata Mentai! Pirikarako-chan": { + "showId": "1282", + "kitsu_id": "42369" + }, + "HenSuki": { + "showId": "1283", + "kitsu_id": "42451" + }, + "Kochoki - Wakaki Nobunaga": { + "showId": "1284", + "kitsu_id": "42182" + }, + "Arifureta Shokugyou de Sekai Saikyou": { + "showId": "1285", + "kitsu_id": "14043" + }, + "Cop Craft": { + "showId": "1286", + "kitsu_id": "42174" + }, + "Vinland Saga": { + "showId": "1287", + "kitsu_id": "41084" + }, + "Isekai Cheat Magician": { + "showId": "1290", + "kitsu_id": "42319" + }, + "Given": { + "showId": "1291", + "kitsu_id": "42379" + }, + "Machikado Mazoku": { + "showId": "1292", + "kitsu_id": "42137" + }, + "Toaru Kagaku no Accelerator": { + "showId": "1293", + "kitsu_id": "41980" + }, + "Okaa-san Online": { + "showId": "1294", + "kitsu_id": "5114" + }, + "Bem": { + "showId": "1295", + "kitsu_id": "42175" + }, + "Try Knights": { + "showId": "1296", + "kitsu_id": "42281" + }, + "Fate Grand Order - Absolute Demonic Front Babylonia": { + "showId": "1297", + "kitsu_id": "42269" + }, + "Youjo Senki Movie": { + "showId": "1299", + "kitsu_id": "14173" + }, + "Bananya S2": { + "showId": "1300", + "kitsu_id": "42486" + }, + "Ahiru no Sora": { + "showId": "1301", + "kitsu_id": "41399" + }, + "Radiant S2": { + "showId": "1302", + "kitsu_id": "42521" + }, + "Urashimasakatasen no Nichijou": { + "showId": "1303", + "kitsu_id": "42546" + }, + "Hataage! Kemono Michi": { + "showId": "1304", + "kitsu_id": "42127" + }, + "Shinchou Yuusha": { + "showId": "1305", + "kitsu_id": "42079" + }, + "Honzuki no Gekokujou": { + "showId": "1306", + "kitsu_id": "42241" + }, + "Ore wo Suki nano wa Omae dake ka yo": { + "showId": "1307", + "kitsu_id": "42047" + }, + "Houkago Saikoro Club": { + "showId": "1308", + "kitsu_id": "42345" + }, + "Choyoyu": { + "showId": "1309", + "imdb_id": "tt10671282" + }, + "Azur Lane": { + "showId": "1310", + "kitsu_id": "42420" + }, + "Chuubyou Gekihatsu Boy": { + "showId": "1311", + "kitsu_id": "42120" + }, + "Null Peta": { + "showId": "1312", + "kitsu_id": "42469" + }, + "Granblue Fantasy The Animation S2": { + "showId": "1313", + "kitsu_id": "14132" + }, + "BLACKFOX": { + "showId": "1314", + "kitsu_id": "41102" + }, + "Mairimashita! Iruma-kun": { + "showId": "1315", + "kitsu_id": "42310" + }, + "Val x Love": { + "showId": "1316", + "kitsu_id": "42344" + }, + "Bokutachi wa Benkyou ga Dekinai S2": { + "showId": "1317", + "kitsu_id": "42414" + }, + "Actors - Songs Connection": { + "showId": "1320", + "kitsu_id": "42308" + }, + "Babylon": { + "showId": "1321", + "kitsu_id": "41085" + }, + "Africa no Salaryman": { + "showId": "1322", + "kitsu_id": "42550" + }, + "Special 7 - Special Crime Investigation Unit": { + "showId": "1323", + "kitsu_id": "42272" + }, + "Watashi, Nouryoku wa Heikinchi de tte Itta yo ne!": { + "showId": "1324", + "kitsu_id": "42423" + }, + "Stand My Heroes - Piece of Truth": { + "showId": "1325", + "kitsu_id": "42309" + }, + "Phantasy Star Online 2 - Episode Oracle": { + "showId": "1326", + "kitsu_id": "42548" + }, + "Kandagawa Jet Girls": { + "showId": "1327", + "kitsu_id": "42476" + }, + "ZX - Code Reunion": { + "showId": "1328", + "kitsu_id": "42307" + }, + "Mugen no Juunin - Immortal": { + "showId": "1329", + "kitsu_id": "42346" + }, + "Hoshiai no Sora": { + "showId": "1330", + "kitsu_id": "42094" + }, + "No Guns Life": { + "showId": "1331", + "kitsu_id": "42197" + }, + "Assassins Pride": { + "showId": "1332", + "kitsu_id": "42328" + }, + "Gundam Build Divers Re-RISE": { + "showId": "1333", + "kitsu_id": "42585" + }, + "Shokugeki no Soma S4": { + "showId": "1334", + "kitsu_id": "42390" + }, + "Shin Chuuka Ichiban!": { + "showId": "1335", + "kitsu_id": "42549" + }, + "Kabukicho Sherlock": { + "showId": "1336", + "kitsu_id": "41939" + }, + "Sword Art Online - Alicization - War of Underworld": { + "showId": "1337", + "kitsu_id": "42213" + }, + "Rifle is Beautiful": { + "showId": "1338", + "kitsu_id": "42292" + }, + "Chihayafuru S3": { + "showId": "1339", + "kitsu_id": "40998" + }, + "PSYCHO-PASS 3": { + "showId": "1340", + "kitsu_id": "42183" + }, + "Mahouka Koukou no Rettousei Movie - Hoshi wo Yobu Shoujo": { + "showId": "1341", + "kitsu_id": "11931" + }, + "Thunderbolt Fantasy - Bewitching Melody of the West": { + "showId": "1342" + }, + "A3! Season Spring & Summer": { + "showId": "1378", + "kitsu_id": "42146" + }, + "ARP Backstage Pass": { + "showId": "1379", + "kitsu_id": "42879" + }, + "BanG Dream! S3": { + "showId": "1354", + "kitsu_id": "41290" + }, + "Boku no Tonari ni Ankoku Hakaishin ga Imasu": { + "showId": "1374", + "kitsu_id": "42100" + }, + "Darwin's Game": { + "showId": "1344", + "kitsu_id": "42260" + }, + "Eizouken ni wa Te wo Dasu na!": { + "showId": "1347", + "kitsu_id": "42343" + }, + "Haikyuu!! Riku vs Kuu": { + "showId": "1372", + "kitsu_id": "42502" + }, + "Haikyuu!! S4": { + "showId": "1369", + "kitsu_id": "42059" + }, + "Hatena Illusion": { + "showId": "1360", + "kitsu_id": "13704" + }, + "Heya Camp": { + "showId": "1351", + "kitsu_id": "41978" + }, + "Housekishou Richard-shi no Nazo Kantei": { + "showId": "1366", + "kitsu_id": "42488" + }, + "ID INVADED": { + "showId": "1348", + "kitsu_id": "42436" + }, + "Infinite Dendrogram": { + "showId": "1362", + "kitsu_id": "42131" + }, + "Isekai Quartet S2": { + "showId": "1380", + "kitsu_id": "42410" + }, + "Ishuzoku Reviewers": { + "showId": "1375", + "kitsu_id": "42744" + }, + "Itai no wa Iya nano de Bougyoryoku ni Kyokufuri Shitai to Omoimasu": { + "showId": "1357", + "kitsu_id": "42043" + }, + "Jibaku Shounen Hanako-kun": { + "showId": "1365", + "kitsu_id": "42322" + }, + "Koisuru Asteroid": { + "showId": "1345", + "kitsu_id": "42470" + }, + "Kyochuu Rettou Movie": { + "showId": "1371", + "kitsu_id": "42941" + }, + "Kyokou Suiri": { + "showId": "1377", + "kitsu_id": "42117" + }, + "Magia Record": { + "showId": "1346", + "kitsu_id": "42016" + }, + "Majutsushi Orphen Hagure Tabi": { + "showId": "1355", + "kitsu_id": "42329" + }, + "Murenase! Seton Gakuen": { + "showId": "1352", + "kitsu_id": "42601" + }, + "Nanabun no Nijyuuni": { + "showId": "1376", + "kitsu_id": "42456" + }, + "Nekopara": { + "showId": "1359", + "kitsu_id": "13121" + }, + "number24": { + "showId": "1356", + "kitsu_id": "42209" + }, + "Oda Cinnamon Nobunaga": { + "showId": "1373", + "kitsu_id": "42911" + }, + "Oshi ga Budoukan Ittekuretara Shinu": { + "showId": "1363", + "kitsu_id": "41309" + }, + "Pet": { + "showId": "1350", + "kitsu_id": "41089" + }, + "Plunderer": { + "showId": "1358", + "kitsu_id": "40600" + }, + "Re Zero kara Hajimeru Isekai Seikatsu - Director's Cut": { + "showId": "660", + "kitsu_id": "42903" + }, + "Rikei ga Koi ni Ochita no de Shoumei shitemita": { + "showId": "1368", + "kitsu_id": "42297" + }, + "Runway de Waratte": { + "showId": "1370", + "kitsu_id": "42552" + }, + "Show By Rock!! Mashumairesh!!": { + "showId": "1361", + "kitsu_id": "42885" + }, + "Somali to Mori no Kamisama": { + "showId": "1349", + "kitsu_id": "42201" + }, + "Toaru Kagaku no Railgun T": { + "showId": "1367", + "kitsu_id": "41979" + }, + "Uchi Tama - Uchi no Tama Shirimasen ka": { + "showId": "1364", + "kitsu_id": "42397" + }, + "Yatogame-chan Kansatsu Nikki S2": { + "showId": "1353", + "kitsu_id": "42398" + }, + "K - Seven Stories": { + "showId": "1381", + "kitsu_id": [ + "12116", + "41770", + "41772", + "41767", + "41768", + "41771" + ] + }, + "Kono Subarashii Sekai ni Shukufuku wo! Movie": { + "showId": "1382", + "kitsu_id": "41440" + }, + "PSYCHO-PASS 3 - First Inspector": { + "showId": "1383", + "kitsu_id": "42936" + }, + "Bungo to Alchemist - Shinpan no Haguruma": { + "showId": "1390", + "kitsu_id": "43062" + }, + "Hachi-nan tte, Sore wa Nai deshou!": { + "showId": "1386", + "kitsu_id": "43059" + }, + "Kakushigoto": { + "showId": "1387", + "kitsu_id": "42722" + }, + "Listeners": { + "showId": "1389", + "kitsu_id": "42391" + }, + "Nami yo Kiitekure": { + "showId": "1388", + "kitsu_id": "42614" + }, + "Tamayomi": { + "showId": "1384", + "kitsu_id": "42404" + }, + "Tower of God": { + "showId": "1385", + "kitsu_id": "43004" + }, + "Arte": { + "showId": "1393", + "kitsu_id": "42479" + }, + "Digimon Adventure (2020)": { + "showId": "1397", + "kitsu_id": "42954" + }, + "Sakura Wars the Animation": { + "showId": "1391", + "kitsu_id": "42966" + }, + "Yesterday wo Utatte": { + "showId": "1396", + "kitsu_id": "43063" + }, + "Gal to Kyouryuu": { + "showId": "1394", + "kitsu_id": "42532" + }, + "Gleipnir": { + "showId": "1401", + "kitsu_id": "42173" + }, + "IDOLiSH7 S2": { + "showId": "1398", + "kitsu_id": "42453" + }, + "Kingdom S3": { + "showId": "1402", + "kitsu_id": "43037" + }, + "Shachou, Battle no Jikan desu!": { + "showId": "1400", + "kitsu_id": "42850" + }, + "Tsugumomo S2": { + "showId": "1399", + "kitsu_id": "42180" + }, + "Fruits Basket S2 (2019)": { + "showId": "1406", + "kitsu_id": "42554" + }, + "Houkago Teibou Nisshi": { + "showId": "1407", + "kitsu_id": "42296" + }, + "Jashin-chan Dropkick S2": { + "showId": "1404", + "kitsu_id": "42126" + }, + "Princess Connect! Re Dive": { + "showId": "1405", + "kitsu_id": "42892" + }, + "Shadowverse": { + "showId": "1408", + "kitsu_id": "42613" + }, + "Shironeko Project - Zero Chronicle": { + "showId": "1403", + "kitsu_id": "43084" + }, + "Appare-Ranman!": { + "showId": "1410", + "kitsu_id": "42622" + }, + "Fugou Keiji Balance - UNLIMITED": { + "showId": "1409", + "kitsu_id": "43056" + }, + "Hamefura": { + "showId": "1395", + "kitsu_id": "42277" + }, + "Kaguya-sama wa Kokurasetai S2": { + "showId": "1413", + "kitsu_id": "42632" + }, + "Major 2nd S2": { + "showId": "1392", + "kitsu_id": "43109" + }, + "Shokugeki no Soma S5": { + "showId": "1411", + "kitsu_id": "42921" + }, + "Zashiki Warashi no Tatami-chan": { + "showId": "1412", + "kitsu_id": "43115" + }, + "Woodpecker Detective's Office": { + "showId": "1414", + "kitsu_id": "42602" + }, + "Kitsutsuki Tanteidokoro": { + "showId": "1415", + "kitsu_id": "42602" + }, + "Enen no Shouboutai S2": { + "showId": "1416", + "kitsu_id": "42909" + }, + "Dokyuu Hentai HxEros": { + "showId": "1417", + "kitsu_id": "42657" + }, + "Healin Good Precure": { + "showId": "1418", + "kitsu_id": "42650" + }, + "Maou Gakuin no Futekigousha": { + "showId": "1419", + "kitsu_id": "43005" + }, + "Lapis ReLiGHTs": { + "showId": "1420", + "kitsu_id": "41115" + }, + "The God of High School": { + "showId": "1421", + "kitsu_id": "43018" + }, + "Umayon": { + "showId": "1422", + "kitsu_id": "42034" + }, + "Deca-Dence": { + "showId": "1423", + "kitsu_id": "42433" + }, + "Uzaki-chan wa Asobitai!": { + "showId": "1424", + "kitsu_id": "43094" + }, + "Yahari Ore no Seishun Love Come wa Machigatteiru Kan": { + "showId": "1425", + "kitsu_id": "42194" + }, + "Peter Grill to Kenja no Jikan": { + "showId": "1426", + "kitsu_id": "42563" + }, + "Kanojo, Okarishimasu": { + "showId": "1427", + "kitsu_id": "43028" + }, + "Monster Musume no Oisha-san": { + "showId": "1428", + "kitsu_id": "42724" + }, + "Ninja Collection": { + "showId": "1429", + "kitsu_id": "43236" + }, + "Gibiate": { + "showId": "1430", + "kitsu_id": "43124" + }, + "Koi to Producer - Evol x Love": { + "showId": "1431", + "kitsu_id": "43240" + }, + "Re Zero kara Hajimeru Isekai Seikatsu - Memory Snow": { + "showId": "1432", + "kitsu_id": "13882" + }, + "Re Zero kara Hajimeru Isekai Seikatsu - Hyouketsu no Kizuna": { + "showId": "1433", + "kitsu_id": "42006" + }, + "Goblin Slayer - Goblin's Crown": { + "showId": "1434", + "kitsu_id": "42204" + }, + "Boku no Hero Academia - Ikinokore! Kesshi no Survival Kunren": { + "showId": "1435", + "kitsu_id": "43485" + } +} \ No newline at end of file diff --git a/scraper/scrapers/horriblesubs/horriblesubs_scraper.js b/scraper/scrapers/horriblesubs/horriblesubs_scraper.js new file mode 100644 index 0000000..91d9a81 --- /dev/null +++ b/scraper/scrapers/horriblesubs/horriblesubs_scraper.js @@ -0,0 +1,186 @@ +const fs = require('fs'); +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const decode = require('magnet-uri'); +const horriblesubs = require('./horriblesubs_api.js'); +const repository = require('../../lib/repository'); +const { Type } = require('../../lib/types'); +const { updateCurrentSeeders, updateTorrentSize } = require('../../lib/torrent'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); +const { getMetadata, getKitsuId } = require('../../lib/metadata'); +const showMappings = require('./horriblesubs_mapping.json'); + +const NAME = 'HorribleSubs'; +const NEXT_FULL_SCRAPE_OFFSET = 5 * 24 * 60 * 60; // 5 days; + +const limiter = new Bottleneck({ maxConcurrent: 5 }); +const entryLimiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + const lastScraped = lastScrape.lastScraped && moment(lastScrape.lastScraped); + + if (!lastScraped || lastScraped.add(NEXT_FULL_SCRAPE_OFFSET, 'seconds') < scrapeStart) { + console.log(`[${scrapeStart}] scrapping all ${NAME} shows...`); + return _scrapeAllShows() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished scrapping all ${NAME} shows`)); + } else { + console.log(`[${scrapeStart}] scrapping latest ${NAME} entries...`); + return _scrapeLatestEntries() + .then(() => console.log(`[${moment()}] finished scrapping latest ${NAME} entries`)); + } +} + +async function updateSeeders(torrent) { + return Promise.resolve([]); +} + +async function _scrapeLatestEntries() { + const latestEntries = await horriblesubs.getLatestEntries(); + + return Promise.all(latestEntries + .map((entryData) => limiter.schedule(() => _parseShowData(entryData) + .catch((err) => console.log(err))))); +} + +async function _scrapeAllShows() { + const shows = await horriblesubs.allShows(); + + return Promise.all(shows + .map((show) => limiter.schedule(() => horriblesubs.showData(show) + .then((showData) => _parseShowData(showData, false)) + .catch((err) => console.log(err))))); +} + +async function compareSearchKitsuIds() { + console.log(`${NAME}: initiating kitsu compare...`); + const shows = await horriblesubs.allShows() + .then((shows) => Promise.all(shows.slice(0, 1).map((show) => limiter.schedule(() => enrichShow(show))))); + + const incorrect = shows.filter( + (show) => showMappings[show.title] && showMappings[show.title].kitsu_id !== show.kitsu_id); + const incorrectRatio = incorrect.length / shows.length; + console.log(incorrect); + console.log(`Ratio: ${incorrectRatio}`); +} + +async function initMapping() { + console.log(`${NAME}: initiating kitsu mapping...`); + const shows = await horriblesubs.allShows() + .then((shows) => shows.filter((show) => !showMappings[show.title])) + .then((shows) => Promise.all(shows.map((show) => limiter.schedule(() => enrichShow(show))))) + .then((shows) => shows.reduce((map, show) => (map[show.title] = show, map), showMappings)); + + fs.writeFile( + "./scraper/scrapers/horriblesubs/horriblesubs_mapping.json", + JSON.stringify(shows), 'utf8', + (err) => { + if (err) { + console.log("An error occurred while writing JSON Object to File.", err); + } else { + console.log(`${NAME}: finished kitsu mapping`); + } + } + ); +} + +async function enrichShow(show) { + console.log(`${NAME}: getting show info for ${show.title}...`); + const showId = await horriblesubs._getShowId(show.url) + .catch(() => show.title); + const metadata = await getKitsuId({ title: show.title }) + .then((kitsuId) => getMetadata(kitsuId)) + .catch((error) => { + console.log(`Failed getting kitsu meta: ${error.message}`); + return {}; + }); + + return { + showId: showId, + kitsu_id: metadata.kitsuId, + ...show, + kitsuTitle: metadata.title, + imdb_id: metadata.imdbId + } +} + +async function _parseShowData(showData, updateSeeders = true) { + console.log(`${NAME}: scrapping ${showData.title} data...`); + const showMapping = showMappings[showData.title]; + const kitsuId = showMapping && showMapping.kitsu_id; + if (!showMapping) { + throw new Error(`No kitsu mapping found for ${showData.title}`); + } + if (!kitsuId) { + throw new Error(`No kitsuId found for ${showData.title}`); + } + + // sometimes horriblesubs entry contains multiple season in it, so need to split it per kitsu season entry + const kitsuIdsMapping = Array.isArray(kitsuId) && await Promise.all(kitsuId.map(kitsuId => getMetadata(kitsuId))) + .then((metas) => metas.reduce((map, meta) => { + const epOffset = Object.keys(map).length; + [...Array(meta.totalCount || 1).keys()] + .map(ep => ep + 1) + .forEach(ep => map[ep + epOffset] = { kitsuId: meta.kitsuId, episode: ep, title: meta.title }); + return map; + }, {})) || {}; + const formatTitle = (episodeInfo, mirror) => { + const mapping = kitsuIdsMapping[episodeInfo.episode.replace(/^0+/, '')]; + if (mapping) { + return `${mapping.title} - ${mapping.episode} [${mirror.resolution}]`; + } + return `${episodeInfo.title} - ${episodeInfo.episode} [${mirror.resolution}]`; + }; + const getKitsuId = inputEpisode => { + const episodeString = inputEpisode.includes('-') && inputEpisode.split('-')[0] || inputEpisode; + const episode = parseInt(episodeString, 10); + if (kitsuIdsMapping[episode]) { + return kitsuIdsMapping[episode].kitsuId; + } else if (Array.isArray(kitsuId)) { + console.warn(`Unmapped episode number for ${showData.title} - ${inputEpisode}`); + return undefined; + } + return kitsuId; + }; + + return Promise.all([].concat(showData.singleEpisodes || []).concat(showData.packEpisodes || []) + .map(episodeInfo => episodeInfo.mirrors + .filter(mirror => mirror.magnetLink && mirror.magnetLink.length) + .map(mirror => ({ + provider: NAME, + ...mirror, + infoHash: decode(mirror.magnetLink).infoHash, + trackers: decode(mirror.magnetLink).tr.join(','), + title: formatTitle(episodeInfo, mirror), + type: Type.ANIME, + kitsuId: getKitsuId(episodeInfo.episode), + uploadDate: episodeInfo.uploadDate, + }))) + .reduce((a, b) => a.concat(b), []) + .filter(torrent => torrent.kitsuId) + .map(torrent => entryLimiter.schedule(() => processTorrentRecord(torrent, updateSeeders)))) + .then(() => console.log(`${NAME}: finished scrapping ${showData.title} data`)); +} + +async function processTorrentRecord(torrent, updateSeeders = true) { + const existingTorrent = await repository.getTorrent(torrent).catch(() => undefined); + + if (existingTorrent && existingTorrent.provider === NAME) { + if (updateSeeders) { + return updateCurrentSeeders(torrent).then(updatedSeeders => checkAndUpdateTorrent(updatedSeeders)) + } + return Promise.resolve(torrent) + } + + return updateTorrentSize(torrent) + .then(updated => updateCurrentSeeders(updated)) + .then(updated => createTorrentEntry(updated, true)) + .catch(error => console.warn(`Failed creating entry for ${torrent.title}:`, error)); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/kickass/kickass_api.js b/scraper/scrapers/kickass/kickass_api.js new file mode 100644 index 0000000..d15d3e9 --- /dev/null +++ b/scraper/scrapers/kickass/kickass_api.js @@ -0,0 +1,175 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const moment = require('moment'); +const decode = require('magnet-uri'); +const Promises = require('../../lib/promises'); + +const defaultProxies = [ + 'https://katcr.co' +]; +const defaultTimeout = 10000; + +const Categories = { + MOVIE: 'movies', + TV: 'tv', + ANIME: 'anime', + APPS: 'applications', + GAMES: 'games', + MUSIC: 'music', + BOOKS: 'books', + PORN: 'xxx', + OTHER: 'other', +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + const proxyList = config.proxyList || defaultProxies; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/torrent/${torrentId}`, config))) + .then((body) => parseTorrentPage(body)) + .then((torrent) => ({ torrentId, ...torrent })) + .catch((err) => torrent(torrentId, config, retries - 1)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/search/${keyword}/${page}/99/${category}`, config))) + .then((body) => parseTableBody(body)) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/category/${category}/page/${page}`, config))) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('Access Denied')) { + console.log(`Access Denied: ${requestUrl}`); + throw new Error(`Access Denied: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden') || + body.includes('Origin DNS error') || + !body.includes('Kickass Torrents')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('.table > tbody > tr').each((i, element) => { + const row = $(element); + const magnetLink = row.find('a[title="Torrent magnet link"]').attr('href'); + torrents.push({ + name: row.find('a[class="torrents_table__torrent_title"]').first().children('b').text(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + torrentId: row.find('a[class="torrents_table__torrent_title"]').first().attr('href').replace('/torrent/', ''), + category: row.find('span[class="torrents_table__upload_info"]').first().children('a').first().attr('href') + .match(/category\/([^\/]+)/)[1], + seeders: parseInt(row.find('td[data-title="Seed"]').first().text()), + leechers: parseInt(row.find('td[data-title="Leech"]').first().text()), + size: parseSize(row.find('td[data-title="Size"]').first().text()), + uploadDate: moment(row.find('td[data-title="Age"]').first().attr('title')).toDate() + }); + }); + + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const content = $('div[class="col"]').first(); + const info = content.find('div[class="torrent_stats"]').parent(); + const description = content.find('div[id="main"]'); + const magnetLink = info.find('a[title="Download verified Magnet"]').attr('href'); + const imdbIdMatch = description.html().match(/imdb\.com\/title\/(tt\d+)/i); + + const torrent = { + name: info.find('h1').first().text(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + seeders: parseInt(info.find('span[class="torrent_stats__seed_count mr-2"]').first().text().match(/\d+/)[0], 10), + leechers: parseInt(info.find('span[class="torrent_stats__leech_count mr-2"]').first().text().match(/\d+/)[0], 10), + category: info.find('small').first().children('a').first().attr('href').match(/\/category\/([^\/]+)/)[1], + languages: description.find('span:contains(\'Audio\')').next().children().eq(0).text(), + size: parseSize(description.find('ul[class="file_list"]').first().find('li').first().contents().eq(2).text() + .match(/\(Size: (.+)\)/)[1]), + uploadDate: moment(info.find('time').first().text()).toDate(), + imdbId: imdbIdMatch && imdbIdMatch[1], + files: content.find('ul[class="file_list"]').first().find('li > ul > li[class="file_list__file"]') + .map((i, elem) => $(elem)) + .map((i, ele) => ({ + fileIndex: i, + name: ele.find('span > ul > li').contents().eq(1).text().trim().replace(/^.+\//g, ''), + path: ele.find('span > ul > li').contents().eq(1).text().trim(), + size: parseSize(ele.contents().eq(2).text()) + })).get() + }; + if (torrent.files.length >= 50) { + // a max of 50 files are displayed on the page + delete torrent.files; + } + resolve(torrent); + }); +} + +function parseSize(sizeText) { + if (!sizeText) { + return undefined; + } + let scale = 1; + if (sizeText.includes('GB')) { + scale = 1024 * 1024 * 1024 + } else if (sizeText.includes('MB')) { + scale = 1024 * 1024; + } else if (sizeText.includes('KB') || sizeText.includes('kB')) { + scale = 1024; + } + return Math.floor(parseFloat(sizeText.replace(/[',]/g, '')) * scale); +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/kickass/kickass_dump_scraper.js b/scraper/scrapers/kickass/kickass_dump_scraper.js new file mode 100644 index 0000000..6e8dc5e --- /dev/null +++ b/scraper/scrapers/kickass/kickass_dump_scraper.js @@ -0,0 +1,98 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const LineByLineReader = require('line-by-line'); +const fs = require('fs'); +const { Type } = require('../../lib/types'); +const { createTorrentEntry, createSkipTorrentEntry, getStoredTorrentEntry } = require('../../lib/torrentEntries'); + +const NAME = 'KickassTorrents'; +const CSV_FILE_PATH = '/tmp/kickass.csv'; + +const limiter = new Bottleneck({ maxConcurrent: 40 }); + +async function scrape() { + console.log(`starting to scrape KAT dump: ${JSON.stringify(lastDump)}`); + + let entriesProcessed = 0; + const lr = new LineByLineReader(CSV_FILE_PATH); + lr.on('line', (line) => { + if (entriesProcessed % 1000 === 0) { + console.log(`Processed ${entriesProcessed} entries`); + } + const row = line.match(/(?<=^|\|)(".*"|[^|]+)(?=\||$)/g); + if (row.length !== 11) { + console.log(`Invalid row: ${line}`); + return; + } + const torrent = { + infoHash: row[0].toLowerCase(), + title: row[1] + .replace(/^"|"$/g, '') + .replace(/&/g, '&') + .replace(/&\w{2,6};/g, ' ') + .replace(/\s+/g, ' ') + .trim(), + category: row[2], + size: parseInt(row[5], 10), + seeders: parseInt(row[8], 10), + uploadDate: moment.unix(parseInt(row[10], 10)).toDate(), + }; + + if (!limiter.empty()) { + lr.pause() + } + + limiter.schedule(() => processTorrentRecord(torrent) + .catch((error) => console.log(`failed ${torrent.title} due: ${error}`))) + .then(() => limiter.empty()) + .then((empty) => empty && lr.resume()) + .then(() => entriesProcessed++); + }); + lr.on('error', (err) => { + console.log(err); + }); + lr.on('end', () => { + fs.unlink(CSV_FILE_PATH); + console.log(`finished to scrape KAT dump: ${JSON.stringify(lastDump)}!`); + }); +} + +const categoryMapping = { + "Movies": Type.MOVIE, + "TV": Type.SERIES, + "Anime": Type.ANIME +}; + +async function processTorrentRecord(record) { + if (!categoryMapping[record.category] || record.seeders === 0) { + return createSkipTorrentEntry(record); + } + if (await getStoredTorrentEntry(record)) { + return; + } + + const torrentFound = await findTorrent(record).catch(() => undefined); + + if (!torrentFound) { + return createSkipTorrentEntry(record); + } + + const torrent = { + infoHash: record.infoHash, + provider: NAME, + title: torrentFound.name, + size: record.size, + type: categoryMapping[record.category], + imdbId: torrentFound.imdbId, + uploadDate: record.uploadDate, + seeders: torrentFound.seeders, + }; + + return createTorrentEntry(torrent); +} + +async function findTorrent(record) { + return Promise.reject("not found"); +} + +module.exports = { scrape, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/kickass/kickass_scraper.js b/scraper/scrapers/kickass/kickass_scraper.js new file mode 100644 index 0000000..f23e423 --- /dev/null +++ b/scraper/scrapers/kickass/kickass_scraper.js @@ -0,0 +1,91 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const kickass = require('./kickass_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'KickassTorrents'; +const UNTIL_PAGE = 10; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => kickass.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + kickass.Categories.MOVIE, + kickass.Categories.TV, + kickass.Categories.ANIME, + ]; + + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return kickass.browse(({ category, page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + const torrentFound = await kickass.torrent(record.torrentId).catch(() => undefined); + + if (!torrentFound || !TYPE_MAPPING[torrentFound.category]) { + return Promise.resolve('Invalid torrent record'); + } + + const torrent = { + infoHash: torrentFound.infoHash, + provider: NAME, + torrentId: torrentFound.torrentId, + title: torrentFound.name.replace(/\t|\s+/g, ' '), + type: TYPE_MAPPING[torrentFound.category], + size: torrentFound.size, + seeders: torrentFound.seeders, + uploadDate: torrentFound.uploadDate, + imdbId: torrentFound.imdbId, + languages: torrentFound.languages || undefined + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[kickass.Categories.MOVIE] = Type.MOVIE; + mapping[kickass.Categories.TV] = Type.SERIES; + mapping[kickass.Categories.ANIME] = Type.ANIME; + return mapping; +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/lapumia/lapumia_api.js b/scraper/scrapers/lapumia/lapumia_api.js new file mode 100644 index 0000000..66a16de --- /dev/null +++ b/scraper/scrapers/lapumia/lapumia_api.js @@ -0,0 +1,141 @@ +const needle = require("needle") +const moment = require("moment") +const cheerio = require("cheerio"); +const decode = require('magnet-uri'); +const { escapeHTML } = require('../../lib/metadata'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); +const { isPtDubbed, sanitizePtName, sanitizePtOriginalName, sanitizePtLanguages } = require('../scraperHelper') + +const defaultTimeout = 10000; +const maxSearchPage = 50 + +const baseUrl = 'https://lapumia.org'; + +const Categories = { + MOVIE: null, + TV: 'series', + ANIME: 'animes', +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = torrentId.split('?p=')[1]; + return singleRequest(`${baseUrl}/?p=${slug}`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map(el => ({ torrentId: slug, ...el }))) + .catch((err) => { + console.warn(`Failed Lapumia ${slug} request: `, err); + return torrent(torrentId, config, retries - 1) + }); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, (config.extendToPage || 1)) + + return singleRequest(`${baseUrl}/page/${page}/?s=${keyword}`, config) + .then(body => parseTableBody(body)) + .then(torrents => torrents.length === 10 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + const requestUrl = category ? `${baseUrl}/${category}/page/${page}/` : `${baseUrl}/page/${page}/` + + return singleRequest(requestUrl, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('div.post').each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("div > a").text(), + torrentId: row.find("div > a").attr("href") + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const magnets = $('h2 > span') + .filter((i, elem) => isPtDubbed($(elem).text())).parent() + .map((i, elem) => $(elem).nextUntil('h2, hr')) + .map((i, elem) => $(elem).find('a[href^="magnet"]')) + .map((i, section) => $(section).attr("href")).get(); + const category = parseCategory($('div.category').html()); + const details = $('div.content') + const torrents = magnets.map(magnetLink => ({ + title: sanitizePtName(escapeHTML(decode(magnetLink).name.replace(/\+/g, ' '))), + originalName: sanitizePtOriginalName(details.find('b:contains(\'Titulo Original:\')')[0].nextSibling.nodeValue), + year: details.find('b:contains(\'Ano de Lançamento:\')')[0].nextSibling.nodeValue.trim(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + category: category, + uploadDate: new Date(moment($('div.infos').text().split('•')[0].trim(), 'LL', 'pt-br').format()), + imdbId: $('.imdbRatingPlugin').attr('data-title') || null, + languages: sanitizePtLanguages(details.find('b:contains(\'Idioma\')')[0].nextSibling.nodeValue) + })) + resolve(torrents.filter((x) => x)); + }); +} + +function parseCategory(categorys) { + const $ = cheerio.load(categorys) + if ($('a:contains(\'Animes\')').text()) { + return Categories.ANIME + } + if ($('a:contains(\'Series\')').text()) { + return Categories.TV + } + return Categories.MOVIE +} + +module.exports = { torrent, search, browse, Categories }; \ No newline at end of file diff --git a/scraper/scrapers/lapumia/lapumia_scraper.js b/scraper/scrapers/lapumia/lapumia_scraper.js new file mode 100644 index 0000000..f066643 --- /dev/null +++ b/scraper/scrapers/lapumia/lapumia_scraper.js @@ -0,0 +1,114 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const lapumia = require("./lapumia_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); +const { getImdbId } = require("../../lib/metadata"); + +const NAME = "Lapumia"; +const UNTIL_PAGE = 5; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => lapumia.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + lapumia.Categories.MOVIE + ]; + + return Promises.sequence(allowedCategories + .map((category) => () => scrapeLatestTorrentsForCategory(category))) + .then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return lapumia + .browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + return lapumia.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + if (!foundTorrent.imdbId && TYPE_MAPPING[foundTorrent.category] !== Type.ANIME) { + const info = { title: foundTorrent.originalName, year: foundTorrent.year }; + foundTorrent.imdbId = await getImdbId(info, TYPE_MAPPING[foundTorrent.category]).catch(() => undefined); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: TYPE_MAPPING[foundTorrent.category], + imdbId: foundTorrent.imdbId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[lapumia.Categories.MOVIE] = Type.MOVIE; + mapping[lapumia.Categories.TV] = Type.SERIES; + mapping[lapumia.Categories.ANIME] = Type.ANIME; + return mapping; +} + +function untilPage(category) { + if (lapumia.Categories.TV === category) { + return 5; + } + if (lapumia.Categories.ANIME === category) { + return 2; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/nyaapantsu/nyaa_pantsu_api.js b/scraper/scrapers/nyaapantsu/nyaa_pantsu_api.js new file mode 100644 index 0000000..c9ed20e --- /dev/null +++ b/scraper/scrapers/nyaapantsu/nyaa_pantsu_api.js @@ -0,0 +1,73 @@ +const { pantsu } = require('nyaapi') + +const Categories = { + ANIME: { + ALL: '3_', + ENGLISH: '3_5', + RAW: '3_6', + MUSIC_VIDEO: '3_12', + NON_ENGLISH: '3_13', + }, + LIVE_ACTION: { + ALL: '5_', + ENGLISH: '5_9', + RAW: '5_11', + PROMOTIONAL_VIDEO: '5_10', + NON_ENGLISH: '5_18', + } +} + +function torrent(torrentId) { + if (!torrentId) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + + return pantsu.infoRequest(torrentId) + .then(result => parseTorrent(result)) + .catch(error => handleError(error, torrentId)); +} + +function search(query) { + return pantsu.search(query) + .then(results => results.map(torrent => parseTorrent(torrent))) + .catch(error => handleError(error, query)); +} + +function browse(config = {}) { + const page = config.page || 1; + const category = config.category || Categories.ANIME.ENGLISH; + + return pantsu.list(category, page) + .then(results => results.map(torrent => parseTorrent(torrent))) + .catch(error => handleError(error, category)); +} + +function handleError(error, identifier) { + if (error.statusCode && error.statusCode >= 400) { + return Promise.reject(new Error(`${error.statusCode}: [${identifier}] failed retrieval on NyaaPantsu`)); + } + return Promise.reject(error); +} + +function parseTorrent(torrent) { + return { + title: torrent.name.replace(/\t|\s+/g, ' ').trim(), + torrentId: torrent.id, + infoHash: torrent.hash.trim().toLowerCase(), + magnetLink: torrent.magnet, + torrentLink: torrent.torrent, + seeders: torrent.seeders, + size: torrent.filesize, + uploadDate: new Date(torrent.date), + category: `${torrent.category}_${torrent.sub_category}`, + languages: torrent.languages ? torrent.languages.join(',') : undefined, + files: torrent.file_list && torrent.file_list.length ? torrent.file_list.map((file, fileId) => ({ + fileIndex: fileId, + name: file.path.replace(/([^\/]+$)/, '$1'), + path: file.path, + size: file.filesize + })) : undefined + } +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/nyaapantsu/nyaa_pantsu_scraper.js b/scraper/scrapers/nyaapantsu/nyaa_pantsu_scraper.js new file mode 100644 index 0000000..60ad04b --- /dev/null +++ b/scraper/scrapers/nyaapantsu/nyaa_pantsu_scraper.js @@ -0,0 +1,97 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const pantsu = require('./nyaa_pantsu_api'); +const { Type } = require('../../lib/types'); +const Promises = require('../../lib/promises'); +const repository = require('../../lib/repository'); +const { updateCurrentSeeders, updateTorrentSize } = require('../../lib/torrent'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'NyaaPantsu'; +const UNTIL_PAGE = 5 + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + // const ids = ['1033095']; + // return Promise.all(ids.map(id => limiter.schedule(() => pantsu.torrent(id) + // .then(torrent => processTorrentRecord(torrent))))) + // .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => pantsu.torrent(torrent.torrentId)) + .then(foundTorrent => { + if (Number.isInteger(foundTorrent.seeders)) { + return [foundTorrent]; + } + return [] + }); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + pantsu.Categories.ANIME.ENGLISH + ]; + + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return pantsu.browse(({ page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent) + .catch(error => { + console.warn(`Failed processing [${torrent.infoHash}] ${torrent.title} due: `, error); + return Promise.resolve(); + }))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (!record || await checkAndUpdateTorrent(record)) { + return record; + } + + if (!record.size) { + await updateTorrentSize(record) + } + if (record.seeders === null || record.seeders === undefined) { + await updateCurrentSeeders(record); + } + + const torrent = { + infoHash: record.infoHash, + torrentLink: record.torrentLink, + provider: NAME, + torrentId: record.torrentId, + title: record.title, + type: Type.ANIME, + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + languages: record.languages, + files: record.files || undefined + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/nyaasi/nyaa_si_api.js b/scraper/scrapers/nyaasi/nyaa_si_api.js new file mode 100644 index 0000000..36e11f1 --- /dev/null +++ b/scraper/scrapers/nyaasi/nyaa_si_api.js @@ -0,0 +1,80 @@ +const { si } = require('nyaapi') + +const Categories = { + ANIME: { + ALL: '1_0', + MUSIC_VIDEO: '1_1', + ENGLISH: '1_2', + NON_ENGLISH: '1_3', + RAW: '1_4' + }, + LIVE_ACTION: { + ALL: '4_0', + ENGLISH: '4_1', + PROMOTIONAL_VIDEO: '4_2', + NON_ENGLISH: '4_3', + RAW: '4_4' + } +} + +function torrent(torrentId) { + if (!torrentId) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + + return si.infoRequest(torrentId) + .then(result => parseTorrent(result)) + .then(result => ({ ...result, torrentId })) + .catch(error => { + if (error.statusCode && error.statusCode === 404) { + return Promise.reject(new Error(`404: [${torrentId}] not found on NyaaSi`)); + } + return Promise.reject(error); + }); +} + +function search(query) { + return si.search(query) + .then(results => results.map(torrent => parseTorrent(torrent))); +} + +function browse(config = {}) { + const page = config.page || 1; + const category = config.category || Categories.ANIME.ENGLISH; + const sort = config.sort || 'id' + + return si.list(category, page, { sort }) + .then(response => response.results || []) + .then(results => results.map(torrent => parseTorrent(torrent))); +} + +function parseTorrent(torrent) { + return { + title: torrent.name.replace(/\t|\s+/g, ' ').trim(), + torrentId: torrent.id, + infoHash: torrent.hash.trim().toLowerCase(), + magnetLink: torrent.magnet, + torrentLink: torrent.torrent, + seeders: parseInt(torrent.seeders), + size: parseSize(torrent.filesize), + uploadDate: new Date(torrent.date), + category: torrent.sub_category, + } +} + +function parseSize(sizeText) { + if (!sizeText) { + return undefined; + } + let scale = 1; + if (sizeText.includes('GiB')) { + scale = 1024 * 1024 * 1024 + } else if (sizeText.includes('MiB')) { + scale = 1024 * 1024; + } else if (sizeText.includes('KiB') || sizeText.includes('kB')) { + scale = 1024; + } + return Math.floor(parseFloat(sizeText.replace(/[',]/g, '')) * scale); +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/nyaasi/nyaa_si_scraper.js b/scraper/scrapers/nyaasi/nyaa_si_scraper.js new file mode 100644 index 0000000..ce47b9d --- /dev/null +++ b/scraper/scrapers/nyaasi/nyaa_si_scraper.js @@ -0,0 +1,83 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const nyaasi = require('./nyaa_si_api'); +const { Type } = require('../../lib/types'); +const Promises = require('../../lib/promises'); +const repository = require('../../lib/repository'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'NyaaSi'; +const UNTIL_PAGE = 10 + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + // const ids = ['1292786']; + // return Promise.all(ids.map(id => limiter.schedule(() => nyaasi.torrent(id) + // .then(torrent => processTorrentRecord(torrent))))) + // .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + // return limiter.schedule(() => nyaasi.torrent(torrent.torrentId)) + // .then(foundTorrent => Number.isInteger(foundTorrent.seeders) ? [foundTorrent] : []); + return Promise.resolve([]); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + nyaasi.Categories.ANIME.ENGLISH + ]; + + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return nyaasi.browse({ page, sort: 'id' }) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent) + .catch(error => { + console.warn(`Failed processing [${torrent.infoHash}] ${torrent.title} due: `, error); + return Promise.resolve(); + }))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (!record || await checkAndUpdateTorrent(record)) { + return record; + } + + const torrent = { + infoHash: record.infoHash, + torrentLink: record.torrentLink, + provider: NAME, + torrentId: record.torrentId, + title: record.title, + type: Type.ANIME, + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/ondebaixa/ondebaixa_api.js b/scraper/scrapers/ondebaixa/ondebaixa_api.js new file mode 100644 index 0000000..bd9af49 --- /dev/null +++ b/scraper/scrapers/ondebaixa/ondebaixa_api.js @@ -0,0 +1,150 @@ +const needle = require("needle") +const cheerio = require("cheerio"); +const decode = require('magnet-uri'); +const { escapeHTML } = require('../../lib/metadata'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); +const { isPtDubbed, sanitizePtName, sanitizePtOriginalName, sanitizePtLanguages } = require('../scraperHelper') + +const defaultTimeout = 10000; +const maxSearchPage = 50 + +const baseUrl = 'https://ondebaixa.com'; + +const Categories = { + MOVIE: 'filmes', + TV: 'series', + ANIME: 'anime', + DESENHOS: 'desenhos' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} query`)); + } + const slug = encodeURIComponent(torrentId.split("/")[3]); + return singleRequest(`${baseUrl}/${slug}/`, config) + .then((body) => parseTorrentPage(body)) + .then((torrent) => torrent.map(el => ({ torrentId: slug, ...el }))) + .catch((err) => { + console.warn(`Failed OndeBaixo ${slug} request: `, err); + return torrent(torrentId, config, retries - 1) + }); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const page = config.page || 1; + const extendToPage = Math.min(maxSearchPage, (config.extendToPage || 1)) + + return singleRequest(`${baseUrl}/${keyword}/${page}/`, config) + .then(body => parseTableBody(body)) + .then(torrents => torrents.length === 40 && page < extendToPage + ? search(keyword, { ...config, page: page + 1 }).catch(() => []) + .then(nextTorrents => torrents.concat(nextTorrents)) + : torrents) + .catch((err) => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + const requestUrl = category ? `${baseUrl}/${category}/${page}/` : `${baseUrl}/${page}/`; + + return singleRequest(requestUrl, config) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('div.capa_larga.align-middle').each((i, element) => { + const row = $(element); + torrents.push({ + name: row.find("a").text(), + torrentId: row.find("a").attr("href") + }); + }); + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const magnets = $(`a[href^="magnet"]`) + .filter((i, elem) => isPtDubbed($(elem).attr('title'))) + .map((i, elem) => $(elem).attr("href")).get(); + const details = $('div#informacoes') + const category = details.find('span:contains(\'Gêneros: \')').next().html() + const torrents = magnets.map(magnetLink => { + const decodedMagnet = decode(magnetLink); + const name = escapeHTML(decodedMagnet.name || '').replace(/\+/g, ' '); + const originalTitle = details.find('span:contains(\'Título Original: \')').next().text().trim(); + const year = details.find('span:contains(\'Ano de Lançamento: \')').next().text().trim(); + const fallbackTitle = `${originalTitle} ${year}`; + return { + title: name ? sanitizePtName(name) : fallbackTitle, + originalName: sanitizePtOriginalName(originalTitle), + year: year, + infoHash: decodedMagnet.infoHash, + magnetLink: magnetLink, + category: parseCategory(category), + uploadDate: new Date($('time').attr('datetime')), + languages: sanitizePtLanguages(details.find('span:contains(\'Idioma\')').next().text()) + } + }); + resolve(torrents.filter((x) => x)); + }); +} + +function parseCategory(body) { + const $ = cheerio.load(body) + if ($("a[href*='anime']").text()) { + return Categories.ANIME + } + if ($("a[href*='series']").text()) { + return Categories.TV + } + if ($("a[href*='filmes']").text()) { + return Categories.MOVIE + } + if ($("a[href*='desenhos']").text()) { + return Categories.TV + } +} + +module.exports = { torrent, search, browse, Categories }; \ No newline at end of file diff --git a/scraper/scrapers/ondebaixa/ondebaixa_scraper.js b/scraper/scrapers/ondebaixa/ondebaixa_scraper.js new file mode 100644 index 0000000..c5c4003 --- /dev/null +++ b/scraper/scrapers/ondebaixa/ondebaixa_scraper.js @@ -0,0 +1,119 @@ +const moment = require("moment"); +const Bottleneck = require("bottleneck"); +const ondebaixa = require("./ondebaixa_api"); +const { Type } = require("../../lib/types"); +const repository = require("../../lib/repository"); +const Promises = require("../../lib/promises"); +const { createTorrentEntry, checkAndUpdateTorrent } = require("../../lib/torrentEntries"); +const { updateCurrentSeeders, updateTorrentSize } = require("../../lib/torrent"); +const { getImdbId } = require("../../lib/metadata"); + +const NAME = "OndeBaixa"; +const UNTIL_PAGE = 5; +const TYPE_MAPPING = typeMapping(); + +const limiter = new Bottleneck({ maxConcurrent: 5 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => ondebaixa.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + ondebaixa.Categories.MOVIE, + ondebaixa.Categories.TV, + ondebaixa.Categories.DESENHOS + ]; + + return Promises.sequence( + allowedCategories.map( + (category) => () => scrapeLatestTorrentsForCategory(category) + ) + ).then((entries) => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return ondebaixa + .browse({ category, page }) + .catch((error) => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then((torrents) => Promise.all(torrents.map((torrent) => limiter.schedule(() => processEntry(torrent))))) + .then((resolved) => resolved.length > 0 && page < untilPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processEntry(entry) { + return ondebaixa.torrent(entry.torrentId) + .then(records => Promises.sequence(records.map(record => () => processTorrentRecord(record)))) + .catch(() => undefined); +} + +async function processTorrentRecord(foundTorrent) { + if (await checkAndUpdateTorrent({ provider: NAME, ...foundTorrent })) { + return foundTorrent; + } + + if (!foundTorrent.size) { + await updateTorrentSize(foundTorrent); + } + if (!Number.isInteger(foundTorrent.seeders)) { + await updateCurrentSeeders(foundTorrent); + } + if (!foundTorrent.imdbId && TYPE_MAPPING[foundTorrent.category] !== Type.ANIME) { + const info = { title: foundTorrent.originalName, year: foundTorrent.year }; + foundTorrent.imdbId = await getImdbId(info, TYPE_MAPPING[foundTorrent.category]).catch(() => undefined); + } + + const torrent = { + infoHash: foundTorrent.infoHash, + provider: NAME, + torrentId: foundTorrent.torrentId, + title: foundTorrent.title, + type: TYPE_MAPPING[foundTorrent.category], + imdbId: foundTorrent.imdbId, + uploadDate: foundTorrent.uploadDate, + seeders: foundTorrent.seeders, + size: foundTorrent.size, + files: foundTorrent.files, + languages: foundTorrent.languages + }; + return createTorrentEntry(torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[ondebaixa.Categories.MOVIE] = Type.MOVIE; + mapping[ondebaixa.Categories.TV] = Type.SERIES; + mapping[ondebaixa.Categories.DESENHOS] = Type.SERIES; + mapping[ondebaixa.Categories.ANIME] = Type.ANIME; + return mapping; +} + +function untilPage(category) { + if (ondebaixa.Categories.DESENHOS === category) { + return 5; + } + if (ondebaixa.Categories.TV === category) { + return 5; + } + return UNTIL_PAGE; +} + +module.exports = { scrape, updateSeeders, NAME }; diff --git a/scraper/scrapers/rarbg/rarbg_api.js b/scraper/scrapers/rarbg/rarbg_api.js new file mode 100644 index 0000000..c827417 --- /dev/null +++ b/scraper/scrapers/rarbg/rarbg_api.js @@ -0,0 +1,147 @@ +const needle = require('needle'); +const decode = require('magnet-uri'); +const Promises = require('../../lib/promises'); + +const baseUrl = 'https://torrentapi.org/pubapi_v2.php'; +const appId = 'torrentio-addon'; +const defaultTimeout = 30000; + +let token; + +const Options = { + category: { + MOVIES_XVID: [14], + MOVIES_XVID_720P: [48], + MOVIES_X264: [17], + MOVIES_X264_1080P: [44], + MOVIES_X264_720P: [45], + MOVIES_X264_3D: [47], + MOVIES_X264_4K: [50], + MOVIES_X265_1080P: [54], + MOVIES_X265_4K: [51], + MOVIES_X265_4K_HDR: [52], + MOVIES_FULL_BD: [42], + MOVIES_BD_REMUX: [46], + TV_EPISODES: [18], + TV_UHD_EPISODES: [49], + TV_HD_EPISODES: [41], + MUSIC_MP3: [23], + MUSIC_FLAC: [25], + GAMES_PC_ISO: [27], + GAMES_PC_RIP: [28], + GAMES_PS3: [40], + GAMES_XBOX_360: [32], + SOFTWARE_PC_ISO: [33], + EBOOKS: [35], + XXX: [4], + }, + sort: { + LAST: 'last', + SEEDERS: 'seeders', + LEECHERS: 'leechers' + }, + format: { + JSON: 'json', + JSON_EXTENDED: 'json_extended' + }, + ranked: { + TRUE: 1, + FALSE: 0 + } +} + +function search(imdbId, params = {}) { + if (!imdbId) { + return Promise.reject(new Error(`Must define imdbId`)); + } + const parameters = { + mode: 'search', + search_imdb: imdbId, + category: params.category && params.category.join(';') || null, + limit: params.limit || 100, + sort: params.sort || Options.sort.SEEDERS, + min_seeders: params.min_seeders || undefined, + min_leechers: params.min_leechers || undefined, + format: params.format || Options.format.JSON_EXTENDED, + ranked: params.ranked || Options.ranked.FALSE + } + + return singleRequest(parameters).then(results => parseResults(results)); +} + +function browse(params = {}) { + const parameters = { + mode: 'list', + category: params.category && params.category.join(';') || null, + limit: params.limit || 100, + sort: params.sort || Options.sort.LAST, + min_seeders: params.min_seeders || undefined, + min_leechers: params.min_leechers || undefined, + format: params.format || Options.format.JSON_EXTENDED, + ranked: params.ranked || Options.ranked.FALSE + } + + return singleRequest(parameters).then(results => parseResults(results)); +} + +async function singleRequest(params = {}, config = {}, retries = 10) { + const timeout = config.timeout || defaultTimeout; + const options = { open_timeout: timeout, follow: 2 }; + params.token = await getToken(); + params.app_id = appId; + + Object.keys(params) + .filter(key => params[key] === undefined || params[key] === null) + .forEach(key => delete params[key]); + + return needle('get', baseUrl, params, options) + .then(response => { + if (response.body && response.body.error_code === 4) { + // token expired + token = undefined; + return singleRequest(params, config); + } + if ((!response.body || !response.body.length || [5, 20].includes(response.body.error_code)) && retries > 0) { + // too many requests + return Promises.delay(3000).then(() => singleRequest(params, config, retries - 1)); + } + if (response.statusCode !== 200 || (response.body && response.body.error)) { + // something went wrong + return Promise.reject(response.body || `Failed RARGB request with status=${response.statusCode}`); + } + + return response.body; + }); +} + +function parseResults(results) { + if (!results || !Array.isArray(results.torrent_results)) { + return Promise.reject(`Incorrect results ${JSON.stringify(results)}`) + } + return results.torrent_results.map(result => parseResult(result)); +} + +function parseResult(result) { + return { + title: result.title, + infoHash: decode(result.download).infoHash, + magnetLink: result.download, + seeders: result.seeders, + leechers: result.leechers, + category: result.category, + size: result.size, + uploadDate: new Date(result.pubdate), + imdbId: result.episode_info && result.episode_info.imdb + } +} + +async function getToken() { + if (!token) { + const options = { open_timeout: defaultTimeout }; + token = await needle('get', baseUrl, { get_token: 'get_token', app_id: appId }, options) + .then(response => response.body.token); + } + return token; +} + +module.exports = { search, browse, Options }; diff --git a/scraper/scrapers/rarbg/rarbg_dump_scraper.js b/scraper/scrapers/rarbg/rarbg_dump_scraper.js new file mode 100644 index 0000000..59127b8 --- /dev/null +++ b/scraper/scrapers/rarbg/rarbg_dump_scraper.js @@ -0,0 +1,84 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const rarbg = require('./rarbg_api'); +const { Type } = require('../../lib/types'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'RARBG'; + +const limiter = new Bottleneck({ maxConcurrent: 1, minTime: 3000 }); +const entryLimiter = new Bottleneck({ maxConcurrent: 20 }); +const allowedCategories = [ + rarbg.Options.category.MOVIES_XVID, + rarbg.Options.category.MOVIES_XVID_720P, + rarbg.Options.category.MOVIES_X265_1080P, + rarbg.Options.category.MOVIES_X265_4K, + rarbg.Options.category.MOVIES_X265_4K_HDR, + rarbg.Options.category.MOVIES_X264, + rarbg.Options.category.MOVIES_X264_720P, + rarbg.Options.category.MOVIES_X264_1080P, + rarbg.Options.category.MOVIES_X264_3D, + rarbg.Options.category.MOVIES_X264_4K, + rarbg.Options.category.MOVIES_BD_REMUX, + rarbg.Options.category.TV_EPISODES, + rarbg.Options.category.TV_UHD_EPISODES, + rarbg.Options.category.TV_HD_EPISODES +].reduce((a, b) => a.concat(b), []) + +async function scrape() { + console.log(`[${moment()}] starting ${NAME} dump scrape...`); + // const movieImdbIds = require('./rargb_movie_imdb_ids_2021-02-27.json'); + const seriesImdbIds = require('./rargb_series_imdb_ids_2021-02-27.json'); + //const allImdbIds = [].concat(movieImdbIds).concat(seriesImdbIds); + + return Promise.all( + seriesImdbIds.map(imdbId => limiter.schedule(() => getTorrentsForImdbId(imdbId)) + .then(torrents => Promise.all(torrents.map(t => entryLimiter.schedule(() => processTorrentRecord(t))))))) + .then(() => console.log(`[${moment()}] finished ${NAME} dump scrape`)); +} + +async function getTorrentsForImdbId(imdbId) { + return rarbg.search(imdbId, { category: allowedCategories }) + .then(torrents => { + console.log(`Completed ${imdbId} request`); + return torrents; + }) + .catch(error => { + console.warn(`Failed ${NAME} request for ${imdbId}: `, error); + return []; + }); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + const torrent = { + provider: NAME, + infoHash: record.infoHash, + title: record.title, + type: getType(record.category), + seeders: record.seeders, + size: record.size, + uploadDate: record.uploadDate, + imdbId: record.imdbId + }; + + return createTorrentEntry(torrent); +} + +const seriesCategories = [ + 'TV Episodes', + 'Movies/TV-UHD-episodes', + 'TV HD Episodes', +]; + +function getType(category) { + if (seriesCategories.includes(category)) { + return Type.SERIES; + } + return Type.MOVIE; +} + +module.exports = { scrape, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/rarbg/rarbg_scraper.js b/scraper/scrapers/rarbg/rarbg_scraper.js new file mode 100644 index 0000000..c6d80ee --- /dev/null +++ b/scraper/scrapers/rarbg/rarbg_scraper.js @@ -0,0 +1,99 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const rarbg = require('./rarbg_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'RARBG'; + +const limiter = new Bottleneck({ maxConcurrent: 1, minTime: 2500 }); +const entryLimiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent, getImdbIdsMethod) { + // return getImdbIdsMethod() + // .then(imdbIds => Promise.all(imdbIds.map(imdbId => limiter.schedule(() => search(imdbId))))) + // .then(results => results.reduce((a, b) => a.concat(b), [])); + return Promise.resolve([]); +} + +async function scrapeLatestTorrents() { + const allowedCategories = [ + rarbg.Options.category.MOVIES_XVID, + rarbg.Options.category.MOVIES_XVID_720P, + rarbg.Options.category.MOVIES_X265_1080P, + rarbg.Options.category.MOVIES_X265_4K, + rarbg.Options.category.MOVIES_X265_4K_HDR, + rarbg.Options.category.MOVIES_X264, + rarbg.Options.category.MOVIES_X264_720P, + rarbg.Options.category.MOVIES_X264_1080P, + rarbg.Options.category.MOVIES_X264_3D, + rarbg.Options.category.MOVIES_X264_4K, + rarbg.Options.category.MOVIES_BD_REMUX, + rarbg.Options.category.TV_EPISODES, + rarbg.Options.category.TV_UHD_EPISODES, + rarbg.Options.category.TV_HD_EPISODES + ]; + + return Promises.sequence(allowedCategories + .map(category => () => limiter.schedule(() => scrapeLatestTorrentsForCategory(category)))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category) { + console.log(`Scrapping ${NAME} ${category} category`); + return rarbg.browse({ category: category }) + .then(torrents => Promise.all(torrents.map(t => entryLimiter.schedule(() => processTorrentRecord(t))))) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for ${category} due: `, error); + return Promise.resolve([]); + }); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + const torrent = { + provider: NAME, + infoHash: record.infoHash, + title: record.title, + type: getType(record.category), + seeders: record.seeders, + size: record.size, + uploadDate: record.uploadDate, + imdbId: record.imdbId + }; + + return createTorrentEntry(torrent); +} + +const seriesCategories = [ + 'TV Episodes', + 'Movies/TV-UHD-episodes', + 'TV HD Episodes', +]; + +function getType(category) { + if (seriesCategories.includes(category)) { + return Type.SERIES; + } + return Type.MOVIE; +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/rarbg/rargb_movie_imdb_ids_2020-04-22.json b/scraper/scrapers/rarbg/rargb_movie_imdb_ids_2020-04-22.json new file mode 100644 index 0000000..e9d7439 --- /dev/null +++ b/scraper/scrapers/rarbg/rargb_movie_imdb_ids_2020-04-22.json @@ -0,0 +1,42378 @@ +[ + "tt7582798", + "tt8701132", + "tt0062413", + "tt7728754", + "tt0063364", + "tt0060325", + "tt4456270", + "tt5578150", + "tt6686700", + "tt1590796", + "tt0067676", + "tt7094312", + "tt4224622", + "tt0095616", + "tt6492196", + "tt8134310", + "tt1743720", + "tt8277710", + "tt2506934", + "tt2364673", + "tt3333240", + "tt7575702", + "tt11199514", + "tt7975244", + "tt4059460", + "tt0039756", + "tt0036527", + "tt11719418", + "tt0270822", + "tt0036535", + "tt5916158", + "tt2401745", + "tt7519410", + "tt6348410", + "tt0013257", + "tt5468130", + "tt0068612", + "tt4066836", + "tt8820178", + "tt5115676", + "tt2605238", + "tt7919950", + "tt2194703", + "tt4613910", + "tt7764650", + "tt3099358", + "tt5254868", + "tt2816682", + "tt7758170", + "tt4065450", + "tt0358086", + "tt5845320", + "tt6111628", + "tt6275838", + "tt3044580", + "tt5852292", + "tt6082228", + "tt8027448", + "tt5634556", + "tt6467152", + "tt6908274", + "tt2213924", + "tt7349896", + "tt6318484", + "tt7255620", + "tt11290298", + "tt4622682", + "tt11558924", + "tt8269120", + "tt2430922", + "tt3638542", + "tt8924846", + "tt3468260", + "tt5141686", + "tt7526414", + "tt4794544", + "tt6420742", + "tt1686812", + "tt4026336", + "tt5630396", + "tt8055880", + "tt3751306", + "tt8726098", + "tt6368348", + "tt2369754", + "tt0221946", + "tt9659470", + "tt7879350", + "tt0135068", + "tt5974402", + "tt0056312", + "tt7010412", + "tt7373310", + "tt0084577", + "tt8535968", + "tt0076098", + "tt2076292", + "tt1408089", + "tt2072190", + "tt3475130", + "tt0126968", + "tt1556190", + "tt5171296", + "tt3104062", + "tt0081194", + "tt0260654", + "tt0185508", + "tt4510892", + "tt0415478", + "tt2097868", + "tt2299954", + "tt0051561", + "tt2073550", + "tt0023251", + "tt2076800", + "tt7239688", + "tt7074788", + "tt0068469", + "tt4701906", + "tt5815156", + "tt6905366", + "tt8151416", + "tt6304040", + "tt7817670", + "tt11354400", + "tt11434306", + "tt0084587", + "tt1719497", + "tt9046574", + "tt9577222", + "tt08948208", + "tt0306903", + "tt10627720", + "tt0119303", + "tt5167200", + "tt3863870", + "tt0972785", + "tt10469384", + "tt0068954", + "tt0389912", + "tt0113063", + "tt0433363", + "tt9573980", + "tt0076937", + "tt0108228", + "tt4453792", + "tt0157079", + "tt0334965", + "tt7387632", + "tt0497353", + "tt10481868", + "tt5687270", + "tt6739894", + "tt10380706", + "tt10795414", + "tt3513548", + "tt0452668", + "tt0092173", + "tt8211214", + "tt0384638", + "tt1799349", + "tt1713800", + "tt1799350", + "tt6620260", + "tt3180626", + "tt2771932", + "tt3659718", + "tt1799352", + "tt2496534", + "tt3549984", + "tt3760700", + "tt5872368", + "tt4938416", + "tt3383556", + "tt9675210", + "tt4986906", + "tt6283598", + "tt3760706", + "tt0296034", + "tt5424368", + "tt4238844", + "tt7559576", + "tt0106963", + "tt0088772", + "tt5434568", + "tt6075688", + "tt0068364", + "tt3861212", + "tt2522274", + "tt6405058", + "tt8666500", + "tt4539508", + "tt0064728", + "tt8439180", + "tt1249170", + "tt5285684", + "tt3794354", + "tt7091328", + "tt6833774", + "tt5272052", + "tt0126568", + "tt0192213", + "tt0113732", + "tt0112820", + "tt6949498", + "tt0055977", + "tt5226192", + "tt7615052", + "tt4844140", + "tt0182719", + "tt9179168", + "tt0251382", + "tt0118119", + "tt8008382", + "tt0277944", + "tt6616074", + "tt3355258", + "tt0083361", + "tt3996164", + "tt6683912", + "tt4208594", + "tt5797184", + "tt3473646", + "tt5047108", + "tt8372298", + "tt5128626", + "tt9347750", + "tt7665180", + "tt8629748", + "tt4712202", + "tt10880084", + "tt1815989", + "tt0105128", + "tt2573372", + "tt5160614", + "tt4169146", + "tt3984356", + "tt10985510", + "tt7596680", + "tt7957314", + "tt0112828", + "tt6753132", + "tt0079031", + "tt0097619", + "tt0452592", + "tt9035872", + "tt8816194", + "tt1179773", + "tt9026524", + "tt0150500", + "tt0094608", + "tt6081882", + "tt5814534", + "tt0106676", + "tt9057942", + "tt5033998", + "tt5727208", + "tt6394270", + "tt0198781", + "tt9353436", + "tt0455584", + "tt0118631", + "tt0035460", + "tt7713068", + "tt0381838", + "tt0034074", + "tt0120623", + "tt0046124", + "tt10121372", + "tt7287136", + "tt0111003", + "tt1453405", + "tt0042206", + "tt0104719", + "tt0071330", + "tt3281548", + "tt0102296", + "tt0041673", + "tt0067345", + "tt3530146", + "tt0125784", + "tt4715470", + "tt2231605", + "tt7473034", + "tt1046163", + "tt0387575", + "tt0100332", + "tt3661798", + "tt0769507", + "tt0068367", + "tt0104706", + "tt0145046", + "tt0162983", + "tt0100503", + "tt0816671", + "tt1456520", + "tt0217080", + "tt0060580", + "tt0070003", + "tt2672746", + "tt10645860", + "tt7379994", + "tt0065456", + "tt0086907", + "tt0227051", + "tt0120770", + "tt5596352", + "tt7952920", + "tt0098260", + "tt10606866", + "tt0484562", + "tt5815420", + "tt6806448", + "tt3700364", + "tt0185125", + "tt7220118", + "tt0065009", + "tt0101725", + "tt6403382", + "tt2017486", + "tt0116421", + "tt4730638", + "tt9898086", + "tt7446692", + "tt1772407", + "tt4030354", + "tt3006826", + "tt1083470", + "tt7380006", + "tt6270640", + "tt0281820", + "tt8426270", + "tt1711016", + "tt7776830", + "tt10509642", + "tt0495751", + "tt6974254", + "tt4546580", + "tt8241704", + "tt2926176", + "tt0357470", + "tt4985772", + "tt6165902", + "tt2297894", + "tt2913562", + "tt0070016", + "tt6114246", + "tt5791222", + "tt4257962", + "tt2751468", + "tt3561800", + "tt5467324", + "tt7331748", + "tt3580692", + "tt2442488", + "tt0978813", + "tt7725070", + "tt5841094", + "tt11049100", + "tt2246779", + "tt8786466", + "tt6833550", + "tt2641678", + "tt7410684", + "tt1703909", + "tt8110630", + "tt2663380", + "tt6543358", + "tt2523876", + "tt3741146", + "tt6690236", + "tt5180332", + "tt7752054", + "tt5661030", + "tt9349942", + "tt5105734", + "tt5602318", + "tt5838396", + "tt10287376", + "tt11261584", + "tt6373518", + "tt7750864", + "tt1302006", + "tt0314197", + "tt4604154", + "tt0089789", + "tt0348124", + "tt0118601", + "tt7666792", + "tt0432432", + "tt11738792", + "tt6802922", + "tt6010976", + "tt5827916", + "tt8493962", + "tt8764144", + "tt7049448", + "tt10619724", + "tt4328094", + "tt4933914", + "tt1404653", + "tt9155326", + "tt4073582", + "tt11421396", + "tt0064827", + "tt4984930", + "tt7689484", + "tt1135774", + "tt4766892", + "tt11379280", + "tt1773741", + "tt0339464", + "tt6522846", + "tt3320110", + "tt2512030", + "tt7183876", + "tt3154422", + "tt1969091", + "tt4966130", + "tt9077188", + "tt3742040", + "tt5079996", + "tt5883926", + "tt7208822", + "tt8343642", + "tt1657302", + "tt7607492", + "tt2153222", + "tt2519318", + "tt2883224", + "tt7657120", + "tt6959668", + "tt9154584", + "tt3042964", + "tt6254796", + "tt5711092", + "tt6283758", + "tt5127090", + "tt9060534", + "tt6517392", + "tt7607370", + "tt5886510", + "tt5846888", + "tt8322802", + "tt9476490", + "tt7607416", + "tt0100409", + "tt5239436", + "tt9269852", + "tt9017614", + "tt6603568", + "tt6819018", + "tt3752700", + "tt4458408", + "tt9247710", + "tt0048499", + "tt0091193", + "tt6173346", + "tt7018722", + "tt0063230", + "tt8152324", + "tt0426396", + "tt0085320", + "tt0109593", + "tt9736976", + "tt9515298", + "tt0059726", + "tt0052606", + "tt0066955", + "tt0318281", + "tt3907584", + "tt10984420", + "tt10043726", + "tt2352302", + "tt6185692", + "tt6316506", + "tt8703882", + "tt6051260", + "tt9099102", + "tt11255486", + "tt5757874", + "tt2315628", + "tt7632000", + "tt4174926", + "tt7453044", + "tt4061424", + "tt3574966", + "tt0124295", + "tt7456534", + "tt0272036", + "tt0050168", + "tt6957366", + "tt5277030", + "tt7522002", + "tt4842648", + "tt5935518", + "tt4317858", + "tt8722346", + "tt4657460", + "tt0045607", + "tt0101414", + "tt0005180794", + "tt5148460", + "tt4690878", + "tt4641264", + "tt6554744", + "tt1853563", + "tt5194226", + "tt5615904", + "tt5356490", + "tt0185297", + "tt5362688", + "tt0437459", + "tt4684488", + "tt9015306", + "tt5514846", + "tt0079187", + "tt5641606", + "tt0209264", + "tt1729609", + "tt5131960", + "tt0064355", + "tt6492056", + "tt5343512", + "tt4480624", + "tt3633646", + "tt6319942", + "tt3864466", + "tt4419506", + "tt1581845", + "tt0860837", + "tt4036488", + "tt1522295", + "tt0374853", + "tt0450087", + "tt2693060", + "tt0365866", + "tt2095765", + "tt8633088", + "tt6523668", + "tt6910012", + "tt3254710", + "tt6817296", + "tt0985101", + "tt8615816", + "tt6053946", + "tt5138728", + "tt6023110", + "tt4487264", + "tt6054328", + "tt3262990", + "tt6959666", + "tt2199733", + "tt7107342", + "tt5339586", + "tt7046112", + "tt6082614", + "tt1595583", + "tt2123145", + "tt2514162", + "tt7663776", + "tt7606464", + "tt9060526", + "tt10656112", + "tt7587068", + "tt5979874", + "tt7788188", + "tt4920096", + "tt6017922", + "tt5137022", + "tt0107665", + "tt9097148", + "tt9028632", + "tt9150970", + "tt0056234", + "tt3606314", + "tt2546038", + "tt4736576", + "tt4326556", + "tt8103746", + "tt9613316", + "tt4125856", + "tt2771200", + "tt6333088", + "tt1703231", + "tt3808172", + "tt7738134", + "tt4156518", + "tt0106417", + "tt5842792", + "tt6483242", + "tt2147048", + "tt4048186", + "tt1222816", + "tt0107306", + "tt7131060", + "tt4374814", + "tt6318556", + "tt1562910", + "tt3356648", + "tt3695154", + "tt7725144", + "tt1379233", + "tt2091880", + "tt2087696", + "tt5241380", + "tt4339852", + "tt0191801", + "tt1043434", + "tt6039474", + "tt3487446", + "tt2463464", + "tt1233503", + "tt9770590", + "tt7183082", + "tt0287665", + "tt2708922", + "tt2458608", + "tt4566712", + "tt2829108", + "tt2582960", + "tt2753654", + "tt5773474", + "tt7160286", + "tt4226162", + "tt7709710", + "tt6539818", + "tt7924764", + "tt7607558", + "tt4058572", + "tt5378728", + "tt4696502", + "tt6475778", + "tt8028842", + "tt8563704", + "tt9174348", + "tt7607378", + "tt7150482", + "tt7607450", + "tt9861504", + "tt0114952", + "tt7014356", + "tt8101766", + "tt7937168", + "tt0102867", + "tt0070339", + "tt7149066", + "tt0056241", + "tt0087366", + "tt7320482", + "tt3418844", + "tt9820352", + "tt10085338", + "tt5919756", + "tt5599332", + "tt6902676", + "tt2402107", + "tt5506864", + "tt8856470", + "tt4344624", + "tt7431740", + "tt5706294", + "tt8611746", + "tt2532454", + "tt3243664", + "tt9569212", + "tt5461596", + "tt5907916", + "tt7600382", + "tt0086257", + "tt5883022", + "tt5706292", + "tt5520970", + "tt4778500", + "tt0087425", + "tt0139465", + "tt0390272", + "tt5701132", + "tt8324578", + "tt6518634", + "tt0100134", + "tt0417225", + "tt0117271", + "tt3281640", + "tt10369632", + "tt3974972", + "tt3323588", + "tt7016254", + "tt2096615", + "tt5643272", + "tt0307919", + "tt4368086", + "tt4909348", + "tt9676614", + "tt9796226", + "tt5366234", + "tt4994254", + "tt1433775", + "tt3439430", + "tt6459288", + "tt1707375", + "tt1673470", + "tt6402212", + "tt0058698", + "tt1072756", + "tt3293462", + "tt5032026", + "tt5708082", + "tt6427156", + "tt0218388", + "tt1152815", + "tt7076838", + "tt0354234", + "tt6601146", + "tt3826628", + "tt6502534", + "tt2115439", + "tt7297954", + "tt6430360", + "tt3901962", + "tt2448374", + "tt5070076", + "tt3118120", + "tt6385840", + "tt1299362", + "tt7797250", + "tt2713440", + "tt9089908", + "tt5152484", + "tt7607502", + "tt9642038", + "tt2631472", + "tt2036452", + "tt2677368", + "tt0910970", + "tt3589494", + "tt5652620", + "tt6085412", + "tt6759686", + "tt9630196", + "tt0057399", + "tt0065026", + "tt1260351", + "tt5576336", + "tt0124595", + "tt1049413", + "tt0120512", + "tt0062659", + "tt1410261", + "tt0082250", + "tt0069946", + "tt1757796", + "tt3008816", + "tt0118698", + "tt0069957", + "tt5581502", + "tt4915318", + "tt0069312", + "tt0079477", + "tt0060261", + "tt7003976", + "tt0095491", + "tt9356952", + "tt7798644", + "tt5051278", + "tt0030909", + "tt9434836", + "tt2258724", + "tt4194054", + "tt0074472", + "tt9506000", + "tt11474156", + "tt6888132", + "tt5990464", + "tt7491732", + "tt0375669", + "tt0093507", + "tt8890690", + "tt11766318", + "tt3891834", + "tt8820136", + "tt0116676", + "tt1449383", + "tt0990376", + "tt1458939", + "tt6798766", + "tt6318432", + "tt6328116", + "tt2769276", + "tt3588082", + "tt0790810", + "tt8398704", + "tt1390471", + "tt6033150", + "tt2343761", + "tt2935800", + "tt0105108", + "tt4025594", + "tt2992904", + "tt1978491", + "tt6645896", + "tt8775056", + "tt6902018", + "tt8469818", + "tt3635998", + "tt3918650", + "tt3886372", + "tt2353887", + "tt0087055", + "tt6596630", + "tt9425078", + "tt6756464", + "tt2776304", + "tt4286086", + "tt4240704", + "tt3477070", + "tt6984530", + "tt4935898", + "tt2952692", + "tt9174108", + "tt6772524", + "tt8717974", + "tt0927619", + "tt3234126", + "tt2401199", + "tt5566936", + "tt10152200", + "tt0200529", + "tt5579910", + "tt1119621", + "tt0073594", + "tt9251748", + "tt0092884", + "tt11305096", + "tt9635616", + "tt0405061", + "tt0455135", + "tt5323760", + "tt7737394", + "tt0325655", + "tt5073642", + "tt10525174", + "tt9099136", + "tt5976054", + "tt9595506", + "tt0218127", + "tt7410922", + "tt6122540", + "tt0214730", + "tt2759372", + "tt11283990", + "tt0338135", + "tt0064787", + "tt3509078", + "tt0092798", + "tt4838248", + "tt8702008", + "tt0090985", + "tt7288442", + "tt8946378", + "tt0247638", + "tt5745450", + "tt0837562", + "tt0368933", + "tt0091053", + "tt0096438", + "tt0104940", + "tt8287232", + "tt9078374", + "tt7288408", + "tt3295240", + "tt0896816", + "tt0118780", + "tt0211577", + "tt0104943", + "tt0114977", + "tt1227774", + "tt3016748", + "tt11736170", + "tt9587244", + "tt1369571", + "tt0345119", + "tt0085595", + "tt7840316", + "tt0874333", + "tt5794306", + "tt0114065", + "tt1192620", + "tt8443432", + "tt1086777", + "tt0094869", + "tt0081004", + "tt1332033", + "tt1757841", + "tt9119200", + "tt11409576", + "tt6751668", + "tt2248739", + "tt7355708", + "tt5097410", + "tt2370140", + "tt5732482", + "tt6856540", + "tt3717314", + "tt6423408", + "tt4283892", + "tt5990270", + "tt6041030", + "tt2385115", + "tt5883008", + "tt5275844", + "tt6257714", + "tt1334558", + "tt5425144", + "tt5598216", + "tt6710214", + "tt7806998", + "tt6000140", + "tt5037288", + "tt6170130", + "tt4185572", + "tt4930760", + "tt7807000", + "tt6562866", + "tt6090102", + "tt7574286", + "tt6550456", + "tt1791687", + "tt4465220", + "tt6608034", + "tt8257900", + "tt5946232", + "tt6302122", + "tt5374002", + "tt9326056", + "tt8106284", + "tt5571712", + "tt6023444", + "tt6438918", + "tt5222724", + "tt6715992", + "tt5861260", + "tt0120366", + "tt0080427", + "tt0144250", + "tt7344360", + "tt7588752", + "tt5457520", + "tt6854248", + "tt11324534", + "tt0110115", + "tt5709506", + "tt3551400", + "tt1230126", + "tt2150139", + "tt0110392", + "tt0301555", + "tt5065500", + "tt5821256", + "tt3949586", + "tt4687906", + "tt9741588", + "tt8096832", + "tt6820324", + "tt6317016", + "tt0367088", + "tt7103742", + "tt7179102", + "tt2276071", + "tt3091320", + "tt2667714", + "tt2484460", + "tt6225534", + "tt2205762", + "tt10228168", + "tt6499666", + "tt0090098", + "tt8359816", + "tt5233090", + "tt3600760", + "tt2920294", + "tt5817548", + "tt3612008", + "tt0436058", + "tt0052924", + "tt1843207", + "tt0298066", + "tt1337117", + "tt6702308", + "tt10645682", + "tt8949410", + "tt3677840", + "tt3827462", + "tt1820413", + "tt2122355", + "tt2308682", + "tt3121050", + "tt0352190", + "tt1448497", + "tt3586118", + "tt5351044", + "tt5974406", + "tt4690052", + "tt9099938", + "tt1529666", + "tt2392842", + "tt3589968", + "tt6312802", + "tt0136242", + "tt7962890", + "tt0114991", + "tt6148782", + "tt1992268", + "tt7230148", + "tt7046524", + "tt4627224", + "tt1935914", + "tt0102996", + "tt5058148", + "tt4077742", + "tt3280176", + "tt3118696", + "tt1668212", + "tt10964516", + "tt2516326", + "tt5048716", + "tt4454406", + "tt0350079", + "tt5786588", + "tt9436204", + "tt10887846", + "tt3646058", + "tt6794460", + "tt0250310", + "tt0289782", + "tt8178958", + "tt10964532", + "tt2279353", + "tt9071322", + "tt1833657", + "tt0059079", + "tt7995680", + "tt0045077", + "tt6890618", + "tt6173484", + "tt7456312", + "tt10844816", + "tt9133378", + "tt7979142", + "tt7334342", + "tt6190204", + "tt2900822", + "tt6075764", + "tt1636844", + "tt0067634", + "tt5045746", + "tt0073279", + "tt9671918", + "tt5512160", + "tt7335104", + "tt6103812", + "tt8676426", + "tt0012952", + "tt5912470", + "tt8883472", + "tt5778092", + "tt5086446", + "tt5999588", + "tt0059796", + "tt0111070", + "tt0078382", + "tt6181964", + "tt0131449", + "tt0065380", + "tt8907428", + "tt0090103", + "tt4058836", + "tt0042383", + "tt6019068", + "tt0099381", + "tt1226251", + "tt5521724", + "tt2689966", + "tt6258232", + "tt6522678", + "tt3360148", + "tt0107944", + "tt0025731", + "tt5356318", + "tt0120241", + "tt2203881", + "tt3973656", + "tt0366544", + "tt2924590", + "tt8435932", + "tt0039949", + "tt7534054", + "tt1500694", + "tt0105565", + "tt5538118", + "tt0431641", + "tt0058383", + "tt0171357", + "tt81851823", + "tt9514970", + "tt0070136", + "tt2373878", + "tt0057334", + "tt9198974", + "tt0243595", + "tt6733372", + "tt0384819", + "tt7931422", + "tt3415734", + "tt7493804", + "tt6121428", + "tt0091637", + "tt5723056", + "tt2265373", + "tt0065955", + "tt7112158", + "tt7154176", + "tt7743588", + "tt5769440", + "tt7240562", + "tt7399726", + "tt7757028", + "tt2634200", + "tt6568190", + "tt7994070", + "tt6816210", + "tt4734132", + "tt5847760", + "tt3496094", + "tt2379418", + "tt6090190", + "tt1667875", + "tt3687938", + "tt4131594", + "tt6275334", + "tt7228086", + "tt5425488", + "tt0049278", + "tt7128868", + "tt7493472", + "tt6859024", + "tt7162400", + "tt6314906", + "tt3265574", + "tt11780762", + "tt0181739", + "tt1859558", + "tt0103793", + "tt7213936", + "tt8516596", + "tt4630466", + "tt0116839", + "tt0189192", + "tt0067980", + "tt2226437", + "tt6977470", + "tt1787741", + "tt0169299", + "tt11177308", + "tt0090009", + "tt0094882", + "tt2523852", + "tt1621014", + "tt3309038", + "tt0108654", + "tt4199110", + "tt0109675", + "tt0118600", + "tt8102036", + "tt6705640", + "tt0109891", + "tt6398570", + "tt0443489", + "tt0479162", + "tt6466464", + "tt6854672", + "tt1842520", + "tt9850064", + "tt8707922", + "tt4838690", + "tt7852686", + "tt5831668", + "tt3967878", + "tt3329554", + "tt0065636", + "tt6679412", + "tt10176734", + "tt6627682", + "tt10623478", + "tt0202623", + "tt3404246", + "tt0057532", + "tt2093269", + "tt5791732", + "tt0804513", + "tt2378390", + "tt1295021", + "tt0106215", + "tt5547496", + "tt7288084", + "tt3473390", + "tt2625270", + "tt4216890", + "tt1151813", + "tt2358456", + "tt1314270", + "tt1430082", + "tt5686622", + "tt2343600", + "tt7841664", + "tt3074610", + "tt6332764", + "tt6881530", + "tt2522908", + "tt5111550", + "tt2233170", + "tt2380207", + "tt6816388", + "tt8176578", + "tt7752142", + "tt4454648", + "tt5566684", + "tt6120500", + "tt0302674", + "tt0105306", + "tt2398514", + "tt4486122", + "tt2605244", + "tt2318763", + "tt2901584", + "tt4188822", + "tt6576144", + "tt5796986", + "tt0835419", + "tt1619622", + "tt7265806", + "tt7664414", + "tt8834152", + "tt4226446", + "tt2153212", + "tt1185344", + "tt4484636", + "tt6465314", + "tt5706242", + "tt6370616", + "tt5671902", + "tt6678722", + "tt7278738", + "tt6318202", + "tt4648586", + "tt7193448", + "tt2329206", + "tt7850992", + "tt6170268", + "tt6969140", + "tt5567492", + "tt7861698", + "tt9184886", + "tt2796278", + "tt0865482", + "tt0079357", + "tt6191090", + "tt4061848", + "tt7902184", + "tt9170648", + "tt9817258", + "tt5716624", + "tt7434070", + "tt5602922", + "tt7646384", + "tt3667148", + "tt5784340", + "tt8717296", + "tt2772584", + "tt9428026", + "tt0027869", + "tt0033539", + "tt7476418", + "tt0020538", + "tt0013367", + "tt0037154", + "tt0024960", + "tt11410450", + "tt8211258", + "tt0034546", + "tt0034613", + "tt4076756", + "tt4584718", + "tt7979668", + "tt7141520", + "tt2967856", + "tt0252299", + "tt7673930", + "tt2141623", + "tt2042692", + "tt1699746", + "tt5971394", + "tt0251448", + "tt0109370", + "tt0120797", + "tt0090770", + "tt4695548", + "tt6095486", + "tt0377749", + "tt2205561", + "tt7461372", + "tt2768084", + "tt6924650", + "tt1479388", + "tt10696018", + "tt10011232", + "tt2271315", + "tt5663298", + "tt5273720", + "tt6097422", + "tt8028600", + "tt11642302", + "tt0095613", + "tt0092264", + "tt0421135", + "tt1557181", + "tt0106877", + "tt4977524", + "tt8226892", + "tt0097891", + "tt3079222", + "tt1929433", + "tt5946668", + "tt2337686", + "tt9352128", + "tt1823058", + "tt1059317", + "tt5487734", + "tt0266824", + "tt1665743", + "tt3621336", + "tt5884004", + "tt1455061", + "tt3701506", + "tt4225478", + "tt0119166", + "tt3392142", + "tt5661770", + "tt4154126", + "tt7635226", + "tt7121252", + "tt6522634", + "tt2325833", + "tt5849950", + "tt11379322", + "tt0246772", + "tt8513302", + "tt0119733", + "tt1127883", + "tt1621642", + "tt4207094", + "tt4459912", + "tt4222718", + "tt4917862", + "tt2197926", + "tt7609436", + "tt2180317", + "tt6264928", + "tt2255787", + "tt6890582", + "tt5198850", + "tt8383596", + "tt1609160", + "tt8251336", + "tt4867110", + "tt1773687", + "tt2566580", + "tt6830780", + "tt0415838", + "tt3711510", + "tt5140522", + "tt1522748", + "tt10887838", + "tt2374564", + "tt9426186", + "tt4998984", + "tt10161238", + "tt6451304", + "tt7583568", + "tt5475678", + "tt1801123", + "tt4520988", + "tt1623013", + "tt7479540", + "tt6483458", + "tt3691930", + "tt6025626", + "tt8123886", + "tt2525802", + "tt1446678", + "tt4266638", + "tt7550576", + "tt7210252", + "tt0109504", + "tt6828390", + "tt6680962", + "tt5058038", + "tt9445054", + "tt0091765", + "tt8804284", + "tt6017312", + "tt5079382", + "tt5608000", + "tt6338444", + "tt5159204", + "tt6053948", + "tt0159730", + "tt8669354", + "tt1799572", + "tt0088195", + "tt0828151", + "tt0367960", + "tt2009538", + "tt1570983", + "tt5855164", + "tt2962144", + "tt5969714", + "tt5894410", + "tt1487864", + "tt0293357", + "tt2170667", + "tt3822818", + "tt7425520", + "tt3500528", + "tt1418895", + "tt4621470", + "tt3911294", + "tt1584131", + "tt0102175", + "tt5662906", + "tt0841925", + "tt3012832", + "tt6347150", + "tt4771956", + "tt2076216", + "tt7919426", + "tt0149016", + "tt8007436", + "tt4078252", + "tt9069126", + "tt4714896", + "tt0076591", + "tt10799008", + "tt7022402", + "tt2820578", + "tt7775886", + "tt9010900", + "tt2960270", + "tt7620650", + "tt7026370", + "tt6628322", + "tt4883990", + "tt11456366", + "tt8160262", + "tt10975992", + "tt0078227", + "tt8178116", + "tt8976832", + "tt6162762", + "tt8075256", + "tt7977310", + "tt6453158", + "tt9643214", + "tt0014359", + "tt4265500", + "tt5282590", + "tt8755500", + "tt0332626", + "tt9766166", + "tt0099328", + "tt1437364", + "tt0080492", + "tt0072812", + "tt0328099", + "tt8866450", + "tt5488870", + "tt5144072", + "tt0465440", + "tt7095444", + "tt0780536", + "tt8549590", + "tt9703882", + "tt0049088", + "tt9019312", + "tt3472586", + "tt0063552", + "tt8676984", + "tt0045544", + "tt7575778", + "tt0217038", + "tt5665040", + "tt8319778", + "tt9806322", + "tt0029785", + "tt6515458", + "tt0041090", + "tt9575160", + "tt0181966", + "tt9129808", + "tt0047238", + "tt1849751", + "tt3455826", + "tt0024262", + "tt6149282", + "tt0221297", + "tt0083965", + "tt0047205", + "tt0165643", + "tt2137442", + "tt11662610", + "tt1815943", + "tt3363888", + "tt5643398", + "tt6515470", + "tt0119426", + "tt7933282", + "tt3876674", + "tt0479354", + "tt0486639", + "tt1517239", + "tt5479616", + "tt4924942", + "tt6157994", + "tt7109088", + "tt6910020", + "tt3691446", + "tt6914542", + "tt0399072", + "tt4722674", + "tt9095324", + "tt3374034", + "tt7027092", + "tt3076106", + "tt6168298", + "tt5831146", + "tt3349772", + "tt1568926", + "tt6333056", + "tt3628356", + "tt5895892", + "tt7095852", + "tt11404430", + "tt10149756", + "tt7490256", + "tt6985094", + "tt9617710", + "tt6690322", + "tt2836450", + "tt0342778", + "tt4704314", + "tt5562172", + "tt4225092", + "tt7712978", + "tt5930038", + "tt8327492", + "tt5957584", + "tt8647310", + "tt11571902", + "tt5984662", + "tt8745960", + "tt7950334", + "tt9894470", + "tt7187768", + "tt8964214", + "tt10009030", + "tt6722726", + "tt5829032", + "tt7369550", + "tt0450455", + "tt0067750", + "tt8358220", + "tt7653254", + "tt6189372", + "tt7262846", + "tt9614440", + "tt5047458", + "tt6515910", + "tt0074715", + "tt8584722", + "tt0115006", + "tt6413868", + "tt0039020", + "tt0050753", + "tt0295427", + "tt0099772", + "tt0032285", + "tt0101644", + "tt1564559", + "tt0096378", + "tt1167611", + "tt0043263", + "tt0065401", + "tt0049684", + "tt0124198", + "tt0049717", + "tt0045066", + "tt0062760", + "tt9354842", + "tt0039657", + "tt0046878", + "tt0082477", + "tt9062342", + "tt5974044", + "tt0114736", + "tt5176580", + "tt4125222", + "tt5868910", + "tt5210324", + "tt3399916", + "tt0319769", + "tt2077828", + "tt1117394", + "tt6659416", + "tt0319920", + "tt7525778", + "tt2519468", + "tt5236900", + "tt5129818", + "tt0304229", + "tt9036126", + "tt0098313", + "tt3120280", + "tt0073326", + "tt0277744", + "tt3740066", + "tt0338216", + "tt0106552", + "tt0104905", + "tt4575930", + "tt1757800", + "tt1909826", + "tt8033592", + "tt2407418", + "tt7085842", + "tt8465676", + "tt0118750", + "tt3130406", + "tt2933794", + "tt6646998", + "tt7308086", + "tt6699860", + "tt10835790", + "tt3194590", + "tt6373616", + "tt1202579", + "tt3494584", + "tt1015999", + "tt4647788", + "tt8558596", + "tt1705977", + "tt0018526", + "tt6193408", + "tt1847731", + "tt6035294", + "tt6222286", + "tt3240752", + "tt0067961", + "tt3741150", + "tt6651118", + "tt0114787", + "tt2208144", + "tt0079095", + "tt0014142", + "tt0024844", + "tt0106305", + "tt0019071", + "tt1956669", + "tt0367089", + "tt0017075", + "tt0042643", + "tt0342492", + "tt1255953", + "tt0087884", + "tt0086589", + "tt4527430", + "tt0018839", + "tt0107175", + "tt0047101", + "tt0041796", + "tt0015175", + "tt0103186", + "tt0077427", + "tt0418455", + "tt7073522", + "tt2008006", + "tt0038522", + "tt6927316", + "tt0015174", + "tt0097216", + "tt8731042", + "tt0187350", + "tt4516162", + "tt7224328", + "tt1064215", + "tt0292886", + "tt7776030", + "tt1859446", + "tt4777008", + "tt4389006", + "tt8956390", + "tt5862338", + "tt2903370", + "tt1548542", + "tt9584906", + "tt3985616", + "tt8185182", + "tt2132504", + "tt8811474", + "tt7733426", + "tt7943248", + "tt0088814", + "tt11668444", + "tt0304669", + "tt0465234", + "tt0452681", + "tt0100967", + "tt0210945", + "tt5452780", + "tt0089167", + "tt0102167", + "tt0180020", + "tt0072991", + "tt0107664", + "tt0117550", + "tt0037168", + "tt0185429", + "tt6520634", + "tt0037303", + "tt6525872", + "tt0099901", + "tt7297472", + "tt6207236", + "tt6449908", + "tt7184124", + "tt0107057", + "tt8978846", + "tt0043832", + "tt1209367", + "tt3847642", + "tt0096236", + "tt7016522", + "tt4788744", + "tt8385108", + "tt6986606", + "tt2925410", + "tt5536610", + "tt0117891", + "tt3809276", + "tt2252038", + "tt2244222", + "tt0165874", + "tt3150796", + "tt3591436", + "tt2493210", + "tt1591071", + "tt2400435", + "tt2273720", + "tt0182789", + "tt5723416", + "tt7280898", + "tt0415978", + "tt2226050", + "tt5116302", + "tt6611950", + "tt6856186", + "tt3683398", + "tt5979690", + "tt2752724", + "tt5290882", + "tt6114234", + "tt6198246", + "tt2693580", + "tt6328086", + "tt8865580", + "tt2193456", + "tt0138590", + "tt1646877", + "tt0428865", + "tt1025100", + "tt5717194", + "tt3576038", + "tt7830574", + "tt1626637", + "tt2449564", + "tt9711106", + "tt6090044", + "tt1893186", + "tt8983138", + "tt8652584", + "tt3359730", + "tt2845514", + "tt7248518", + "tt9753018", + "tt10964346", + "tt4083682", + "tt10964186", + "tt6980988", + "tt7444706", + "tt6173902", + "tt7990532", + "tt8791968", + "tt6409856", + "tt6099438", + "tt7278702", + "tt0206216", + "tt4682562", + "tt5031388", + "tt9052266", + "tt0081501", + "tt7390080", + "tt5957544", + "tt0094627", + "tt0192788", + "tt3499286", + "tt0107120", + "tt6042334", + "tt6318954", + "tt7678408", + "tt6910006", + "tt10817348", + "tt2584384", + "tt3735216", + "tt6023650", + "tt3921854", + "tt3528574", + "tt7122106", + "tt2277946", + "tt2153416", + "tt2035535", + "tt2734818", + "tt6194978", + "tt6051412", + "tt2450366", + "tt3417866", + "tt4758818", + "tt1863441", + "tt2380029", + "tt1876248", + "tt1517626", + "tt4158590", + "tt2390275", + "tt10305932", + "tt2865380", + "tt6680858", + "tt5480340", + "tt7422822", + "tt4325356", + "tt7057376", + "tt1458397", + "tt3654026", + "tt7309512", + "tt4135218", + "tt5937996", + "tt4357624", + "tt6836406", + "tt3615814", + "tt7239400", + "tt6171672", + "tt3056202", + "tt4807552", + "tt0048764", + "tt3631284", + "tt0055031", + "tt6367782", + "tt1823744", + "tt0249218", + "tt0275225", + "tt2153198", + "tt8019694", + "tt0040970", + "tt1727596", + "tt2850480", + "tt1640605", + "tt1082863", + "tt3220890", + "tt7890274", + "tt2027215", + "tt7615436", + "tt7939428", + "tt9738400", + "tt2354012", + "tt4448304", + "tt1231597", + "tt4460122", + "tt4949162", + "tt1552111", + "tt5101878", + "tt3347518", + "tt3766040", + "tt5472896", + "tt0110966", + "tt3960584", + "tt0249378", + "tt4067578", + "tt1665799", + "tt5974626", + "tt4454834", + "tt5823326", + "tt2711672", + "tt0439544", + "tt4835894", + "tt3212380", + "tt5717184", + "tt4896904", + "tt1855977", + "tt0102202", + "tt3763866", + "tt8883164", + "tt3762766", + "tt1669818", + "tt4853120", + "tt8634256", + "tt4007320", + "tt2836166", + "tt5814512", + "tt2854692", + "tt2827058", + "tt3647328", + "tt6205542", + "tt2184552", + "tt4485806", + "tt0162907", + "tt1314269", + "tt3153634", + "tt3086582", + "tt4958448", + "tt0485061", + "tt3043630", + "tt6122306", + "tt4920274", + "tt7191910", + "tt6908536", + "tt4584814", + "tt0057546", + "tt8119844", + "tt7948854", + "tt2827708", + "tt0056353", + "tt8688634", + "tt2076298", + "tt2291904", + "tt9778190", + "tt1714850", + "tt9735672", + "tt7295568", + "tt0910873", + "tt9038304", + "tt2451110", + "tt7502322", + "tt9135722", + "tt1869470", + "tt7707988", + "tt8543470", + "tt1418353", + "tt8860946", + "tt9501310", + "tt3631298", + "tt5599876", + "tt9261594", + "tt5344876", + "tt3469718", + "tt0290014", + "tt3646592", + "tt7255374", + "tt0386108", + "tt7469672", + "tt5156274", + "tt1514044", + "tt3485800", + "tt5319866", + "tt7308198", + "tt0110399", + "tt2073661", + "tt3057572", + "tt8339704", + "tt0362590", + "tt0192071", + "tt4727010", + "tt6137494", + "tt1781777", + "tt5678732", + "tt2492002", + "tt0119843", + "tt11421870", + "tt4697228", + "tt0379380", + "tt2635824", + "tt1336106", + "tt4686108", + "tt0148421", + "tt4299774", + "tt0445620", + "tt5691084", + "tt0460811", + "tt6156656", + "tt4056574", + "tt1380151", + "tt4229864", + "tt3766382", + "tt0456145", + "tt1330018", + "tt5201882", + "tt6205996", + "tt2136972", + "tt5607782", + "tt3180548", + "tt4254562", + "tt8637922", + "tt1091863", + "tt0122529", + "tt9853686", + "tt2488496", + "tt0121765", + "tt0787462", + "tt11321468", + "tt7549884", + "tt6445414", + "tt6044156", + "tt0105428", + "tt0120915", + "tt0110613", + "tt0079813", + "tt0084695", + "tt3713030", + "tt1798291", + "tt6492186", + "tt5474522", + "tt0096118", + "tt0082431", + "tt0086143", + "tt4365566", + "tt2490432", + "tt1112120", + "tt4038806", + "tt0108137", + "tt6964966", + "tt7379330", + "tt5924114", + "tt6840554", + "tt8597286", + "tt2378145", + "tt0116920", + "tt8539512", + "tt5116504", + "tt3294664", + "tt3519772", + "tt2935390", + "tt5893032", + "tt2179237", + "tt1401621", + "tt6241678", + "tt3252594", + "tt3173758", + "tt6456768", + "tt5216022", + "tt4694366", + "tt5841088", + "tt6445922", + "tt2469760", + "tt3455224", + "tt6851066", + "tt6384998", + "tt4058012", + "tt4851570", + "tt7676992", + "tt5129674", + "tt3285740", + "tt4323536", + "tt3368814", + "tt6106980", + "tt4247440", + "tt1906384", + "tt6519912", + "tt6023386", + "tt5207320", + "tt6673612", + "tt7631320", + "tt9426212", + "tt8000718", + "tt5670842", + "tt8151874", + "tt10370380", + "tt0078740", + "tt0068505", + "tt8236398", + "tt6964562", + "tt0071110", + "tt0052832", + "tt0046358", + "tt7025388", + "tt3224458", + "tt0031804", + "tt3842684", + "tt0049042", + "tt0082966", + "tt11388406", + "tt7095476", + "tt0365617", + "tt5257554", + "tt0234137", + "tt1814727", + "tt2219214", + "tt1125188", + "tt1504397", + "tt5105666", + "tt5075328", + "tt2182256", + "tt3828858", + "tt4329394", + "tt5719076", + "tt6883152", + "tt5879216", + "tt2375443", + "tt8110966", + "tt3485754", + "tt1753449", + "tt8841148", + "tt0098412", + "tt2399648", + "tt3672120", + "tt1039915", + "tt0096074", + "tt5013782", + "tt4170344", + "tt3596842", + "tt2348880", + "tt0486569", + "tt1017465", + "tt0325980", + "tt6404142", + "tt3257550", + "tt1298650", + "tt7014430", + "tt5686062", + "tt0449088", + "tt0383574", + "tt9129406", + "tt6841812", + "tt5690472", + "tt8855852", + "tt5115546", + "tt9170352", + "tt1341718", + "tt4431254", + "tt5076150", + "tt1461698", + "tt2155259", + "tt3014262", + "tt7575660", + "tt8660492", + "tt7831358", + "tt3210258", + "tt1289403", + "tt0082782", + "tt3983738", + "tt5848416", + "tt7193362", + "tt6664120", + "tt0056105", + "tt9206562", + "tt0425326", + "tt9143942", + "tt0089222", + "tt4621256", + "tt7738490", + "tt0424228", + "tt0077241", + "tt4146132", + "tt4563460", + "tt6324278", + "tt0181838", + "tt3760974", + "tt1623745", + "tt4587780", + "tt0461694", + "tt2377752", + "tt5569618", + "tt0191191", + "tt1564571", + "tt6302296", + "tt0036342", + "tt6141048", + "tt3653650", + "tt4250960", + "tt3856300", + "tt2153394", + "tt3163244", + "tt6507954", + "tt0040746", + "tt7672714", + "tt5780484", + "tt3111306", + "tt0422309", + "tt5193408", + "tt6736282", + "tt5340626", + "tt7155576", + "tt3973036", + "tt0035279", + "tt5696326", + "tt6318238", + "tt2516424", + "tt7623988", + "tt5253282", + "tt0315273", + "tt5651458", + "tt0119887", + "tt2179231", + "tt3664992", + "tt1640483", + "tt4421800", + "tt7527912", + "tt5496244", + "tt5973658", + "tt6209960", + "tt6856134", + "tt9038976", + "tt4717208", + "tt4888576", + "tt6772700", + "tt4210934", + "tt3587396", + "tt2514298", + "tt0086190", + "tt0073640", + "tt5471472", + "tt0093051", + "tt0076759", + "tt0147599", + "tt0239948", + "tt5598206", + "tt2184398", + "tt10218674", + "tt3700594", + "tt3823826", + "tt8861786", + "tt6333066", + "tt7217214", + "tt4427060", + "tt1999192", + "tt5288532", + "tt8010354", + "tt8259682", + "tt6290202", + "tt1714196", + "tt1822311", + "tt3481000", + "tt2112999", + "tt5313016", + "tt8005338", + "tt9810420", + "tt3748528", + "tt2292903", + "tt8649186", + "tt0436613", + "tt8380776", + "tt0080684", + "tt0051564", + "tt1502714", + "tt0086310", + "tt0077679", + "tt1223934", + "tt0094374", + "tt6675244", + "tt5176832", + "tt2728984", + "tt0018737", + "tt0019933", + "tt0080658", + "tt0058604", + "tt5911032", + "tt6885502", + "tt5873100", + "tt0093215", + "tt2094195", + "tt0110300", + "tt2087982", + "tt6069126", + "tt7656570", + "tt0770748", + "tt7427356", + "tt4708300", + "tt5032468", + "tt5565806", + "tt4797490", + "tt2481512", + "tt6503230", + "tt3274704", + "tt3562370", + "tt4970294", + "tt3061222", + "tt1753821", + "tt3424914", + "tt5945724", + "tt7216586", + "tt0109480", + "tt4177822", + "tt1786462", + "tt2212778", + "tt3868978", + "tt4082482", + "tt2181282", + "tt1526745", + "tt5718046", + "tt1249439", + "tt4938588", + "tt0199290", + "tt4602074", + "tt0281865", + "tt7039000", + "tt4966046", + "tt6034774", + "tt0319524", + "tt0090956", + "tt6524170", + "tt7078922", + "tt3305176", + "tt4763168", + "tt4503112", + "tt6603378", + "tt2636480", + "tt0472562", + "tt0332136", + "tt1787731", + "tt6155172", + "tt0113729", + "tt9541486", + "tt1311093", + "tt8887784", + "tt6395680", + "tt6140148", + "tt7314630", + "tt5822132", + "tt0058083", + "tt5974030", + "tt0114697", + "tt5367690", + "tt6076208", + "tt3188048", + "tt0191754", + "tt4433360", + "tt7671064", + "tt0365270", + "tt6141246", + "tt1984177", + "tt0048198", + "tt0039090", + "tt0099581", + "tt9882084", + "tt0467426", + "tt1204979", + "tt0138797", + "tt0878652", + "tt0240119", + "tt0080850", + "tt7243754", + "tt0215135", + "tt0382943", + "tt0096875", + "tt0382019", + "tt2955096", + "tt1219820", + "tt8652728", + "tt5904182", + "tt0119709", + "tt4906686", + "tt9652782", + "tt0101507", + "tt0103872", + "tt9198724", + "tt2343549", + "tt1950186", + "tt0109835", + "tt2783020", + "tt5119264", + "tt2946498", + "tt0096405", + "tt0109575", + "tt0037801", + "tt2597760", + "tt6814106", + "tt3120484", + "tt3900796", + "tt7631792", + "tt5090750", + "tt6357074", + "tt4178020", + "tt2503954", + "tt4797436", + "tt6958520", + "tt5066574", + "tt3350376", + "tt2413914", + "tt4387314", + "tt2931376", + "tt2292196", + "tt2392383", + "tt3109188", + "tt5191758", + "tt0100480", + "tt4280540", + "tt7104950", + "tt2330973", + "tt2515242", + "tt1800240", + "tt4552514", + "tt9201634", + "tt0876154", + "tt2197963", + "tt5523004", + "tt4743562", + "tt1701176", + "tt0843353", + "tt3212910", + "tt1858739", + "tt0835802", + "tt4717422", + "tt7038606", + "tt0494746", + "tt4229578", + "tt3645178", + "tt7738550", + "tt7073350", + "tt6406848", + "tt6705838", + "tt7539884", + "tt9358052", + "tt4538632", + "tt2530756", + "tt5178348", + "tt8466562", + "tt1146431", + "tt1447800", + "tt3349578", + "tt5829104", + "tt7364706", + "tt4192066", + "tt10584272", + "tt11274306", + "tt9174334", + "tt3092208", + "tt0082415", + "tt10375886", + "tt0059541", + "tt2634584", + "tt0079083", + "tt1637612", + "tt0067815", + "tt6062774", + "tt0087282", + "tt11379262", + "tt2218080", + "tt3587890", + "tt3649942", + "tt8324462", + "tt0108334", + "tt0038360", + "tt2259122", + "tt5069086", + "tt5498536", + "tt2658192", + "tt7805064", + "tt7736664", + "tt2934844", + "tt6290736", + "tt9369332", + "tt0070212", + "tt5516404", + "tt3689908", + "tt0115643", + "tt2357011", + "tt3593626", + "tt2662218", + "tt1727253", + "tt4513538", + "tt5646992", + "tt3920890", + "tt7130740", + "tt3879074", + "tt4637240", + "tt0116621", + "tt5977536", + "tt0102065", + "tt3863632", + "tt0373416", + "tt6627466", + "tt5634406", + "tt5887650", + "tt3458760", + "tt6237208", + "tt0111704", + "tt4692656", + "tt4149656", + "tt2177228", + "tt3180154", + "tt7237666", + "tt1402213", + "tt4669278", + "tt3063462", + "tt3721602", + "tt6509862", + "tt7178226", + "tt6970616", + "tt0095654", + "tt4264610", + "tt4672272", + "tt5189770", + "tt5898630", + "tt0437503", + "tt4922524", + "tt0465417", + "tt4048628", + "tt2015478", + "tt3186552", + "tt5812510", + "tt3319158", + "tt2049448", + "tt8297300", + "tt1077394", + "tt6762684", + "tt3149900", + "tt2385752", + "tt6079060", + "tt4030560", + "tt5371832", + "tt1206885", + "tt0117407", + "tt0829193", + "tt2642226", + "tt0825283", + "tt1800379", + "tt1780790", + "tt7924798", + "tt5200506", + "tt6495094", + "tt0171227", + "tt5687814", + "tt0117495", + "tt4177498", + "tt4134826", + "tt3074694", + "tt4066000", + "tt0079073", + "tt3733606", + "tt0109254", + "tt0092644", + "tt6353036", + "tt6213952", + "tt5803438", + "tt4255274", + "tt5656126", + "tt3813094", + "tt3809960", + "tt6960220", + "tt0067341", + "tt0481273", + "tt5988216", + "tt7971048", + "tt0086960", + "tt1340425", + "tt2400407", + "tt0044982", + "tt6563012", + "tt4146350", + "tt6488382", + "tt4521686", + "tt0093171", + "tt0177507", + "tt0081286", + "tt0101492", + "tt0093671", + "tt3273434", + "tt0093347", + "tt2763746", + "tt4085456", + "tt4824316", + "tt2530452", + "tt0059837", + "tt0079372", + "tt3422622", + "tt5233558", + "tt4368038", + "tt7027566", + "tt3779382", + "tt8262802", + "tt4444438", + "tt7657972", + "tt1707387", + "tt0084259", + "tt0315312", + "tt9109278", + "tt1476425", + "tt2464812", + "tt1352771", + "tt7222290", + "tt2145637", + "tt0391890", + "tt5950092", + "tt0104526", + "tt5646604", + "tt5051826", + "tt2987806", + "tt2381213", + "tt0467421", + "tt4329806", + "tt7949046", + "tt2993674", + "tt4874350", + "tt6900380", + "tt6849128", + "tt4831810", + "tt1727362", + "tt1891770", + "tt7575400", + "tt0362001", + "tt3844084", + "tt7952840", + "tt3722248", + "tt5205210", + "tt4593196", + "tt2282628", + "tt2063015", + "tt5945946", + "tt8773700", + "tt2076862", + "tt3089272", + "tt4441150", + "tt3496892", + "tt4843358", + "tt4671002", + "tt1687861", + "tt4173306", + "tt8911030", + "tt6164762", + "tt5834278", + "tt7128608", + "tt6371588", + "tt3665760", + "tt4394104", + "tt0102432", + "tt4741768", + "tt5896568", + "tt4010862", + "tt2536846", + "tt4572984", + "tt4044896", + "tt3107166", + "tt6794448", + "tt4864584", + "tt3326892", + "tt7924808", + "tt0097886", + "tt3620120", + "tt0411265", + "tt2525342", + "tt5275128", + "tt7109844", + "tt0105597", + "tt1466054", + "tt1537196", + "tt10380066", + "tt1418757", + "tt7309430", + "tt0043724", + "tt3282858", + "tt6156138", + "tt7493366", + "tt4711724", + "tt1127881", + "tt1843171", + "tt11388580", + "tt0224421", + "tt0074512", + "tt7418824", + "tt7090140", + "tt4346050", + "tt5531298", + "tt1472460", + "tt6456614", + "tt7019560", + "tt2554842", + "tt0049470", + "tt6176138", + "tt2401752", + "tt1588878", + "tt3172126", + "tt0100330", + "tt2012062", + "tt6540984", + "tt0103978", + "tt0120392", + "tt2784020", + "tt2177368", + "tt6688304", + "tt5728684", + "tt0103039", + "tt3973012", + "tt6149802", + "tt3978358", + "tt3709746", + "tt1558259", + "tt2306441", + "tt1826780", + "tt3326096", + "tt4588594", + "tt6218440", + "tt5698320", + "tt4424722", + "tt0109730", + "tt3515318", + "tt9426852", + "tt3890902", + "tt10800758", + "tt4542726", + "tt2088745", + "tt7385782", + "tt1343371", + "tt1877893", + "tt1245734", + "tt6852284", + "tt0166110", + "tt0212380", + "tt5478918", + "tt4894198", + "tt7099566", + "tt2027091", + "tt4881364", + "tt4497978", + "tt3891338", + "tt0828393", + "tt6953896", + "tt3334418", + "tt3538666", + "tt4926656", + "tt6069162", + "tt1320373", + "tt0231448", + "tt8499212", + "tt5822712", + "tt0116471", + "tt11611314", + "tt0308878", + "tt2224966", + "tt0076069", + "tt5228262", + "tt8991200", + "tt3180402", + "tt0065112", + "tt1948079", + "tt0443474", + "tt0068611", + "tt4440114", + "tt7408776", + "tt7134522", + "tt4289298", + "tt5214752", + "tt2393730", + "tt0807747", + "tt4827420", + "tt1213672", + "tt7329810", + "tt6950594", + "tt8219526", + "tt2852460", + "tt5998744", + "tt3482000", + "tt6323858", + "tt7155178", + "tt4657280", + "tt5846628", + "tt0120353", + "tt3986108", + "tt2294679", + "tt6495526", + "tt4648732", + "tt0250687", + "tt4623856", + "tt2375844", + "tt7819860", + "tt0109368", + "tt1379197", + "tt4111826", + "tt4215674", + "tt0251191", + "tt3985516", + "tt3350996", + "tt1950135", + "tt6267964", + "tt2106616", + "tt4561402", + "tt2009432", + "tt8275670", + "tt1905071", + "tt1097636", + "tt6438840", + "tt5224356", + "tt5865046", + "tt6998650", + "tt2370228", + "tt3717316", + "tt2980554", + "tt0114117", + "tt0415141", + "tt1980085", + "tt3027188", + "tt5542878", + "tt2989524", + "tt0106408", + "tt0251005", + "tt6212020", + "tt1928334", + "tt6113122", + "tt7472352", + "tt3226454", + "tt3762834", + "tt2382622", + "tt4160132", + "tt3630800", + "tt7580076", + "tt3693042", + "tt9602666", + "tt0398872", + "tt5848640", + "tt1326219", + "tt5579982", + "tt3924774", + "tt3303020", + "tt3476464", + "tt2275471", + "tt5302658", + "tt3302092", + "tt6028556", + "tt4353376", + "tt9625664", + "tt6966044", + "tt8638420", + "tt1477834", + "tt8623904", + "tt0179148", + "tt7285748", + "tt3881680", + "tt0140767", + "tt7427130", + "tt2836628", + "tt2187322", + "tt4181270", + "tt3752902", + "tt0191655", + "tt1287876", + "tt6688354", + "tt5565254", + "tt1918924", + "tt1410205", + "tt6243274", + "tt3634908", + "tt0462346", + "tt1397502", + "tt6516590", + "tt5579356", + "tt3625136", + "tt3189648", + "tt3773210", + "tt6281242", + "tt0112732", + "tt6043072", + "tt5807628", + "tt6089700", + "tt7130860", + "tt4494094", + "tt4461014", + "tt1878932", + "tt1880415", + "tt2782692", + "tt0160356", + "tt1067773", + "tt1072755", + "tt4187786", + "tt7681970", + "tt2186712", + "tt3843514", + "tt5060166", + "tt0061107", + "tt0765465", + "tt0058329", + "tt6511760", + "tt0907676", + "tt1264906", + "tt2836376", + "tt3289080", + "tt4917224", + "tt0088454", + "tt2075292", + "tt7681868", + "tt4007068", + "tt2118727", + "tt4364338", + "tt1338590", + "tt9288776", + "tt0239496", + "tt0307568", + "tt2513616", + "tt6391282", + "tt11172926", + "tt2413958", + "tt11076480", + "tt2137992", + "tt11518196", + "tt10564446", + "tt9552162", + "tt8353934", + "tt10655652", + "tt0783640", + "tt0043459", + "tt7299298", + "tt0084904", + "tt3309874", + "tt7145708", + "tt7049272", + "tt7087674", + "tt0087795", + "tt8726180", + "tt0054215", + "tt4947738", + "tt0056869", + "tt9134216", + "tt7066546", + "tt0100050", + "tt7293920", + "tt6910380", + "tt5606664", + "tt1570337", + "tt1295093", + "tt3735332", + "tt3059576", + "tt0091836", + "tt4437216", + "tt1934452", + "tt4514646", + "tt7406704", + "tt0101783", + "tt2633014", + "tt2950434", + "tt2912776", + "tt5116248", + "tt5537140", + "tt2901006", + "tt4960764", + "tt0454962", + "tt4856508", + "tt1614430", + "tt5644050", + "tt0115837", + "tt2343601", + "tt1821701", + "tt0101444", + "tt3118920", + "tt5839116", + "tt2147728", + "tt1659192", + "tt1332009", + "tt6388844", + "tt0097244", + "tt2082289", + "tt1183727", + "tt1378238", + "tt4738802", + "tt2406306", + "tt6623390", + "tt3216846", + "tt7858466", + "tt5086046", + "tt3898776", + "tt0784972", + "tt7215388", + "tt3877344", + "tt4513560", + "tt2782868", + "tt1669768", + "tt7493274", + "tt5039994", + "tt1616543", + "tt1049405", + "tt0082095", + "tt9546624", + "tt0072717", + "tt0159443", + "tt0064148", + "tt0093870", + "tt8801584", + "tt7008310", + "tt1467388", + "tt0101763", + "tt0240880", + "tt7818580", + "tt3181588", + "tt6165792", + "tt5563334", + "tt11488724", + "tt3863542", + "tt7802246", + "tt3292080", + "tt1129441", + "tt0092710", + "tt5777802", + "tt5592256", + "tt7465694", + "tt3587064", + "tt11361808", + "tt4624258", + "tt1757927", + "tt1839482", + "tt5524630", + "tt1865573", + "tt1811307", + "tt0052357", + "tt6150962", + "tt3214448", + "tt3361004", + "tt7945098", + "tt7209220", + "tt3579842", + "tt5350512", + "tt1838601", + "tt1791611", + "tt4762592", + "tt2445568", + "tt5195828", + "tt4688294", + "tt2140577", + "tt0085994", + "tt7718636", + "tt3881768", + "tt5521550", + "tt2781612", + "tt2987718", + "tt0088008", + "tt6109874", + "tt4818168", + "tt0263467", + "tt4645358", + "tt4442604", + "tt0166219", + "tt4720596", + "tt7481192", + "tt4568466", + "tt4746102", + "tt6792478", + "tt0196223", + "tt2523096", + "tt6354056", + "tt1410068", + "tt6503354", + "tt4667832", + "tt4837126", + "tt3109072", + "tt5940448", + "tt7647840", + "tt1282142", + "tt1849868", + "tt6150942", + "tt8733014", + "tt0042176", + "tt2816628", + "tt0067595", + "tt5208130", + "tt0077729", + "tt5864238", + "tt0076460", + "tt5675746", + "tt1972766", + "tt0039438", + "tt1584824", + "tt8649636", + "tt1584807", + "tt7967412", + "tt7738048", + "tt0026737", + "tt0047232", + "tt7736478", + "tt0027164", + "tt0032655", + "tt5287914", + "tt0037678", + "tt0027796", + "tt0109440", + "tt0070746", + "tt0041527", + "tt0030066", + "tt0044379", + "tt0036581", + "tt0057541", + "tt0107413", + "tt3759434", + "tt1843303", + "tt0050894", + "tt1776305", + "tt5913968", + "tt0108169", + "tt1426328", + "tt1773690", + "tt2224509", + "tt2989350", + "tt0122338", + "tt0082685", + "tt0138563", + "tt2133243", + "tt8579674", + "tt5873672", + "tt0120389", + "tt5811154", + "tt0110054", + "tt1629762", + "tt3787068", + "tt7218564", + "tt0120813", + "tt1737755", + "tt3781762", + "tt6212210", + "tt5577390", + "tt0417614", + "tt4312882", + "tt2057920", + "tt4405532", + "tt4227204", + "tt5033018", + "tt3130302", + "tt4318696", + "tt5143770", + "tt3207376", + "tt2281317", + "tt7520216", + "tt7304212", + "tt5034122", + "tt1690967", + "tt5653444", + "tt2523756", + "tt3217994", + "tt4566780", + "tt3400058", + "tt3415358", + "tt5936582", + "tt7966994", + "tt2587914", + "tt5142898", + "tt2142987", + "tt1541149", + "tt2190451", + "tt1260704", + "tt5985672", + "tt3394972", + "tt3059046", + "tt0073624", + "tt3484728", + "tt1690542", + "tt11615634", + "tt5459324", + "tt2977158", + "tt1934472", + "tt3510678", + "tt0117898", + "tt8954890", + "tt2084784", + "tt3333864", + "tt2459072", + "tt1935093", + "tt4510896", + "tt3780688", + "tt6740608", + "tt6245540", + "tt6773288", + "tt3826866", + "tt5329134", + "tt7165808", + "tt11082512", + "tt6188002", + "tt7440432", + "tt6920766", + "tt5477402", + "tt0089731", + "tt3438208", + "tt4971346", + "tt2846378", + "tt9357404", + "tt4712516", + "tt6253522", + "tt3953944", + "tt2552666", + "tt4875962", + "tt1826813", + "tt3276632", + "tt3561236", + "tt8976608", + "tt3887208", + "tt4907976", + "tt7610196", + "tt2298186", + "tt4447518", + "tt6603860", + "tt6563576", + "tt1823684", + "tt0036613", + "tt0483812", + "tt1598778", + "tt0030241", + "tt5833658", + "tt4678298", + "tt1879066", + "tt11422214", + "tt0106473", + "tt0393109", + "tt3108570", + "tt4426464", + "tt5007774", + "tt2073600", + "tt2219772", + "tt0481583", + "tt4505666", + "tt1943696", + "tt2716576", + "tt1958053", + "tt5959970", + "tt5791094", + "tt5891642", + "tt0070194", + "tt5222806", + "tt0488757", + "tt3110014", + "tt6107548", + "tt3472210", + "tt2281309", + "tt4471636", + "tt8185442", + "tt4533838", + "tt4360406", + "tt3216086", + "tt3501410", + "tt4074958", + "tt5293604", + "tt5261644", + "tt3896016", + "tt6738046", + "tt4828620", + "tt4296186", + "tt3280522", + "tt1626251", + "tt6207118", + "tt2012665", + "tt8185584", + "tt3876382", + "tt3560492", + "tt0105450", + "tt1411249", + "tt3564860", + "tt8278648", + "tt5457078", + "tt0106273", + "tt2395970", + "tt5369760", + "tt7039326", + "tt4160706", + "tt1337032", + "tt11023922", + "tt6185286", + "tt4893178", + "tt5485578", + "tt6266306", + "tt0109450", + "tt6673964", + "tt4172510", + "tt2093944", + "tt5363736", + "tt5181834", + "tt2231900", + "tt2481500", + "tt1018817", + "tt4034390", + "tt6215208", + "tt2362036", + "tt2926924", + "tt10883506", + "tt6149936", + "tt0194722", + "tt3715296", + "tt8678982", + "tt1587309", + "tt4362646", + "tt4247828", + "tt6333200", + "tt3499358", + "tt10731748", + "tt5969180", + "tt3098998", + "tt7144296", + "tt8668312", + "tt3727120", + "tt1662500", + "tt5809726", + "tt4791276", + "tt5690992", + "tt2914740", + "tt7444708", + "tt3447676", + "tt10525236", + "tt1956534", + "tt6638398", + "tt0100152", + "tt5038134", + "tt4394034", + "tt0113140", + "tt7430654", + "tt7547510", + "tt4396662", + "tt1242658", + "tt2359473", + "tt7557686", + "tt4625316", + "tt2361558", + "tt7419218", + "tt2375763", + "tt6032878", + "tt0289879", + "tt0064471", + "tt0047396", + "tt0139898", + "tt0084887", + "tt7364522", + "tt8170298", + "tt10297640", + "tt0048750", + "tt0090062", + "tt0035962", + "tt5884434", + "tt0242527", + "tt0103617", + "tt5697572", + "tt7587984", + "tt0052141", + "tt0053715", + "tt0032554", + "tt0102631", + "tt0058267", + "tt0079814", + "tt0095981", + "tt0074967", + "tt3276518", + "tt0399095", + "tt8484038", + "tt0093043", + "tt6147240", + "tt4196832", + "tt2974902", + "tt3220100", + "tt5106390", + "tt3289804", + "tt3449322", + "tt6333092", + "tt0053226", + "tt0367151", + "tt3704298", + "tt5716380", + "tt2822864", + "tt2786780", + "tt4250438", + "tt5716848", + "tt2246376", + "tt5637736", + "tt4162860", + "tt7406186", + "tt3835612", + "tt0303017", + "tt3986978", + "tt4560008", + "tt6354166", + "tt0480461", + "tt6172696", + "tt0094188", + "tt5582308", + "tt5896146", + "tt2659190", + "tt1648155", + "tt4526136", + "tt6963592", + "tt6933454", + "tt0331509", + "tt0119717", + "tt3081268", + "tt0120213", + "tt2014225", + "tt4047350", + "tt3007524", + "tt7544820", + "tt5002544", + "tt3496790", + "tt3449658", + "tt3234084", + "tt1376699", + "tt2762970", + "tt1059905", + "tt4687276", + "tt8583930", + "tt7494136", + "tt2385119", + "tt4274788", + "tt1842371", + "tt2089624", + "tt5321568", + "tt6185998", + "tt6077404", + "tt6345080", + "tt10011448", + "tt5938950", + "tt6233592", + "tt3595748", + "tt3174890", + "tt7230054", + "tt3813018", + "tt6644632", + "tt10010368", + "tt8942864", + "tt8910924", + "tt1773389", + "tt4994992", + "tt2535394", + "tt3416674", + "tt3474978", + "tt0455933", + "tt4575782", + "tt3532686", + "tt6015068", + "tt4590092", + "tt4633662", + "tt5673714", + "tt6962204", + "tt2487028", + "tt6182054", + "tt3854372", + "tt2556676", + "tt5278886", + "tt5156532", + "tt0401504", + "tt1762370", + "tt6898162", + "tt2524934", + "tt6061074", + "tt1244093", + "tt5167174", + "tt6912586", + "tt0473445", + "tt5260026", + "tt1137477", + "tt0415877", + "tt1267299", + "tt0472219", + "tt1951133", + "tt1414823", + "tt0317950", + "tt3118442", + "tt6842126", + "tt4374864", + "tt1977919", + "tt4392454", + "tt5179398", + "tt5868924", + "tt7400118", + "tt3076510", + "tt7521846", + "tt6676028", + "tt2515456", + "tt5030452", + "tt0035123", + "tt0052997", + "tt4648786", + "tt4691804", + "tt4916630", + "tt9450768", + "tt4000956", + "tt5593416", + "tt0385887", + "tt9814242", + "tt7590074", + "tt7493810", + "tt2604704", + "tt5025254", + "tt0190520", + "tt5894876", + "tt1222329", + "tt7058618", + "tt8571578", + "tt0112701", + "tt7637350", + "tt10711654", + "tt2769158", + "tt0303101", + "tt0101535", + "tt4191592", + "tt0080905", + "tt1583948", + "tt6985424", + "tt10378926", + "tt2271565", + "tt8140328", + "tt10238708", + "tt8498366", + "tt3219154", + "tt4060544", + "tt3278416", + "tt3731564", + "tt8555260", + "tt0070066", + "tt9161168", + "tt0034591", + "tt4940094", + "tt0285685", + "tt4991786", + "tt0078869", + "tt0026424", + "tt0089420", + "tt3102360", + "tt0055450", + "tt0075382", + "tt4746370", + "tt4147596", + "tt3090882", + "tt5639536", + "tt0770818", + "tt1942922", + "tt2338205", + "tt3621170", + "tt1746153", + "tt0434931", + "tt5526792", + "tt7656706", + "tt4297380", + "tt5791622", + "tt0791178", + "tt6323264", + "tt6582774", + "tt11274564", + "tt5907618", + "tt4704040", + "tt5798330", + "tt3270636", + "tt2083385", + "tt4631048", + "tt8688048", + "tt3253040", + "tt10319778", + "tt6769598", + "tt3763748", + "tt7783966", + "tt5539538", + "tt0080928", + "tt10806810", + "tt0221074", + "tt4121152", + "tt2352488", + "tt3993760", + "tt2318601", + "tt7248490", + "tt2190196", + "tt9810090", + "tt5486818", + "tt5741902", + "tt8014038", + "tt8516550", + "tt10150518", + "tt5672048", + "tt0088782", + "tt8332592", + "tt9397440", + "tt8667972", + "tt2973554", + "tt7612032", + "tt2461030", + "tt6818554", + "tt9419838", + "tt0091995", + "tt7246106", + "tt0351761", + "tt6538102", + "tt6927880", + "tt3886604", + "tt4350998", + "tt3103166", + "tt5815818", + "tt4711924", + "tt1334521", + "tt4872260", + "tt3878146", + "tt1491043", + "tt8716334", + "tt5544224", + "tt2293060", + "tt3480662", + "tt0901487", + "tt3012776", + "tt3415354", + "tt4508932", + "tt0324013", + "tt4177018", + "tt3722052", + "tt1037156", + "tt3315398", + "tt4002884", + "tt2421328", + "tt6411954", + "tt7476236", + "tt4499572", + "tt2481496", + "tt3923004", + "tt6020164", + "tt2374835", + "tt9311062", + "tt6197494", + "tt0125494", + "tt1998400", + "tt5183990", + "tt9313582", + "tt7149916", + "tt5087548", + "tt3103284", + "tt10795784", + "tt10667704", + "tt9028890", + "tt4723724", + "tt6149464", + "tt0298519", + "tt2405612", + "tt3369286", + "tt7654082", + "tt0056677", + "tt0111412", + "tt3347782", + "tt6634632", + "tt5629128", + "tt3169000", + "tt3893826", + "tt2132301", + "tt0060818", + "tt1515208", + "tt5786564", + "tt10061096", + "tt5118014", + "tt1861401", + "tt0415068", + "tt5182120", + "tt0447372", + "tt3828166", + "tt0111488", + "tt5869644", + "tt5919064", + "tt6654090", + "tt5105784", + "tt1567344", + "tt8168884", + "tt1787810", + "tt9093130", + "tt3729394", + "tt6483026", + "tt2988226", + "tt3078752", + "tt8115474", + "tt7573824", + "tt6048414", + "tt7984130", + "tt2395228", + "tt8844044", + "tt7252918", + "tt4460624", + "tt3921454", + "tt5598160", + "tt0060740", + "tt0086265", + "tt5699126", + "tt8255490", + "tt5113028", + "tt0031309", + "tt5320612", + "tt0076432", + "tt0062981", + "tt6585674", + "tt0116596", + "tt10540628", + "tt2731436", + "tt7021536", + "tt7907714", + "tt6425474", + "tt5212122", + "tt0090637", + "tt0058780", + "tt8399690", + "tt6450804", + "tt7080138", + "tt4819560", + "tt0081249", + "tt0050235", + "tt3872958", + "tt0061401", + "tt5180618", + "tt4061360", + "tt4162440", + "tt5843056", + "tt4161396", + "tt3512072", + "tt8094980", + "tt7155170", + "tt5456436", + "tt4949100", + "tt5180856", + "tt0076489", + "tt6835804", + "tt2963974", + "tt3784160", + "tt4057142", + "tt2708764", + "tt3635788", + "tt6782708", + "tt1278153", + "tt4490654", + "tt4765870", + "tt0397401", + "tt5428662", + "tt5039242", + "tt7334352", + "tt8019044", + "tt4887028", + "tt4363250", + "tt2262518", + "tt3856042", + "tt5613902", + "tt5929538", + "tt0098153", + "tt11368116", + "tt1690545", + "tt5706876", + "tt2276000", + "tt2674430", + "tt4942478", + "tt3862762", + "tt5687424", + "tt1720621", + "tt3904272", + "tt1146283", + "tt6398360", + "tt6421118", + "tt4524418", + "tt3546802", + "tt2966754", + "tt3074546", + "tt5874752", + "tt1065060", + "tt6323306", + "tt3693492", + "tt4529524", + "tt5716280", + "tt5973364", + "tt4843208", + "tt6357202", + "tt4768592", + "tt2175470", + "tt9651918", + "tt2226630", + "tt5321088", + "tt5117484", + "tt1942913", + "tt0322282", + "tt4929720", + "tt2737310", + "tt3804448", + "tt10551420", + "tt7575410", + "tt3904986", + "tt10218664", + "tt5679554", + "tt10726604", + "tt4705740", + "tt3396208", + "tt5247026", + "tt5647250", + "tt6459382", + "tt3647110", + "tt0106613", + "tt3418424", + "tt2404465", + "tt5347122", + "tt5555174", + "tt9722848", + "tt6578228", + "tt2660118", + "tt1155630", + "tt7398750", + "tt3671086", + "tt4557956", + "tt0870204", + "tt3685328", + "tt2190492", + "tt2651724", + "tt3359650", + "tt7913394", + "tt4986754", + "tt0103204", + "tt4574654", + "tt1785288", + "tt3057428", + "tt0377992", + "tt5244974", + "tt3530896", + "tt0054412", + "tt5212918", + "tt0100867", + "tt7528150", + "tt0096379", + "tt0076659", + "tt0063571", + "tt0053183", + "tt8310062", + "tt8894018", + "tt2118694", + "tt0054416", + "tt0117608", + "tt4415016", + "tt6964844", + "tt7624932", + "tt4430992", + "tt4396042", + "tt0161010", + "tt6823246", + "tt8851630", + "tt6916872", + "tt5495792", + "tt6721358", + "tt0021750", + "tt5659172", + "tt5238370", + "tt3853452", + "tt5097504", + "tt2013299", + "tt3357178", + "tt5937210", + "tt4473370", + "tt1736552", + "tt0067162", + "tt11433098", + "tt10442360", + "tt2952602", + "tt7535580", + "tt0228493", + "tt0441897", + "tt5952306", + "tt8746192", + "tt5368108", + "tt2709740", + "tt5803492", + "tt4254746", + "tt1793281", + "tt4237208", + "tt2304459", + "tt3574616", + "tt1930322", + "tt3856408", + "tt1832354", + "tt0287934", + "tt4767526", + "tt4952982", + "tt4654472", + "tt4620298", + "tt1786551", + "tt10499426", + "tt9182202", + "tt0097778", + "tt2247816", + "tt7989520", + "tt2463524", + "tt3469330", + "tt0460721", + "tt5723720", + "tt3758334", + "tt8501318", + "tt2815138", + "tt3549566", + "tt10756134", + "tt4020048", + "tt5832906", + "tt1217613", + "tt10499260", + "tt7512632", + "tt5742374", + "tt7923350", + "tt3124680", + "tt7973342", + "tt2340426", + "tt1398028", + "tt10402510", + "tt8845046", + "tt11124992", + "tt11390036", + "tt4549224", + "tt9799992", + "tt9018916", + "tt4742274", + "tt8316568", + "tt9597190", + "tt4354756", + "tt10332854", + "tt7827042", + "tt6341066", + "tt6469344", + "tt8778658", + "tt4801232", + "tt6598072", + "tt3991052", + "tt0167360", + "tt5817022", + "tt6145764", + "tt1095442", + "tt4797160", + "tt0081268", + "tt1063336", + "tt1464606", + "tt3800222", + "tt0149215", + "tt5815858", + "tt4058368", + "tt2231138", + "tt3779414", + "tt7253506", + "tt7192766", + "tt1863173", + "tt3722062", + "tt2215489", + "tt3307852", + "tt2081348", + "tt5903926", + "tt6191390", + "tt2927212", + "tt2091288", + "tt6247064", + "tt3188492", + "tt4282872", + "tt6148766", + "tt1511514", + "tt1959347", + "tt6193470", + "tt4614330", + "tt7679532", + "tt3278988", + "tt5028822", + "tt2366596", + "tt5014528", + "tt7450356", + "tt6881740", + "tt8291806", + "tt5009014", + "tt2797352", + "tt0115693", + "tt0312700", + "tt6029106", + "tt3449006", + "tt0356764", + "tt0118691", + "tt2236686", + "tt7116478", + "tt5371408", + "tt5503512", + "tt5820812", + "tt1655461", + "tt3750238", + "tt3583382", + "tt2558996", + "tt1294144", + "tt0110818", + "tt6671850", + "tt3946960", + "tt3865718", + "tt1509125", + "tt5145662", + "tt3171176", + "tt2241471", + "tt5046632", + "tt2375585", + "tt4126694", + "tt0087452", + "tt6504538", + "tt6294226", + "tt3559180", + "tt0077687", + "tt5432114", + "tt6093618", + "tt7315526", + "tt1283906", + "tt0058917", + "tt2942016", + "tt0049035", + "tt4562728", + "tt8299778", + "tt2265431", + "tt9109620", + "tt4197642", + "tt7732122", + "tt4882174", + "tt3799926", + "tt5810368", + "tt2113683", + "tt5575364", + "tt6320482", + "tt6139626", + "tt4060962", + "tt0089994", + "tt3758738", + "tt7717204", + "tt5451640", + "tt5512872", + "tt1467242", + "tt5827360", + "tt6598626", + "tt3919218", + "tt3546114", + "tt2880528", + "tt2966504", + "tt5192674", + "tt1998395", + "tt4116388", + "tt1505136", + "tt2846938", + "tt7125070", + "tt5178362", + "tt7454138", + "tt4963830", + "tt5822648", + "tt2833398", + "tt3262022", + "tt0079472", + "tt0071970", + "tt6619188", + "tt0326664", + "tt4173614", + "tt8063840", + "tt7702854", + "tt8671462", + "tt4501740", + "tt3799232", + "tt5919216", + "tt1322282", + "tt10534256", + "tt0994917", + "tt9617456", + "tt6423012", + "tt3472714", + "tt4286666", + "tt9361322", + "tt0839991", + "tt3568658", + "tt1034447", + "tt0457523", + "tt3118452", + "tt2852500", + "tt1500512", + "tt2290473", + "tt3281502", + "tt0471711", + "tt2091343", + "tt0869019", + "tt3602588", + "tt2783926", + "tt6259380", + "tt0095803", + "tt0058557", + "tt5086198", + "tt3848600", + "tt0473105", + "tt0102757", + "tt4876952", + "tt0238247", + "tt5220430", + "tt4057146", + "tt1031276", + "tt5052524", + "tt0126707", + "tt0211938", + "tt1830848", + "tt0245356", + "tt6552758", + "tt6944936", + "tt3392740", + "tt5460118", + "tt0114324", + "tt0466771", + "tt2432918", + "tt0112499", + "tt7150410", + "tt0101356", + "tt4184878", + "tt6159518", + "tt5491506", + "tt2917484", + "tt4085696", + "tt0086194", + "tt0096259", + "tt7068818", + "tt3722234", + "tt0094871", + "tt5081304", + "tt0305206", + "tt5226512", + "tt2106529", + "tt2337841", + "tt3283864", + "tt4424292", + "tt5599520", + "tt6174392", + "tt1493287", + "tt5544754", + "tt4287234", + "tt4864624", + "tt8106160", + "tt0080863", + "tt3040964", + "tt6173488", + "tt1978587", + "tt4156972", + "tt0311648", + "tt3647784", + "tt3833682", + "tt0093898", + "tt0239949", + "tt2070597", + "tt1249302", + "tt2562726", + "tt0097731", + "tt4610378", + "tt10101774", + "tt9260980", + "tt0117091", + "tt9379030", + "tt0765451", + "tt5239942", + "tt5319656", + "tt6982562", + "tt5009286", + "tt5667516", + "tt10039344", + "tt8750122", + "tt0097756", + "tt1462897", + "tt2395353", + "tt2380942", + "tt2450258", + "tt6261048", + "tt3603758", + "tt0047595", + "tt3958918", + "tt0104377", + "tt7636672", + "tt1212054", + "tt4626564", + "tt7275334", + "tt5759590", + "tt1458902", + "tt0067119", + "tt2223810", + "tt7825558", + "tt10755502", + "tt6046062", + "tt8757908", + "tt8985240", + "tt1023499", + "tt5587198", + "tt8008266", + "tt5886388", + "tt9887580", + "tt2217895", + "tt11272506", + "tt8840400", + "tt11198898", + "tt1746242", + "tt3812692", + "tt7980152", + "tt2527192", + "tt7293422", + "tt10255374", + "tt10687158", + "tt0080556", + "tt5190846", + "tt0065105", + "tt9207616", + "tt9314934", + "tt2805814", + "tt3173618", + "tt0186835", + "tt3917254", + "tt0044716", + "tt1776167", + "tt2289920", + "tt8366502", + "tt0057329", + "tt2035599", + "tt5492608", + "tt1522827", + "tt7606894", + "tt0061447", + "tt1831726", + "tt1673732", + "tt5375258", + "tt6146812", + "tt1891956", + "tt5881892", + "tt8535180", + "tt4956188", + "tt4152374", + "tt1691926", + "tt3758592", + "tt2463712", + "tt5968588", + "tt5812254", + "tt4041916", + "tt5118024", + "tt10305328", + "tt7309060", + "tt1655432", + "tt6351728", + "tt4289186", + "tt10044000", + "tt6507672", + "tt0249478", + "tt4126434", + "tt5540536", + "tt4220166", + "tt1701215", + "tt4484660", + "tt8377070", + "tt1379223", + "tt0107613", + "tt7745984", + "tt7823906", + "tt5128826", + "tt7321274", + "tt8498198", + "tt2345555", + "tt8975028", + "tt2400291", + "tt5723774", + "tt0243462", + "tt4952044", + "tt9526822", + "tt6096166", + "tt0339642", + "tt4185370", + "tt6087426", + "tt3053122", + "tt1764179", + "tt8144778", + "tt2217777", + "tt1995260", + "tt4815862", + "tt0084006", + "tt4738776", + "tt3501590", + "tt0104609", + "tt4900098", + "tt4794754", + "tt3629032", + "tt3362238", + "tt1871329", + "tt7935784", + "tt3391988", + "tt2998406", + "tt3543258", + "tt6032170", + "tt4506728", + "tt6613878", + "tt2338173", + "tt2375093", + "tt10273384", + "tt10407272", + "tt7310440", + "tt6217052", + "tt0230025", + "tt8973954", + "tt2578066", + "tt6695212", + "tt3509702", + "tt0051948", + "tt8593930", + "tt7390646", + "tt3683144", + "tt9341668", + "tt11534742", + "tt0447999", + "tt8760392", + "tt3455326", + "tt8406660", + "tt3534842", + "tt6853910", + "tt1514833", + "tt4532446", + "tt10290998", + "tt0815456", + "tt1327618", + "tt0796206", + "tt2195566", + "tt1894470", + "tt11058740", + "tt0081590", + "tt5328952", + "tt4116488", + "tt3249124", + "tt5485522", + "tt0024803", + "tt2190796", + "tt7902124", + "tt7116182", + "tt0021576", + "tt5332942", + "tt0076207", + "tt8404272", + "tt0022462", + "tt0017825", + "tt10379012", + "tt7776430", + "tt1223930", + "tt6340640", + "tt5057626", + "tt0436231", + "tt4686862", + "tt4236480", + "tt11248800", + "tt8514508", + "tt8075202", + "tt2187071", + "tt5058316", + "tt0106792", + "tt3675748", + "tt7375556", + "tt3090310", + "tt6821870", + "tt1158935", + "tt0084783", + "tt6087562", + "tt2808986", + "tt6444182", + "tt6090764", + "tt0020960", + "tt4012914", + "tt6070832", + "tt5966750", + "tt3006588", + "tt2486862", + "tt4254046", + "tt6588332", + "tt8485548", + "tt1650028", + "tt7299388", + "tt2231251", + "tt1481576", + "tt2008513", + "tt3165828", + "tt1954977", + "tt0212797", + "tt0059205", + "tt1118040", + "tt5108912", + "tt2241116", + "tt1445208", + "tt4022758", + "tt3830302", + "tt1359554", + "tt3300932", + "tt3549636", + "tt0104412", + "tt5968274", + "tt4884914", + "tt0089304", + "tt1664010", + "tt0106400", + "tt1525838", + "tt0118702", + "tt3154310", + "tt6295112", + "tt4392726", + "tt0409043", + "tt6322522", + "tt0415949", + "tt6360810", + "tt0120321", + "tt1104836", + "tt3503460", + "tt5537600", + "tt1577038", + "tt7984826", + "tt6346162", + "tt10772304", + "tt5111874", + "tt1010403", + "tt3666492", + "tt8567168", + "tt3444312", + "tt6284256", + "tt4456850", + "tt1385492", + "tt7638110", + "tt0113133", + "tt7291268", + "tt7535798", + "tt2278392", + "tt6020094", + "tt1783714", + "tt11091878", + "tt4780662", + "tt6923740", + "tt5291862", + "tt6350736", + "tt4590990", + "tt1249443", + "tt0073340", + "tt10578206", + "tt2736858", + "tt5367592", + "tt3226786", + "tt1339111", + "tt5923752", + "tt0381505", + "tt4087816", + "tt0109439", + "tt6408226", + "tt8605562", + "tt0097429", + "tt0020985", + "tt11107012", + "tt6068978", + "tt0841044", + "tt2721624", + "tt4441098", + "tt8236366", + "tt6521876", + "tt3665498", + "tt5030402", + "tt0283952", + "tt2466830", + "tt1620981", + "tt0365265", + "tt2245218", + "tt3394674", + "tt6185266", + "tt3685236", + "tt0435679", + "tt3291632", + "tt8139850", + "tt0318283", + "tt1536053", + "tt6079100", + "tt1480649", + "tt4558040", + "tt3734354", + "tt9278074", + "tt4206228", + "tt3723750", + "tt0257568", + "tt4357394", + "tt0375785", + "tt5304992", + "tt0086490", + "tt0109021", + "tt0800328", + "tt5664502", + "tt0377752", + "tt5194048", + "tt4347994", + "tt0377818", + "tt0091374", + "tt0338077", + "tt9315848", + "tt3021354", + "tt1946421", + "tt2484254", + "tt0406046", + "tt4651666", + "tt0070599", + "tt0085891", + "tt5618160", + "tt5730898", + "tt0110518", + "tt7243750", + "tt2866774", + "tt6285404", + "tt5031658", + "tt3000458", + "tt8331668", + "tt0396032", + "tt0430211", + "tt0289873", + "tt7133352", + "tt1582465", + "tt0386032", + "tt2011311", + "tt8361028", + "tt5167122", + "tt3142366", + "tt5759434", + "tt3367294", + "tt4076926", + "tt0302889", + "tt4540434", + "tt3302820", + "tt7959500", + "tt2292707", + "tt0455326", + "tt5198570", + "tt4006302", + "tt0163375", + "tt6333052", + "tt7933596", + "tt5706370", + "tt7241926", + "tt0340012", + "tt2205401", + "tt0353489", + "tt3780208", + "tt9354944", + "tt7236034", + "tt8769300", + "tt0430308", + "tt2493402", + "tt5040760", + "tt6880996", + "tt5131842", + "tt9612982", + "tt9440874", + "tt4601180", + "tt8353466", + "tt9217660", + "tt9673140", + "tt6920074", + "tt1568150", + "tt1560220", + "tt2908876", + "tt6110504", + "tt2388886", + "tt5645932", + "tt8094320", + "tt1090750", + "tt0116835", + "tt2545440", + "tt0080671", + "tt1323575", + "tt2118623", + "tt3175794", + "tt0177845", + "tt0116550", + "tt3402232", + "tt1777595", + "tt5636430", + "tt0060661", + "tt2251227", + "tt0075200", + "tt5000240", + "tt0100604", + "tt2165743", + "tt2023765", + "tt0117784", + "tt5428666", + "tt0462519", + "tt0056580", + "tt2546764", + "tt5419676", + "tt3087882", + "tt1065291", + "tt5126654", + "tt1833887", + "tt6032090", + "tt5634962", + "tt0120190", + "tt3469918", + "tt5912454", + "tt0340377", + "tt4772856", + "tt7671846", + "tt2427814", + "tt4179950", + "tt7126776", + "tt0422295", + "tt0109962", + "tt6700846", + "tt0279623", + "tt4516352", + "tt7816596", + "tt6001452", + "tt7214762", + "tt4795624", + "tt5390246", + "tt5016974", + "tt7689924", + "tt8083622", + "tt0265632", + "tt6821012", + "tt10091530", + "tt5228304", + "tt0103243", + "tt8041276", + "tt8805604", + "tt2569088", + "tt1213644", + "tt0099800", + "tt0099832", + "tt0096203", + "tt3317234", + "tt0222850", + "tt5278214", + "tt5658242", + "tt2679066", + "tt5322168", + "tt0110989", + "tt2081374", + "tt2755016", + "tt0247568", + "tt3223636", + "tt0494834", + "tt3842614", + "tt6429934", + "tt0419843", + "tt0205461", + "tt0292261", + "tt3392804", + "tt0231775", + "tt5952382", + "tt0113037", + "tt2349296", + "tt4488840", + "tt5161502", + "tt7322864", + "tt7712746", + "tt8803596", + "tt0076172", + "tt6923858", + "tt1976580", + "tt4858362", + "tt1224378", + "tt4946336", + "tt0150377", + "tt9335666", + "tt9391986", + "tt2243900", + "tt6039284", + "tt7262820", + "tt2268622", + "tt0120800", + "tt4412528", + "tt3108244", + "tt0369735", + "tt1320336", + "tt2534642", + "tt0240402", + "tt8074328", + "tt4235130", + "tt5195540", + "tt0337879", + "tt8362516", + "tt8954732", + "tt7348082", + "tt4465614", + "tt11477684", + "tt9033386", + "tt6188658", + "tt3578022", + "tt3593926", + "tt5792656", + "tt5471258", + "tt10922658", + "tt8432890", + "tt6905402", + "tt2496400", + "tt4678184", + "tt7284202", + "tt8026554", + "tt7946216", + "tt5943936", + "tt2404370", + "tt2210983", + "tt4558200", + "tt0068371", + "tt9097546", + "tt9063902", + "tt9308464", + "tt0044515", + "tt4701426", + "tt0067148", + "tt0063172", + "tt0103859", + "tt0070122", + "tt0056142", + "tt0822833", + "tt0102722", + "tt0103128", + "tt0088176", + "tt0091400", + "tt0835349", + "tt0278488", + "tt11378928", + "tt0093744", + "tt2064745", + "tt0144926", + "tt0103275", + "tt0086593", + "tt5775814", + "tt6066280", + "tt9308458", + "tt0402348", + "tt1859476", + "tt6359600", + "tt9308460", + "tt3377456", + "tt4578000", + "tt4030014", + "tt7133170", + "tt7412508", + "tt0073373", + "tt1773041", + "tt0117104", + "tt0117692", + "tt0408196", + "tt1693110", + "tt0081414", + "tt5740806", + "tt2461262", + "tt0433371", + "tt0118663", + "tt5117106", + "tt6485928", + "tt3141568", + "tt9377260", + "tt1536536", + "tt6718858", + "tt3861144", + "tt1001491", + "tt3517870", + "tt0071908", + "tt0315441", + "tt2204371", + "tt0446048", + "tt0101548", + "tt6068554", + "tt3541524", + "tt6071092", + "tt8974964", + "tt0071565", + "tt0091355", + "tt0078930", + "tt11468536", + "tt0032412", + "tt0116264", + "tt0089963", + "tt10397992", + "tt7311770", + "tt7710360", + "tt0104027", + "tt4177670", + "tt8618718", + "tt8408218", + "tt7456468", + "tt5078886", + "tt10821190", + "tt0213203", + "tt0110259", + "tt10922620", + "tt4012932", + "tt0101746", + "tt2238140", + "tt0337876", + "tt4679576", + "tt0282120", + "tt0113748", + "tt7600294", + "tt5130274", + "tt0457477", + "tt1046245", + "tt2290153", + "tt0090799", + "tt0087065", + "tt0347369", + "tt3569326", + "tt4653950", + "tt0138755", + "tt0083852", + "tt0085183", + "tt0087829", + "tt6737518", + "tt1880293", + "tt0349169", + "tt5854198", + "tt0060464", + "tt9534808", + "tt5748918", + "tt0075710", + "tt0808276", + "tt5017324", + "tt2270168", + "tt0039277", + "tt2746538", + "tt0088224", + "tt4250482", + "tt1392982", + "tt0108555", + "tt7624934", + "tt0123950", + "tt0061856", + "tt1188990", + "tt0100247", + "tt4034450", + "tt0107899", + "tt11439610", + "tt0094921", + "tt8890158", + "tt4333578", + "tt0120036", + "tt4399684", + "tt1869309", + "tt7120010", + "tt1464535", + "tt5704704", + "tt0086349", + "tt0084691", + "tt0098678", + "tt2400555", + "tt0093964", + "tt7542576", + "tt6963278", + "tt4457678", + "tt2388856", + "tt6240470", + "tt3581294", + "tt8560754", + "tt0103253", + "tt0120089", + "tt6460276", + "tt7391194", + "tt9590420", + "tt0109990", + "tt9342846", + "tt0134873", + "tt6068746", + "tt2098669", + "tt6998222", + "tt0082969", + "tt0094827", + "tt5813010", + "tt0271200", + "tt5809020", + "tt0286132", + "tt5779862", + "tt000031088", + "tt5108524", + "tt1047610", + "tt7532392", + "tt0100613", + "tt2433126", + "tt3517776", + "tt0286162", + "tt0479468", + "tt3517044", + "tt3149208", + "tt2326818", + "tt0472205", + "tt0181059", + "tt0756703", + "tt4620246", + "tt7156326", + "tt6028604", + "tt5219972", + "tt4061196", + "tt0248803", + "tt7609034", + "tt10662310", + "tt2782604", + "tt2950844", + "tt0897291", + "tt3205304", + "tt0036627", + "tt7549892", + "tt4426738", + "tt1396227", + "tt1648199", + "tt0118894", + "tt5565200", + "tt0087384", + "tt4629636", + "tt2395247", + "tt4612368", + "tt7260048", + "tt3904186", + "tt5615976", + "tt4529638", + "tt3087968", + "tt4010848", + "tt1411276", + "tt0119684", + "tt10433222", + "tt3859320", + "tt2805676", + "tt0250292", + "tt3777912", + "tt2172001", + "tt0093424", + "tt6091332", + "tt5127192", + "tt7385832", + "tt0049777", + "tt0210584", + "tt6752320", + "tt0054944", + "tt1149583", + "tt0107949", + "tt1691152", + "tt0167247", + "tt5926990", + "tt7114588", + "tt6206204", + "tt0960741", + "tt7689958", + "tt0093186", + "tt0081522", + "tt0080062", + "tt8924518", + "tt0081060", + "tt0082507", + "tt4619908", + "tt6045798", + "tt2787002", + "tt1343115", + "tt7319068", + "tt1713501", + "tt7578566", + "tt5379294", + "tt0070195", + "tt7539078", + "tt3534294", + "tt5951832", + "tt6098512", + "tt7453746", + "tt4368814", + "tt7231776", + "tt9510710", + "tt5213744", + "tt0100649", + "tt8113950", + "tt4923200", + "tt6177752", + "tt7007846", + "tt0284066", + "tt4230192", + "tt0279887", + "tt7335938", + "tt5709852", + "tt1600656", + "tt0051198", + "tt4450562", + "tt5665256", + "tt9647980", + "tt2122460", + "tt3405392", + "tt5286156", + "tt2289098", + "tt5770466", + "tt1691154", + "tt0918628", + "tt0415489", + "tt0102403", + "tt0219400", + "tt7984734", + "tt0393081", + "tt8043038", + "tt0255851", + "tt0362129", + "tt4289062", + "tt0067140", + "tt0092079", + "tt0083365", + "tt1645141", + "tt3867836", + "tt5312612", + "tt0097166", + "tt0115836", + "tt0396873", + "tt0096166", + "tt7390588", + "tt7942736", + "tt2592126", + "tt6469498", + "tt5782160", + "tt1034405", + "tt0084786", + "tt0102573", + "tt0095145", + "tt0103007", + "tt2399406", + "tt4700872", + "tt6264486", + "tt4417768", + "tt1024770", + "tt7655524", + "tt0112692", + "tt0433883", + "tt7134870", + "tt9083724", + "tt8106534", + "tt5588786", + "tt0468580", + "tt1681370", + "tt7851798", + "tt4544696", + "tt4633340", + "tt0111787", + "tt1302576", + "tt6753972", + "tt2070874", + "tt1150947", + "tt5452814", + "tt5354458", + "tt4159698", + "tt1942900", + "tt0085287", + "tt0254703", + "tt1884378", + "tt3918794", + "tt8844888", + "tt7626042", + "tt1597028", + "tt6793524", + "tt2428726", + "tt7746762", + "tt6796028", + "tt0118539", + "tt3382888", + "tt8294204", + "tt5781222", + "tt3552568", + "tt5515374", + "tt5872888", + "tt2877192", + "tt5777708", + "tt0267248", + "tt3004634", + "tt0080139", + "tt5974780", + "tt7290688", + "tt11451280", + "tt11451340", + "tt6012446", + "tt2657058", + "tt7529360", + "tt0095428", + "tt4791780", + "tt6865630", + "tt3091148", + "tt10472008", + "tt6264508", + "tt3127402", + "tt0224816", + "tt6409762", + "tt0181804", + "tt0095736", + "tt8749622", + "tt6458952", + "tt3463848", + "tt0430650", + "tt5928818", + "tt5152460", + "tt5866442", + "tt3026124", + "tt5824910", + "tt7521040", + "tt1597178", + "tt7798844", + "tt0270197", + "tt0328077", + "tt3951206", + "tt6368324", + "tt6490538", + "tt0318181", + "tt1844728", + "tt3823690", + "tt6084676", + "tt9177040", + "tt0242545", + "tt6794374", + "tt2825596", + "tt7759300", + "tt7200076", + "tt9272568", + "tt3096782", + "tt8144850", + "tt1411236", + "tt10622790", + "tt0028299", + "tt8856090", + "tt6316466", + "tt0057879", + "tt8287690", + "tt7877982", + "tt7260818", + "tt0063576", + "tt0049800", + "tt0312841", + "tt2117944", + "tt4323572", + "tt0273923", + "tt0097922", + "tt0074083", + "tt0223897", + "tt2302925", + "tt5709762", + "tt0064217", + "tt3647804", + "tt0098308", + "tt7689960", + "tt0489085", + "tt0235327", + "tt1725885", + "tt4770142", + "tt6756326", + "tt4195336", + "tt2294619", + "tt3507138", + "tt0110656", + "tt3567200", + "tt1401692", + "tt7813060", + "tt1062161", + "tt0117688", + "tt3954288", + "tt5881970", + "tt3597400", + "tt4790076", + "tt0395443", + "tt5176442", + "tt7954694", + "tt0082121", + "tt7897102", + "tt0271461", + "tt7685926", + "tt7233828", + "tt2530316", + "tt6943908", + "tt0073051", + "tt1275786", + "tt5987042", + "tt2928904", + "tt5420406", + "tt0094012", + "tt6582784", + "tt5706420", + "tt6423886", + "tt5883020", + "tt2071648", + "tt0114805", + "tt5607810", + "tt7246942", + "tt1833116", + "tt2352722", + "tt2142027", + "tt1560479", + "tt5703622", + "tt4214024", + "tt0035884", + "tt7666250", + "tt0216651", + "tt6871186", + "tt0055106", + "tt0096472", + "tt0085642", + "tt3245334", + "tt0099902", + "tt0075174", + "tt0122685", + "tt2727322", + "tt1042916", + "tt0055505", + "tt5214690", + "tt9081572", + "tt11100776", + "tt6105880", + "tt3855730", + "tt2921178", + "tt5457222", + "tt5227020", + "tt0790751", + "tt0101984", + "tt3955808", + "tt0339236", + "tt0159401", + "tt8301054", + "tt5431946", + "tt6536668", + "tt7321860", + "tt0356443", + "tt1375790", + "tt5895374", + "tt4675370", + "tt0051174", + "tt1277731", + "tt3324852", + "tt8537692", + "tt7369722", + "tt0110538", + "tt8041916", + "tt2004304", + "tt0097423", + "tt5360018", + "tt2327243", + "tt3776288", + "tt0117776", + "tt6648468", + "tt0298798", + "tt3891538", + "tt2317090", + "tt0120722", + "tt0345074", + "tt6572694", + "tt4698792", + "tt6857374", + "tt7231572", + "tt5752904", + "tt0099904", + "tt9165636", + "tt1737674", + "tt7973916", + "tt4851360", + "tt7365178", + "tt4067106", + "tt5997358", + "tt8551054", + "tt4866768", + "tt7328154", + "tt0234767", + "tt6009582", + "tt0295252", + "tt4881172", + "tt2797190", + "tt0477404", + "tt6342440", + "tt4510218", + "tt0303068", + "tt0344485", + "tt1965262", + "tt5807398", + "tt6038168", + "tt5606268", + "tt0296492", + "tt0274471", + "tt0119779", + "tt1293743", + "tt1922551", + "tt0468526", + "tt4196616", + "tt5741008", + "tt0060437", + "tt0079758", + "tt0146336", + "tt0046951", + "tt0326828", + "tt0252503", + "tt0059909", + "tt2186929", + "tt0088757", + "tt1213663", + "tt5776448", + "tt0086896", + "tt0094656", + "tt5056698", + "tt0765429", + "tt0115875", + "tt0067656", + "tt2123174", + "tt1675439", + "tt4277308", + "tt3272572", + "tt0274321", + "tt1239378", + "tt0876137", + "tt7520980", + "tt5798432", + "tt0162735", + "tt7768846", + "tt5985260", + "tt0099826", + "tt3526542", + "tt4817008", + "tt3358832", + "tt5331084", + "tt2430104", + "tt1104835", + "tt7335732", + "tt6111250", + "tt1524083", + "tt0024617", + "tt0765460", + "tt4538294", + "tt1998179", + "tt8977440", + "tt0960730", + "tt1735181", + "tt1083992", + "tt5212488", + "tt3027994", + "tt0067484", + "tt0097053", + "tt5639898", + "tt0074251", + "tt0271219", + "tt0077350", + "tt4192896", + "tt9178814", + "tt1727381", + "tt10486170", + "tt6560154", + "tt10260534", + "tt0469519", + "tt8888892", + "tt0090570", + "tt1566591", + "tt0120317", + "tt5078220", + "tt0358203", + "tt7625712", + "tt0465616", + "tt3505812", + "tt5673828", + "tt1977739", + "tt0114733", + "tt6086498", + "tt10060386", + "tt2831568", + "tt0183808", + "tt0463953", + "tt1315350", + "tt7429362", + "tt6032718", + "tt4443922", + "tt2620290", + "tt0250081", + "tt2923834", + "tt3458510", + "tt5005462", + "tt0122515", + "tt1646981", + "tt0109920", + "tt3804556", + "tt3330948", + "tt4191054", + "tt6672082", + "tt4943218", + "tt4470288", + "tt0082810", + "tt0878695", + "tt0102220", + "tt0106233", + "tt9154776", + "tt5972196", + "tt5936492", + "tt0401815", + "tt1067765", + "tt6509058", + "tt0107630", + "tt3113386", + "tt2213322", + "tt0796314", + "tt0156639", + "tt9153044", + "tt2965384", + "tt3148856", + "tt5739900", + "tt0118942", + "tt0070557", + "tt6236762", + "tt5033114", + "tt5909334", + "tt0073460", + "tt5257726", + "tt8554826", + "tt0243664", + "tt3044748", + "tt8941056", + "tt1421373", + "tt0326806", + "tt7291132", + "tt0087507", + "tt0090683", + "tt3653132", + "tt0458480", + "tt1156396", + "tt1182887", + "tt7558548", + "tt2508258", + "tt2042449", + "tt2489736", + "tt5990458", + "tt0902952", + "tt9309046", + "tt8742774", + "tt5580602", + "tt4466894", + "tt4106148", + "tt0183288", + "tt4499228", + "tt7094374", + "tt7509538", + "tt0110146", + "tt0104690", + "tt10551160", + "tt0087681", + "tt8517004", + "tt0251021", + "tt2146834", + "tt1729226", + "tt0476396", + "tt0095316", + "tt1320242", + "tt1087798", + "tt1810636", + "tt0128473", + "tt8018008", + "tt3165264", + "tt5322136", + "tt2994382", + "tt5932502", + "tt6594148", + "tt2395219", + "tt8667202", + "tt0119679", + "tt4836580", + "tt6355580", + "tt0104346", + "tt8322908", + "tt4760268", + "tt5301544", + "tt0111470", + "tt3256812", + "tt6264244", + "tt7630164", + "tt4948040", + "tt2246887", + "tt0210094", + "tt4807272", + "tt10249374", + "tt1737794", + "tt1294789", + "tt4218998", + "tt0219126", + "tt0026778", + "tt2084953", + "tt8659750", + "tt2387416", + "tt8829872", + "tt4789822", + "tt5547654", + "tt0307639", + "tt3406296", + "tt3295276", + "tt0059549", + "tt5769006", + "tt11133600", + "tt2433448", + "tt1977892", + "tt1225856", + "tt6303962", + "tt4878482", + "tt0469937", + "tt6491296", + "tt2796792", + "tt5612874", + "tt11247028", + "tt5184272", + "tt7521324", + "tt0236034", + "tt9079304", + "tt0359423", + "tt1564005", + "tt3233704", + "tt4534886", + "tt8749132", + "tt3009530", + "tt2178927", + "tt0069280", + "tt1146321", + "tt0108186", + "tt0096483", + "tt1405412", + "tt2246565", + "tt5844340", + "tt0083598", + "tt1226276", + "tt0093164", + "tt1249169", + "tt2189778", + "tt0090946", + "tt9143304", + "tt5643730", + "tt6359082", + "tt8451938", + "tt0840787", + "tt1599315", + "tt7482508", + "tt0091756", + "tt7900528", + "tt0322422", + "tt7202354", + "tt5840030", + "tt6690910", + "tt0451176", + "tt4698740", + "tt1213825", + "tt5270688", + "tt10466182", + "tt6176928", + "tt1745932", + "tt0857207", + "tt3856504", + "tt6544524", + "tt5922124", + "tt4939156", + "tt7689950", + "tt7657428", + "tt2512528", + "tt4067256", + "tt4765862", + "tt7214842", + "tt0103670", + "tt0086355", + "tt5586362", + "tt1670269", + "tt0111732", + "tt0087268", + "tt1237838", + "tt2125647", + "tt2102508", + "tt5781146", + "tt6543420", + "tt0105001", + "tt0086955", + "tt0109447", + "tt5891260", + "tt0906005", + "tt9290234", + "tt7394816", + "tt3859872", + "tt9404440", + "tt0844768", + "tt6032704", + "tt8638750", + "tt0814130", + "tt3784042", + "tt11385066", + "tt5885106", + "tt0844029", + "tt0082263", + "tt1176095", + "tt4414438", + "tt6566830", + "tt2402114", + "tt5318534", + "tt7232438", + "tt1474456", + "tt2181898", + "tt2180351", + "tt10003978", + "tt5645196", + "tt4526546", + "tt2729236", + "tt6450628", + "tt4130484", + "tt6864090", + "tt2948566", + "tt8187918", + "tt5176878", + "tt4528692", + "tt0161100", + "tt3431016", + "tt4016226", + "tt0384686", + "tt3441700", + "tt5556152", + "tt7052244", + "tt3958964", + "tt2117946", + "tt2788512", + "tt2620792", + "tt5232294", + "tt0804558", + "tt2254010", + "tt0111361", + "tt7149336", + "tt2479384", + "tt7303948", + "tt5814958", + "tt0443450", + "tt0063341", + "tt3833400", + "tt0068200", + "tt6560164", + "tt0378230", + "tt8415352", + "tt10108544", + "tt4079776", + "tt5864904", + "tt8365426", + "tt1974366", + "tt1024724", + "tt0262396", + "tt3317696", + "tt1774591", + "tt3639656", + "tt1698654", + "tt0837803", + "tt2094155", + "tt0235553", + "tt4667854", + "tt4708052", + "tt0822818", + "tt8027322", + "tt1568923", + "tt3007302", + "tt4400028", + "tt6633182", + "tt10977680", + "tt5331878", + "tt6869644", + "tt4512714", + "tt3244466", + "tt6295122", + "tt4622202", + "tt4840666", + "tt7188978", + "tt0119644", + "tt0105670", + "tt0038703", + "tt0038650", + "tt0082601", + "tt0033627", + "tt0088249", + "tt6827388", + "tt0101606", + "tt3798866", + "tt0055008", + "tt3412738", + "tt0069840", + "tt6853580", + "tt3762912", + "tt0157075", + "tt3922474", + "tt0083061", + "tt2407730", + "tt2559214", + "tt0089945", + "tt5557976", + "tt1787660", + "tt1233571", + "tt0116493", + "tt4729790", + "tt4081012", + "tt7307136", + "tt3255590", + "tt1209377", + "tt5065142", + "tt1733733", + "tt1639086", + "tt5563862", + "tt3625516", + "tt6175486", + "tt3882054", + "tt1939686", + "tt4194108", + "tt0267989", + "tt3194678", + "tt5114154", + "tt0182000", + "tt6736782", + "tt0373908", + "tt0113596", + "tt6974888", + "tt1931486", + "tt3462880", + "tt4169390", + "tt3780754", + "tt0461660", + "tt6196936", + "tt11318624", + "tt3387444", + "tt1422189", + "tt7208564", + "tt8970448", + "tt7612748", + "tt5022626", + "tt3797808", + "tt0377800", + "tt8276562", + "tt4209174", + "tt2039412", + "tt7296862", + "tt6086080", + "tt5431890", + "tt2638900", + "tt4117538", + "tt0349416", + "tt0446676", + "tt7562932", + "tt7115980", + "tt1615110", + "tt3774866", + "tt4333210", + "tt4338076", + "tt5657712", + "tt2690226", + "tt6612098", + "tt5579442", + "tt3468316", + "tt4587588", + "tt5011848", + "tt0113158", + "tt4369136", + "tt0119509", + "tt6465940", + "tt2388986", + "tt5441464", + "tt3093286", + "tt0780059", + "tt3754662", + "tt8467788", + "tt0345543", + "tt5817456", + "tt4454078", + "tt5453522", + "tt3127016", + "tt0084654", + "tt5424228", + "tt0054709", + "tt0074888", + "tt0029557", + "tt0093393", + "tt0029453", + "tt0058578", + "tt0021818", + "tt0052016", + "tt0018379", + "tt0066356", + "tt0049189", + "tt0042579", + "tt0335121", + "tt0473434", + "tt2147134", + "tt0283832", + "tt0021654", + "tt0074121", + "tt0075610", + "tt0164312", + "tt0101254", + "tt10011252", + "tt7365040", + "tt6328242", + "tt0179183", + "tt1517805", + "tt0088650", + "tt0043687", + "tt3989744", + "tt0291350", + "tt8629434", + "tt0082639", + "tt5893332", + "tt3458118", + "tt9026184", + "tt9495224", + "tt8142044", + "tt0072201", + "tt4765240", + "tt7256866", + "tt6386352", + "tt1542768", + "tt6289320", + "tt7235038", + "tt7605074", + "tt8479346", + "tt4789192", + "tt2234451", + "tt5232468", + "tt3564858", + "tt2845780", + "tt2838568", + "tt2479478", + "tt2962984", + "tt4606498", + "tt3418064", + "tt3562852", + "tt5278460", + "tt3171832", + "tt4303202", + "tt7608028", + "tt5566790", + "tt1159984", + "tt7608534", + "tt4758646", + "tt3212830", + "tt7257508", + "tt10432050", + "tt3151710", + "tt6412452", + "tt5717492", + "tt2287655", + "tt4537842", + "tt0837156", + "tt0250371", + "tt8709036", + "tt5539052", + "tt3155328", + "tt4827878", + "tt3163238", + "tt5040202", + "tt5732566", + "tt5928396", + "tt5664222", + "tt3475540", + "tt9204352", + "tt4357764", + "tt0853153", + "tt6774914", + "tt10449248", + "tt3839992", + "tt10427010", + "tt7278178", + "tt5750534", + "tt8792630", + "tt7937440", + "tt4058426", + "tt9586294", + "tt7477310", + "tt4632440", + "tt0083271", + "tt0171786", + "tt10295602", + "tt0088083", + "tt0090246", + "tt0171800", + "tt0171789", + "tt5991974", + "tt3398066", + "tt7122516", + "tt1561770", + "tt9165122", + "tt0123927", + "tt3793788", + "tt3530690", + "tt6119856", + "tt0085547", + "tt1135092", + "tt0851530", + "tt4737910", + "tt4329810", + "tt3268340", + "tt0114380", + "tt2214596", + "tt2931072", + "tt0429173", + "tt0486665", + "tt6953974", + "tt4680568", + "tt2201034", + "tt2927178", + "tt0377043", + "tt1638308", + "tt0087089", + "tt4206218", + "tt0758751", + "tt3184212", + "tt7253190", + "tt0428038", + "tt0871867", + "tt0102217", + "tt4871018", + "tt0107688", + "tt0089444", + "tt0119640", + "tt7375304", + "tt7021508", + "tt0902328", + "tt3962828", + "tt8210516", + "tt3342332", + "tt4792648", + "tt5240258", + "tt5710042", + "tt4085044", + "tt5052966", + "tt3591988", + "tt4149732", + "tt4378628", + "tt0980970", + "tt3852028", + "tt3090670", + "tt7286456", + "tt0363771", + "tt2278911", + "tt4224754", + "tt0499448", + "tt0457701", + "tt0114210", + "tt0372784", + "tt2049630", + "tt0120812", + "tt5653514", + "tt8593878", + "tt0052226", + "tt0403537", + "tt2415112", + "tt6169934", + "tt0293564", + "tt0468569", + "tt6127004", + "tt1345836", + "tt0311750", + "tt0103776", + "tt0045989", + "tt0266915", + "tt3036654", + "tt0112462", + "tt7897122", + "tt0113014", + "tt5017220", + "tt0432267", + "tt0361411", + "tt0118688", + "tt4666732", + "tt0096895", + "tt2975590", + "tt0060153", + "tt0463931", + "tt4185152", + "tt3593666", + "tt1046894", + "tt0345461", + "tt0241527", + "tt1393000", + "tt4016588", + "tt0304141", + "tt5612742", + "tt0417741", + "tt0926084", + "tt3517984", + "tt0373889", + "tt8196692", + "tt1201607", + "tt0295297", + "tt0330373", + "tt6140580", + "tt0103827", + "tt0446724", + "tt1523987", + "tt8552226", + "tt3826338", + "tt4765188", + "tt5990444", + "tt3060390", + "tt3441840", + "tt0822849", + "tt0325055", + "tt6212496", + "tt3877092", + "tt0179473", + "tt7457716", + "tt2712758", + "tt2190467", + "tt7690016", + "tt1145144", + "tt0280674", + "tt4269118", + "tt5588416", + "tt3290440", + "tt0112255", + "tt3731580", + "tt5280684", + "tt2533492", + "tt1517249", + "tt0387059", + "tt4658578", + "tt1872082", + "tt1718998", + "tt0262911", + "tt0457090", + "tt4520924", + "tt3563342", + "tt3026144", + "tt4154004", + "tt4417186", + "tt0449581", + "tt7737656", + "tt3756722", + "tt3745906", + "tt4076344", + "tt0491005", + "tt3683072", + "tt2018111", + "tt3834272", + "tt3696358", + "tt8358682", + "tt3074578", + "tt0061080", + "tt0117786", + "tt3824458", + "tt2709692", + "tt10642244", + "tt0338348", + "tt0128853", + "tt10481792", + "tt0762121", + "tt0086005", + "tt1401143", + "tt0058536", + "tt0098115", + "tt0032981", + "tt1711525", + "tt0240890", + "tt0218967", + "tt0110367", + "tt0155753", + "tt0252028", + "tt0099487", + "tt2402927", + "tt0433400", + "tt0037059", + "tt0059026", + "tt1430607", + "tt0116705", + "tt0085334", + "tt0039628", + "tt0034862", + "tt0102493", + "tt5816652", + "tt2120750", + "tt0060345", + "tt8404614", + "tt0337824", + "tt7014694", + "tt0170016", + "tt3521746", + "tt5237552", + "tt5210380", + "tt8367184", + "tt3690174", + "tt4273188", + "tt4882548", + "tt1772373", + "tt5861882", + "tt5806506", + "tt0369053", + "tt7084614", + "tt5162458", + "tt0089410", + "tt5818010", + "tt3901944", + "tt2649680", + "tt10515852", + "tt6674318", + "tt0120257", + "tt11394172", + "tt5815160", + "tt2330654", + "tt7315570", + "tt0114924", + "tt0086465", + "tt5576318", + "tt0110955", + "tt7758866", + "tt0117372", + "tt0047673", + "tt6225520", + "tt3530002", + "tt0373469", + "tt0143338", + "tt2083355", + "tt0039190", + "tt0085936", + "tt2990140", + "tt4443658", + "tt0056211", + "tt0096061", + "tt0032049", + "tt0037795", + "tt0033728", + "tt4616802", + "tt0033397", + "tt0063500", + "tt0033879", + "tt5740852", + "tt3333920", + "tt0113537", + "tt0104714", + "tt0070424", + "tt2308733", + "tt0878647", + "tt0112864", + "tt0122151", + "tt3385398", + "tt0172726", + "tt4560926", + "tt8480782", + "tt6209282", + "tt0099423", + "tt1621427", + "tt1293842", + "tt0337978", + "tt0097733", + "tt0095016", + "tt0093409", + "tt5667052", + "tt8237340", + "tt0087363", + "tt2174896", + "tt10720568", + "tt0329200", + "tt1606378", + "tt2205652", + "tt5559544", + "tt0099700", + "tt0104431", + "tt0113421", + "tt6888938", + "tt0044008", + "tt0314331", + "tt0099785", + "tt3850590", + "tt2117905", + "tt4514660", + "tt0037595", + "tt4902716", + "tt1798603", + "tt0307987", + "tt0120670", + "tt4730006", + "tt0319343", + "tt0064349", + "tt5001426", + "tt5848862", + "tt0071222", + "tt0097958", + "tt1268799", + "tt5846744", + "tt5654600", + "tt0840304", + "tt11324024", + "tt0112606", + "tt5460068", + "tt3175798", + "tt2226309", + "tt5668054", + "tt5050200", + "tt6275674", + "tt5126178", + "tt7281472", + "tt5125620", + "tt7130192", + "tt5347148", + "tt5782040", + "tt1974382", + "tt4344742", + "tt4473806", + "tt10871460", + "tt0102917", + "tt3856972", + "tt1479676", + "tt0073626", + "tt0167107", + "tt7025976", + "tt0059274", + "tt0165854", + "tt10060094", + "tt3433160", + "tt0910847", + "tt6185026", + "tt3464378", + "tt2923780", + "tt6086614", + "tt3831636", + "tt4170186", + "tt2667960", + "tt2855724", + "tt0363504", + "tt1535491", + "tt0419922", + "tt0108311", + "tt0459250", + "tt5537330", + "tt6877088", + "tt7763400", + "tt8998634", + "tt2669212", + "tt6508326", + "tt7588688", + "tt0900916", + "tt9103332", + "tt3159818", + "tt5955112", + "tt6205690", + "tt0093143", + "tt3353060", + "tt0099030", + "tt5610134", + "tt7203520", + "tt4607722", + "tt4835940", + "tt8149090", + "tt3596436", + "tt7281538", + "tt3683386", + "tt8613908", + "tt5242920", + "tt0030442", + "tt7085724", + "tt9674000", + "tt7819506", + "tt1194661", + "tt0094744", + "tt4157728", + "tt0300195", + "tt8327628", + "tt3984432", + "tt3848072", + "tt1626240", + "tt2181853", + "tt2328727", + "tt8850510", + "tt8535852", + "tt10130010", + "tt7642718", + "tt0377057", + "tt8672786", + "tt0120376", + "tt6306564", + "tt0086879", + "tt7709254", + "tt8879926", + "tt1067769", + "tt3646836", + "tt0243925", + "tt0436855", + "tt2289406", + "tt0099472", + "tt0360940", + "tt9271194", + "tt7149254", + "tt11044122", + "tt4360924", + "tt5303442", + "tt9359428", + "tt5360150", + "tt2673388", + "tt7282278", + "tt1043748", + "tt0280870", + "tt5113384", + "tt0206113", + "tt6098486", + "tt1205608", + "tt4592572", + "tt0330768", + "tt2516304", + "tt8178396", + "tt0160236", + "tt6504868", + "tt0896522", + "tt4382376", + "tt9638582", + "tt7022034", + "tt7302488", + "tt6283780", + "tt6557356", + "tt5176536", + "tt3520216", + "tt6567012", + "tt2227004", + "tt4520518", + "tt4587000", + "tt0913413", + "tt3522530", + "tt5692786", + "tt5674368", + "tt0382048", + "tt8050598", + "tt0823195", + "tt3895838", + "tt0172586", + "tt0096376", + "tt7088028", + "tt0106967", + "tt2315806", + "tt4841688", + "tt6236198", + "tt0053454", + "tt9265856", + "tt10986394", + "tt8493776", + "tt4682804", + "tt9149946", + "tt0099934", + "tt6236662", + "tt0041983", + "tt5244588", + "tt4660172", + "tt1626811", + "tt10308474", + "tt0068983", + "tt3548962", + "tt2071526", + "tt0117040", + "tt1003116", + "tt7473716", + "tt0056639", + "tt7549996", + "tt0098019", + "tt1957886", + "tt0102068", + "tt0086428", + "tt0498536", + "tt0799987", + "tt0118788", + "tt0070788", + "tt5442626", + "tt3611124", + "tt3724490", + "tt0065069", + "tt10260810", + "tt3954646", + "tt0383534", + "tt11402600", + "tt3611122", + "tt6339042", + "tt4041476", + "tt5944496", + "tt11197082", + "tt4267108", + "tt4246856", + "tt3583430", + "tt3735810", + "tt0216746", + "tt1133559", + "tt10267396", + "tt4096990", + "tt4723246", + "tt0050841", + "tt4526372", + "tt1421048", + "tt0114786", + "tt4877606", + "tt1176725", + "tt3498956", + "tt10621180", + "tt0105789", + "tt5351000", + "tt1235170", + "tt2475914", + "tt3894958", + "tt1298530", + "tt1621432", + "tt3827540", + "tt4943236", + "tt2458010", + "tt5467554", + "tt4286760", + "tt5069136", + "tt11269704", + "tt7557536", + "tt4137596", + "tt2108593", + "tt0028313", + "tt4065414", + "tt4109632", + "tt0058544", + "tt9815714", + "tt3522138", + "tt3118958", + "tt0058379", + "tt0080983", + "tt7370570", + "tt3509978", + "tt11416686", + "tt0059346", + "tt1467265", + "tt8456396", + "tt2712990", + "tt4567320", + "tt7042800", + "tt0201716", + "tt5775370", + "tt8125466", + "tt7104578", + "tt6098544", + "tt7064954", + "tt3482062", + "tt9412268", + "tt6685776", + "tt6950250", + "tt4757648", + "tt0042949", + "tt7657462", + "tt6868216", + "tt3122608", + "tt7722000", + "tt1396219", + "tt3525346", + "tt7390126", + "tt2644902", + "tt6265620", + "tt0880648", + "tt6973360", + "tt8929142", + "tt3963304", + "tt4289340", + "tt2756910", + "tt4325400", + "tt3067222", + "tt8974850", + "tt5701718", + "tt5969358", + "tt7603290", + "tt3120054", + "tt0164444", + "tt4945490", + "tt0062936", + "tt8732914", + "tt0787470", + "tt8332808", + "tt7468604", + "tt10963986", + "tt1047832", + "tt4712618", + "tt10642154", + "tt8354006", + "tt8498184", + "tt0091002", + "tt0381707", + "tt10345008", + "tt10964168", + "tt0164522", + "tt10471748", + "tt0059418", + "tt5428090", + "tt9087578", + "tt10136898", + "tt0118159", + "tt3908598", + "tt0046031", + "tt2750288", + "tt3177264", + "tt0201196", + "tt6997574", + "tt10921256", + "tt0182295", + "tt5606616", + "tt4935480", + "tt10768278", + "tt3611052", + "tt4045146", + "tt10295168", + "tt0896040", + "tt10482348", + "tt4045732", + "tt0448114", + "tt1776238", + "tt0926110", + "tt2390032", + "tt5023566", + "tt3412784", + "tt1942920", + "tt10887870", + "tt3147284", + "tt10210182", + "tt3908634", + "tt6333054", + "tt1277733", + "tt3253232", + "tt0111359", + "tt5974066", + "tt2123342", + "tt3827868", + "tt3518702", + "tt3953186", + "tt3719320", + "tt6893836", + "tt2314374", + "tt7263664", + "tt5249098", + "tt3555514", + "tt3704416", + "tt6341668", + "tt0314166", + "tt3839880", + "tt3272050", + "tt6196754", + "tt5477566", + "tt9562694", + "tt2854394", + "tt8050266", + "tt3951298", + "tt0218616", + "tt5481010", + "tt6187620", + "tt5255882", + "tt4991112", + "tt10583460", + "tt7135152", + "tt3854262", + "tt10341248", + "tt2378100", + "tt9201720", + "tt3064532", + "tt5365066", + "tt4469518", + "tt4490824", + "tt4280818", + "tt7136736", + "tt2070773", + "tt6231784", + "tt0082362", + "tt0210544", + "tt3168760", + "tt0473389", + "tt6374204", + "tt0087810", + "tt3723788", + "tt6388206", + "tt7441032", + "tt3717016", + "tt1380279", + "tt0035173", + "tt4798956", + "tt5591822", + "tt0044762", + "tt5355726", + "tt1584733", + "tt5176390", + "tt0038694", + "tt0298354", + "tt1827578", + "tt1244666", + "tt3661104", + "tt7323598", + "tt3122390", + "tt7588584", + "tt0161220", + "tt5131914", + "tt7917484", + "tt4082644", + "tt6878820", + "tt0090057", + "tt4180286", + "tt3486210", + "tt0870089", + "tt2636488", + "tt6221540", + "tt6415248", + "tt3529656", + "tt0045469", + "tt0047794", + "tt0042179", + "tt5737408", + "tt5343532", + "tt0039998", + "tt0076354", + "tt0072725", + "tt0343449", + "tt2257284", + "tt5349016", + "tt0109402", + "tt0110157", + "tt0037939", + "tt0113609", + "tt4276834", + "tt8796786", + "tt3915160", + "tt5981802", + "tt1069226", + "tt5884280", + "tt7116248", + "tt3068466", + "tt0092963", + "tt0039037", + "tt7551962", + "tt4278806", + "tt6378710", + "tt6185074", + "tt8295976", + "tt6026014", + "tt4628812", + "tt2334090", + "tt8195518", + "tt10655906", + "tt9275046", + "tt0054013", + "tt8784388", + "tt6478538", + "tt8997134", + "tt3991066", + "tt9815596", + "tt8722440", + "tt11225428", + "tt7913934", + "tt2329032", + "tt0441645", + "tt5533308", + "tt8883498", + "tt0047685", + "tt0120169", + "tt3804730", + "tt3850496", + "tt9765144", + "tt0061655", + "tt0282593", + "tt0840303", + "tt3951252", + "tt4103470", + "tt5093668", + "tt3068192", + "tt0309372", + "tt5691854", + "tt6217664", + "tt2394063", + "tt3130594", + "tt7997256", + "tt1852947", + "tt1335977", + "tt7974234", + "tt1695994", + "tt6981634", + "tt6286216", + "tt3063470", + "tt0428541", + "tt4146410", + "tt10550884", + "tt1350484", + "tt1371160", + "tt0018756", + "tt0116041", + "tt3457508", + "tt3769038", + "tt3702704", + "tt0018876", + "tt8848462", + "tt0068311", + "tt0022395", + "tt0018328", + "tt0020142", + "tt8451018", + "tt0217126", + "tt9135318", + "tt9288486", + "tt0035252", + "tt7831530", + "tt10887880", + "tt8717018", + "tt6897772", + "tt0275277", + "tt11313076", + "tt10873852", + "tt6098794", + "tt8846262", + "tt6179604", + "tt4135326", + "tt9184150", + "tt0087903", + "tt1677082", + "tt6333080", + "tt0457290", + "tt6008686", + "tt3015110", + "tt2654360", + "tt3332282", + "tt6250792", + "tt5796838", + "tt1217590", + "tt4670016", + "tt0775488", + "tt1861439", + "tt6342110", + "tt7316576", + "tt5858580", + "tt0238137", + "tt7158814", + "tt3105662", + "tt9055114", + "tt5170360", + "tt4312842", + "tt0329374", + "tt3818286", + "tt1473345", + "tt1330015", + "tt5243424", + "tt7598968", + "tt8677112", + "tt1927093", + "tt0934981", + "tt0385013", + "tt03395648", + "tt1967688", + "tt5802404", + "tt4956376", + "tt0267657", + "tt8485364", + "tt9537428", + "tt8186318", + "tt0127069", + "tt1407927", + "tt2017733", + "tt3314584", + "tt6396104", + "tt0271285", + "tt3464290", + "tt11334312", + "tt1815899", + "tt0211320", + "tt10332890", + "tt8618412", + "tt9153006", + "tt6692926", + "tt5020188", + "tt2363109", + "tt1588291", + "tt0495682", + "tt1570964", + "tt6170432", + "tt5478446", + "tt3593978", + "tt0100944", + "tt1105740", + "tt7420342", + "tt0105401", + "tt0037771", + "tt4295602", + "tt4052400", + "tt0036953", + "tt4160176", + "tt1954843", + "tt1791681", + "tt1625340", + "tt0464061", + "tt4045384", + "tt6881910", + "tt1787778", + "tt0402230", + "tt5665452", + "tt7093470", + "tt3097956", + "tt2282662", + "tt4580550", + "tt2314886", + "tt4779884", + "tt3977462", + "tt4785640", + "tt6587078", + "tt1821426", + "tt6803170", + "tt6664700", + "tt3852436", + "tt2602338", + "tt3604156", + "tt0178050", + "tt4654016", + "tt1595842", + "tt0284490", + "tt0196106", + "tt2924352", + "tt0222167", + "tt2393805", + "tt1844763", + "tt3891436", + "tt7628146", + "tt0269483", + "tt4941354", + "tt4848010", + "tt6747818", + "tt5922484", + "tt0441881", + "tt3899070", + "tt6984460", + "tt2337280", + "tt6744422", + "tt0120669", + "tt0785032", + "tt6153538", + "tt6385910", + "tt0084370", + "tt0089756", + "tt9617716", + "tt0093509", + "tt0068595", + "tt0085371", + "tt10149506", + "tt8932254", + "tt3100678", + "tt11193888", + "tt4978100", + "tt7423486", + "tt9252508", + "tt2935510", + "tt0032338", + "tt10006006", + "tt4025798", + "tt7689966", + "tt0365229", + "tt1311076", + "tt0963207", + "tt0318761", + "tt0481513", + "tt1835977", + "tt3302160", + "tt1390398", + "tt5278462", + "tt9296692", + "tt8897988", + "tt6958014", + "tt4851758", + "tt4839476", + "tt0322389", + "tt0463935", + "tt4380748", + "tt0365545", + "tt6214468", + "tt0048127", + "tt0197521", + "tt0102932", + "tt6155456", + "tt0041368", + "tt2157045", + "tt0100625", + "tt0106598", + "tt0068276", + "tt9110902", + "tt11142536", + "tt0147800", + "tt0488147", + "tt9657904", + "tt0101458", + "tt1129396", + "tt0160596", + "tt11163008", + "tt0069049", + "tt5540058", + "tt4539828", + "tt3259276", + "tt8106576", + "tt3310896", + "tt10374234", + "tt7875948", + "tt3953626", + "tt6499694", + "tt4334636", + "tt6400674", + "tt5292624", + "tt1644669", + "tt0498348", + "tt0112656", + "tt7188014", + "tt1484521", + "tt0271436", + "tt3687304", + "tt6090268", + "tt8232232", + "tt0232632", + "tt6688022", + "tt6398184", + "tt5108168", + "tt4667084", + "tt0035140", + "tt7139936", + "tt0206588", + "tt6328004", + "tt1141702", + "tt4096638", + "tt9212666", + "tt5480528", + "tt7488036", + "tt8239736", + "tt2359307", + "tt9058944", + "tt2180168", + "tt6649066", + "tt11047498", + "tt8548792", + "tt2728784", + "tt4591226", + "tt6229100", + "tt10022384", + "tt3627488", + "tt3137764", + "tt10551144", + "tt8106584", + "tt9101692", + "tt0192942", + "tt0137141", + "tt0064356", + "tt5667296", + "tt7736656", + "tt0220627", + "tt5749596", + "tt0106580", + "tt6241428", + "tt4643034", + "tt3375972", + "tt3210376", + "tt8609926", + "tt5950094", + "tt11265724", + "tt9165642", + "tt6437346", + "tt6931414", + "tt4488744", + "tt7806518", + "tt10253466", + "tt0038577", + "tt0093217", + "tt8583694", + "tt0071804", + "tt7869070", + "tt7248248", + "tt0036047", + "tt0100172", + "tt1532961", + "tt0091688", + "tt0036004", + "tt6833650", + "tt0377309", + "tt0033781", + "tt2088846", + "tt2270274", + "tt0209958", + "tt1907707", + "tt5087554", + "tt1110626", + "tt6641528", + "tt1213585", + "tt5483172", + "tt0910554", + "tt4323568", + "tt0258273", + "tt2041487", + "tt0453465", + "tt9351746", + "tt4762824", + "tt4974208", + "tt0475998", + "tt3844320", + "tt0306841", + "tt8466648", + "tt0439478", + "tt1864405", + "tt2658538", + "tt0361309", + "tt11286066", + "tt0785077", + "tt0048729", + "tt0090333", + "tt10090796", + "tt3487278", + "tt6833964", + "tt9378360", + "tt6494344", + "tt5969696", + "tt4742556", + "tt1754264", + "tt6379314", + "tt8995254", + "tt0051655", + "tt10650924", + "tt0106343", + "tt11313068", + "tt0365748", + "tt0327162", + "tt1986202", + "tt0106342", + "tt2763790", + "tt2939114", + "tt0439876", + "tt0243554", + "tt1507002", + "tt3710966", + "tt0425112", + "tt0409459", + "tt4900018", + "tt0088885", + "tt3771626", + "tt8079248", + "tt2043801", + "tt0089601", + "tt2386868", + "tt0240468", + "tt5612850", + "tt0086969", + "tt0221799", + "tt2043887", + "tt6268734", + "tt2173248", + "tt0326900", + "tt0268695", + "tt2289182", + "tt0317303", + "tt2936390", + "tt0044391", + "tt0090110", + "tt6096194", + "tt4443838", + "tt1220227", + "tt0338325", + "tt1493127", + "tt6089358", + "tt5513260", + "tt6794376", + "tt0093690", + "tt1850418", + "tt0115927", + "tt0857376", + "tt1459459", + "tt0383060", + "tt3544048", + "tt5462288", + "tt6791238", + "tt0221218", + "tt3237064", + "tt5221184", + "tt0331933", + "tt7656770", + "tt5231992", + "tt1219671", + "tt5676118", + "tt4638148", + "tt4552534", + "tt5435476", + "tt0205177", + "tt1885325", + "tt1139111", + "tt9870402", + "tt1499249", + "tt3962848", + "tt0480271", + "tt2282719", + "tt0418004", + "tt7533152", + "tt5075662", + "tt3115712", + "tt0302640", + "tt3384180", + "tt1460798", + "tt3268850", + "tt6422938", + "tt0479125", + "tt7240568", + "tt0497964", + "tt3479316", + "tt10349372", + "tt7349950", + "tt5699060", + "tt0216165", + "tt6144876", + "tt0295578", + "tt5441282", + "tt5982922", + "tt8924844", + "tt4225622", + "tt6079516", + "tt8634348", + "tt11161374", + "tt3293594", + "tt10514016", + "tt6544220", + "tt9135260", + "tt0427543", + "tt9204204", + "tt8234892", + "tt10141990", + "tt1871391", + "tt4054382", + "tt5431284", + "tt3401026", + "tt2369275", + "tt8983294", + "tt0071838", + "tt7947150", + "tt2783862", + "tt8733256", + "tt1648204", + "tt6443380", + "tt7246408", + "tt5068650", + "tt6097486", + "tt7001906", + "tt3731176", + "tt0050985", + "tt7983712", + "tt7227742", + "tt0091524", + "tt8193396", + "tt4908174", + "tt7013830", + "tt4899528", + "tt6269192", + "tt0076320", + "tt11353562", + "tt11112140", + "tt2566016", + "tt8563466", + "tt3219194", + "tt5901992", + "tt7604980", + "tt8811382", + "tt8179944", + "tt4681432", + "tt2179053", + "tt2771252", + "tt6131712", + "tt0103671", + "tt4068576", + "tt1273219", + "tt4781446", + "tt0261289", + "tt8236336", + "tt0112346", + "tt0417791", + "tt4340072", + "tt0053351", + "tt4211312", + "tt0166158", + "tt0451239", + "tt5068754", + "tt0165477", + "tt5012620", + "tt5709536", + "tt0044851", + "tt0040582", + "tt0098625", + "tt0116165", + "tt0230838", + "tt5578604", + "tt6673098", + "tt0090357", + "tt6051424", + "tt0258470", + "tt0396592", + "tt3313314", + "tt0295455", + "tt0033754", + "tt8758086", + "tt8128188", + "tt0118556", + "tt1846442", + "tt10223052", + "tt1743360", + "tt8617648", + "tt3745558", + "tt5839328", + "tt4410770", + "tt8514564", + "tt2891456", + "tt6449354", + "tt3396820", + "tt5753806", + "tt6828722", + "tt5584796", + "tt9448892", + "tt7857374", + "tt0096189", + "tt0033723", + "tt0055514", + "tt0043425", + "tt7027210", + "tt4956270", + "tt0045468", + "tt0035555", + "tt5821150", + "tt8888808", + "tt10011508", + "tt5000686", + "tt7153134", + "tt0077850", + "tt0106912", + "tt0041085", + "tt8302386", + "tt6959300", + "tt0039226", + "tt0086508", + "tt7850334", + "tt3921694", + "tt0770772", + "tt4594836", + "tt6433880", + "tt4902260", + "tt7335710", + "tt6145232", + "tt7842288", + "tt1000771", + "tt0288415", + "tt0240515", + "tt2894338", + "tt5258074", + "tt8781414", + "tt0120510", + "tt0499554", + "tt0376108", + "tt0123987", + "tt2762506", + "tt5826432", + "tt0217630", + "tt10531134", + "tt5249200", + "tt1899324", + "tt8106596", + "tt1235187", + "tt2084872", + "tt5873216", + "tt0112667", + "tt4453560", + "tt4144504", + "tt0492619", + "tt7176052", + "tt0403217", + "tt4424350", + "tt4912622", + "tt0283084", + "tt7497366", + "tt4279250", + "tt5978724", + "tt3163224", + "tt3666024", + "tt2342700", + "tt2085957", + "tt6970798", + "tt7362370", + "tt3581436", + "tt6054846", + "tt4199898", + "tt3838634", + "tt6105774", + "tt0090713", + "tt7632274", + "tt0472268", + "tt0081032", + "tt0993775", + "tt6473542", + "tt8047262", + "tt0057887", + "tt0086370", + "tt1508274", + "tt5095010", + "tt0818170", + "tt1566503", + "tt0072747", + "tt0107612", + "tt1719030", + "tt4823434", + "tt6856592", + "tt6665988", + "tt2279105", + "tt3686272", + "tt3349884", + "tt2837574", + "tt4794416", + "tt5070130", + "tt2384296", + "tt11156614", + "tt5340300", + "tt6114206", + "tt0064276", + "tt5153588", + "tt4600300", + "tt9398640", + "tt10971520", + "tt6728264", + "tt9725216", + "tt0121766", + "tt8882390", + "tt0116488", + "tt2084977", + "tt0449880", + "tt0259393", + "tt0759612", + "tt0105017", + "tt11310004", + "tt9844368", + "tt0357054", + "tt7303530", + "tt0244803", + "tt6884200", + "tt0096871", + "tt0326901", + "tt0096870", + "tt8764582", + "tt3467914", + "tt1258130", + "tt7764186", + "tt1735190", + "tt7475832", + "tt1999130", + "tt0089002", + "tt3629834", + "tt0095178", + "tt0038777", + "tt0057298", + "tt1506435", + "tt5516586", + "tt7288378", + "tt2362006", + "tt10477858", + "tt0111187", + "tt0114168", + "tt0113097", + "tt1105745", + "tt0082288", + "tt5132392", + "tt6798422", + "tt4948858", + "tt8871254", + "tt3898028", + "tt0117742", + "tt5090828", + "tt5304248", + "tt1245733", + "tt0473333", + "tt0047034", + "tt5275830", + "tt0102782", + "tt0098343", + "tt0119576", + "tt0107941", + "tt0314725", + "tt7356166", + "tt7440524", + "tt0120152", + "tt0183659", + "tt0469835", + "tt0098356", + "tt7207238", + "tt7058016", + "tt0262571", + "tt5536736", + "tt10875028", + "tt7357302", + "tt7026362", + "tt3382636", + "tt3304688", + "tt8618712", + "tt4520340", + "tt0236348", + "tt0960864", + "tt5493944", + "tt0324554", + "tt5420870", + "tt0104695", + "tt0465430", + "tt0313196", + "tt0208874", + "tt0481522", + "tt0095646", + "tt11336698", + "tt6263260", + "tt4615318", + "tt2130048", + "tt3445270", + "tt6214958", + "tt1822395", + "tt6333064", + "tt4694518", + "tt4133102", + "tt0112572", + "tt0115641", + "tt0889595", + "tt1522259", + "tt1855134", + "tt6214722", + "tt2198209", + "tt0361696", + "tt5580392", + "tt0436971", + "tt0089997", + "tt1327763", + "tt0116669", + "tt0099493", + "tt5067958", + "tt1707818", + "tt0466766", + "tt8005336", + "tt3846674", + "tt5562652", + "tt0325596", + "tt0381966", + "tt5775194", + "tt0149691", + "tt2770480", + "tt9169764", + "tt4085238", + "tt0039323", + "tt0011237", + "tt5553962", + "tt9078564", + "tt4756770", + "tt9373386", + "tt0111102", + "tt3383214", + "tt7248144", + "tt0483361", + "tt0296711", + "tt0086110", + "tt0110364", + "tt6250554", + "tt0404203", + "tt0265417", + "tt0972544", + "tt5073652", + "tt0083093", + "tt0109909", + "tt7170950", + "tt4109998", + "tt0883398", + "tt0101635", + "tt0119859", + "tt6014556", + "tt8527036", + "tt0083158", + "tt10003516", + "tt1475149", + "tt4729990", + "tt7543072", + "tt6220290", + "tt0098184", + "tt0033806", + "tt1535080", + "tt5704748", + "tt6910734", + "tt3778354", + "tt0454987", + "tt0096193", + "tt1054118", + "tt6699114", + "tt1229367", + "tt0384504", + "tt0280778", + "tt0281190", + "tt4866214", + "tt0125971", + "tt7426120", + "tt0250202", + "tt0280969", + "tt7310916", + "tt6714534", + "tt6868646", + "tt4263780", + "tt4729642", + "tt3390376", + "tt0035807", + "tt3743068", + "tt0071791", + "tt0205271", + "tt4920360", + "tt6303872", + "tt1144815", + "tt5503686", + "tt0491720", + "tt6874964", + "tt6474040", + "tt2040504", + "tt6348244", + "tt2119463", + "tt2273321", + "tt0082122", + "tt0105107", + "tt1814836", + "tt6142496", + "tt0331488", + "tt1087457", + "tt0116260", + "tt0064875", + "tt6218358", + "tt4827922", + "tt0212910", + "tt0800115", + "tt5931144", + "tt0120390", + "tt0765439", + "tt6959298", + "tt6498644", + "tt7420292", + "tt0330136", + "tt6959310", + "tt4270874", + "tt8396294", + "tt0325258", + "tt1309379", + "tt0827521", + "tt7125498", + "tt0111693", + "tt2069985", + "tt6131208", + "tt7689940", + "tt0780565", + "tt0045478", + "tt3213062", + "tt0044926", + "tt0768172", + "tt0059347", + "tt7042838", + "tt0126916", + "tt0097179", + "tt5420848", + "tt4613254", + "tt0257510", + "tt0208993", + "tt0113737", + "tt0077482", + "tt2188220", + "tt0096735", + "tt0116905", + "tt5566778", + "tt2462764", + "tt9154456", + "tt9356444", + "tt5840448", + "tt0818602", + "tt6896536", + "tt2577990", + "tt6628386", + "tt0272152", + "tt4468600", + "tt8041922", + "tt0279778", + "tt2709656", + "tt5788462", + "tt7169100", + "tt4958390", + "tt7741530", + "tt0184907", + "tt0179116", + "tt0099460", + "tt6333072", + "tt5952526", + "tt6502208", + "tt2499358", + "tt3110982", + "tt0158131", + "tt3980530", + "tt0140697", + "tt4987454", + "tt1587422", + "tt0171580", + "tt0116527", + "tt0117737", + "tt1560959", + "tt7601296", + "tt8009578", + "tt3313182", + "tt1340765", + "tt5541330", + "tt0364343", + "tt5459456", + "tt10292722", + "tt3302636", + "tt3922798", + "tt6436270", + "tt5211694", + "tt7131622", + "tt9178986", + "tt1118687", + "tt11243364", + "tt7945938", + "tt1111876", + "tt9699028", + "tt5113040", + "tt2321269", + "tt6250876", + "tt4898564", + "tt1558250", + "tt6475636", + "tt0778661", + "tt0096321", + "tt0851578", + "tt0072424", + "tt0109015", + "tt5596034", + "tt0066327", + "tt0097332", + "tt1079372", + "tt0112537", + "tt8156742", + "tt7967580", + "tt10410186", + "tt1480660", + "tt0103280", + "tt0240944", + "tt3799372", + "tt0371190", + "tt5431600", + "tt7605084", + "tt1160629", + "tt8163814", + "tt0480268", + "tt0380609", + "tt1202514", + "tt2551894", + "tt1146439", + "tt4105700", + "tt4778424", + "tt4558532", + "tt4643048", + "tt3593916", + "tt5517438", + "tt1671493", + "tt6928060", + "tt3458194", + "tt1340844", + "tt4264544", + "tt7775430", + "tt1813261", + "tt1104006", + "tt0426578", + "tt4585080", + "tt1309449", + "tt1438522", + "tt4853154", + "tt1394259", + "tt11009598", + "tt7056772", + "tt1703938", + "tt0065217", + "tt5163074", + "tt4779518", + "tt10738914", + "tt6163142", + "tt4872078", + "tt1885440", + "tt7183826", + "tt4820278", + "tt11078522", + "tt4693788", + "tt6292874", + "tt0098638", + "tt2668134", + "tt4851852", + "tt11078434", + "tt4880572", + "tt11162974", + "tt0181907", + "tt0300015", + "tt10443844", + "tt1575539", + "tt3754976", + "tt8235296", + "tt3526622", + "tt0089847", + "tt6022946", + "tt1976010", + "tt2370224", + "tt0286152", + "tt0087951", + "tt0219854", + "tt0278731", + "tt5834800", + "tt4076258", + "tt0411195", + "tt0240462", + "tt0105820", + "tt0337812", + "tt7631348", + "tt1362264", + "tt0167203", + "tt0906599", + "tt8569230", + "tt0102951", + "tt6116568", + "tt0472602", + "tt1572306", + "tt2469200", + "tt1423636", + "tt0093857", + "tt4720316", + "tt3073898", + "tt8435268", + "tt1105729", + "tt0113670", + "tt3327086", + "tt0449061", + "tt1694015", + "tt2443356", + "tt4898730", + "tt0927627", + "tt7798634", + "tt1682886", + "tt4882376", + "tt5174234", + "tt2582576", + "tt0106188", + "tt4928814", + "tt0065234", + "tt6170484", + "tt3291148", + "tt0041699", + "tt0424880", + "tt11136006", + "tt0097986", + "tt0196516", + "tt2332623", + "tt1980185", + "tt0361841", + "tt0080839", + "tt0058324", + "tt0095236", + "tt0091188", + "tt1702014", + "tt0498505", + "tt0083967", + "tt8510488", + "tt0188640", + "tt0118301", + "tt7689424", + "tt10810424", + "tt0815244", + "tt0084210", + "tt0067773", + "tt7715070", + "tt6211502", + "tt0119123", + "tt5949038", + "tt0275022", + "tt5361326", + "tt0279286", + "tt0118804", + "tt4209900", + "tt0780486", + "tt3183936", + "tt7140696", + "tt4007248", + "tt0202046", + "tt0942378", + "tt3893664", + "tt0144604", + "tt4179582", + "tt0810823", + "tt4461838", + "tt0109403", + "tt0209322", + "tt0167427", + "tt1132623", + "tt4959876", + "tt0386504", + "tt0120633", + "tt4056808", + "tt9358398", + "tt2102497", + "tt4074296", + "tt4443784", + "tt0293815", + "tt8289196", + "tt7370936", + "tt0107611", + "tt10922508", + "tt3975556", + "tt3771668", + "tt0762115", + "tt6662736", + "tt0985593", + "tt1995346", + "tt0113682", + "tt3663200", + "tt2760202", + "tt7968976", + "tt4080400", + "tt2365580", + "tt7541632", + "tt3505754", + "tt4790268", + "tt3492900", + "tt7498092", + "tt3503924", + "tt5956016", + "tt11163014", + "tt0473308", + "tt6197028", + "tt6659414", + "tt1054485", + "tt10768782", + "tt3864056", + "tt0037536", + "tt1356790", + "tt10794834", + "tt7488288", + "tt5168238", + "tt3663564", + "tt0905627", + "tt2369105", + "tt8169994", + "tt0069761", + "tt7470850", + "tt0384929", + "tt0095846", + "tt0117427", + "tt0157472", + "tt0272147", + "tt5650964", + "tt4911876", + "tt0179098", + "tt0141907", + "tt0120550", + "tt4005510", + "tt8331988", + "tt0141109", + "tt1699231", + "tt2582784", + "tt4144350", + "tt0218043", + "tt0116151", + "tt0420087", + "tt2823574", + "tt2266938", + "tt0093919", + "tt7115500", + "tt4319112", + "tt7043176", + "tt5813808", + "tt4106028", + "tt4218538", + "tt0085689", + "tt2022568", + "tt3243630", + "tt0404030", + "tt8804688", + "tt11067442", + "tt8923482", + "tt8948614", + "tt2114490", + "tt0841032", + "tt0368075", + "tt6499516", + "tt0120823", + "tt10345022", + "tt0081375", + "tt5359048", + "tt2354395", + "tt7216068", + "tt0245238", + "tt3843748", + "tt9082152", + "tt6170202", + "tt0124879", + "tt3496818", + "tt0488349", + "tt0055895", + "tt2237012", + "tt0099623", + "tt5688996", + "tt0191037", + "tt0234829", + "tt0118836", + "tt3401190", + "tt2363483", + "tt0470995", + "tt3628574", + "tt2649882", + "tt0165361", + "tt1967651", + "tt0107117", + "tt3817848", + "tt0361715", + "tt0109035", + "tt0195778", + "tt0414853", + "tt8503170", + "tt6972670", + "tt6640526", + "tt0116552", + "tt2125490", + "tt0384810", + "tt0143261", + "tt0878673", + "tt0044036", + "tt1727825", + "tt9842634", + "tt1836974", + "tt3443208", + "tt9107368", + "tt2710694", + "tt2652118", + "tt0466342", + "tt0293088", + "tt5651952", + "tt3652142", + "tt9742422", + "tt9459550", + "tt9143166", + "tt5937964", + "tt6102062", + "tt7696976", + "tt0138818", + "tt1222818", + "tt6710606", + "tt0041182", + "tt11210886", + "tt2049559", + "tt0253378", + "tt5963066", + "tt1208647", + "tt0368709", + "tt3797276", + "tt7094436", + "tt0093407", + "tt2076346", + "tt0042963", + "tt0386792", + "tt4827442", + "tt2634296", + "tt2369317", + "tt4703182", + "tt6513120", + "tt2615952", + "tt7595276", + "tt1977941", + "tt11096888", + "tt0110213", + "tt5037358", + "tt3756780", + "tt2378587", + "tt0190138", + "tt0098331", + "tt3077108", + "tt9021104", + "tt0046937", + "tt2056663", + "tt0116361", + "tt4769836", + "tt5908294", + "tt7056864", + "tt6152554", + "tt0828158", + "tt0109305", + "tt0299930", + "tt0048624", + "tt4782322", + "tt5849622", + "tt0453548", + "tt2144008", + "tt3244744", + "tt0140796", + "tt3518988", + "tt0417001", + "tt5889292", + "tt0098165", + "tt0117909", + "tt0049762", + "tt5126220", + "tt0317910", + "tt7239700", + "tt5929776", + "tt0119381", + "tt0050974", + "tt0479044", + "tt0102011", + "tt2011300", + "tt0085366", + "tt0141974", + "tt0101669", + "tt0133189", + "tt3615160", + "tt4929038", + "tt0477731", + "tt6472116", + "tt2527050", + "tt3211400", + "tt0396652", + "tt0107870", + "tt0315297", + "tt0076786", + "tt2457324", + "tt1326194", + "tt0015772", + "tt0078907", + "tt0300633", + "tt3589352", + "tt0017162", + "tt0064373", + "tt1679235", + "tt7207478", + "tt4839118", + "tt6582782", + "tt8338940", + "tt0109484", + "tt11057118", + "tt0099750", + "tt0120834", + "tt6428150", + "tt0298408", + "tt0111712", + "tt5291714", + "tt0266452", + "tt0362526", + "tt8772262", + "tt0080853", + "tt6080418", + "tt7444978", + "tt0382073", + "tt1942971", + "tt0091338", + "tt0095488", + "tt8529066", + "tt7029788", + "tt8228172", + "tt0031971", + "tt0099878", + "tt0893367", + "tt0094321", + "tt0048570", + "tt0052877", + "tt0082163", + "tt5670364", + "tt7394770", + "tt0126604", + "tt0338467", + "tt0194368", + "tt0392878", + "tt1754316", + "tt2512236", + "tt8412232", + "tt1152758", + "tt3914332", + "tt8951058", + "tt0212974", + "tt4151094", + "tt2133214", + "tt3085312", + "tt1104733", + "tt4396584", + "tt3512160", + "tt0095687", + "tt3960240", + "tt0272020", + "tt0100486", + "tt3129350", + "tt5492260", + "tt0448120", + "tt3869356", + "tt2384022", + "tt3760162", + "tt7235502", + "tt2119373", + "tt5708154", + "tt0364569", + "tt6698648", + "tt5912600", + "tt3710938", + "tt0456014", + "tt1320347", + "tt3079568", + "tt5737862", + "tt0323120", + "tt0140174", + "tt5355868", + "tt3164754", + "tt3643544", + "tt10172550", + "tt9465600", + "tt6425560", + "tt4462372", + "tt7117594", + "tt6071704", + "tt0167752", + "tt5342090", + "tt7978548", + "tt0266425", + "tt3973724", + "tt0299458", + "tt0069865", + "tt3475058", + "tt7639502", + "tt4286468", + "tt2261427", + "tt6436888", + "tt0110395", + "tt0331953", + "tt0119210", + "tt3552592", + "tt5539284", + "tt1707378", + "tt6260468", + "tt3586044", + "tt0200469", + "tt2163606", + "tt7830584", + "tt8197418", + "tt2492344", + "tt5223878", + "tt8029682", + "tt0298045", + "tt2452386", + "tt1839390", + "tt0097618", + "tt5236424", + "tt0997147", + "tt1091229", + "tt1776143", + "tt0446046", + "tt0084719", + "tt0280665", + "tt0044110", + "tt0256459", + "tt5617916", + "tt7165212", + "tt1323518", + "tt3108970", + "tt8897046", + "tt8009518", + "tt6567708", + "tt2264978", + "tt6937070", + "tt4443974", + "tt0120683", + "tt8665150", + "tt11010272", + "tt0250274", + "tt4295294", + "tt0115493", + "tt0273108", + "tt0180073", + "tt1294161", + "tt0350028", + "tt0084088", + "tt0094027", + "tt0393735", + "tt0117958", + "tt0082992", + "tt0077305", + "tt0087550", + "tt0116913", + "tt0403455", + "tt0097142", + "tt0092638", + "tt1512738", + "tt0110363", + "tt0243232", + "tt0120122", + "tt0084049", + "tt0097570", + "tt6244730", + "tt1059793", + "tt0107443", + "tt1786530", + "tt0297753", + "tt0082822", + "tt0053271", + "tt4792524", + "tt3515524", + "tt2392435", + "tt5072612", + "tt3644258", + "tt0176783", + "tt3711196", + "tt3487610", + "tt5143968", + "tt0072249", + "tt5106042", + "tt7422638", + "tt6874542", + "tt4329516", + "tt6769326", + "tt9352780", + "tt4117338", + "tt0225071", + "tt5369246", + "tt3127902", + "tt0205000", + "tt0253798", + "tt4497416", + "tt10644808", + "tt6744044", + "tt2917506", + "tt3212026", + "tt0144550", + "tt3794552", + "tt8751928", + "tt0367652", + "tt4737992", + "tt3065448", + "tt0850667", + "tt4780578", + "tt6426700", + "tt6184894", + "tt8169942", + "tt9617448", + "tt10883004", + "tt4664460", + "tt4632316", + "tt0233142", + "tt0113533", + "tt6223932", + "tt0068659", + "tt1792576", + "tt0111205", + "tt4552112", + "tt3626436", + "tt3288948", + "tt0280460", + "tt0403016", + "tt5993468", + "tt0425123", + "tt6781498", + "tt3786326", + "tt3065132", + "tt6235008", + "tt0104225", + "tt4034930", + "tt4406298", + "tt0329028", + "tt6384720", + "tt1052024", + "tt5338774", + "tt0111477", + "tt3243772", + "tt1754137", + "tt4431208", + "tt0867149", + "tt7319064", + "tt1650393", + "tt3666644", + "tt3557464", + "tt0274468", + "tt5783956", + "tt0301526", + "tt6387232", + "tt9364406", + "tt7706168", + "tt0314498", + "tt0240900", + "tt0361925", + "tt0376105", + "tt6398496", + "tt2129990", + "tt6535100", + "tt0090852", + "tt8890058", + "tt10156020", + "tt6899068", + "tt0065398", + "tt10203940", + "tt8667120", + "tt10920376", + "tt6412076", + "tt10243678", + "tt7809198", + "tt0074799", + "tt2140507", + "tt5564336", + "tt0069992", + "tt7275352", + "tt7043070", + "tt8378126", + "tt1043904", + "tt4471634", + "tt9248032", + "tt2899142", + "tt5963132", + "tt10262168", + "tt9238392", + "tt7983890", + "tt1881109", + "tt8707008", + "tt0271259", + "tt0970965", + "tt0089543", + "tt0499234", + "tt0106246", + "tt0448663", + "tt0105381", + "tt3983642", + "tt4844288", + "tt0396705", + "tt0086429", + "tt3295244", + "tt6167116", + "tt4093896", + "tt0160495", + "tt5792472", + "tt0095916", + "tt0059287", + "tt0250797", + "tt1285252", + "tt2821314", + "tt6846432", + "tt3552348", + "tt8725518", + "tt7133092", + "tt4979826", + "tt1346973", + "tt3403310", + "tt0118926", + "tt0091869", + "tt7588798", + "tt0345591", + "tt0051687", + "tt1823096", + "tt2766804", + "tt9316022", + "tt2937366", + "tt0110917", + "tt0118708", + "tt0102737", + "tt3021984", + "tt8421698", + "tt0473074", + "tt7948328", + "tt0101924", + "tt1517476", + "tt0489037", + "tt8196200", + "tt0097348", + "tt8634202", + "tt5644740", + "tt0114134", + "tt0090196", + "tt4561398", + "tt1623759", + "tt7609180", + "tt5117428", + "tt0076902", + "tt7240478", + "tt0102328", + "tt0783518", + "tt0290332", + "tt0189456", + "tt0419434", + "tt6803212", + "tt1572008", + "tt0111701", + "tt0099819", + "tt0108065", + "tt0070942", + "tt2339739", + "tt2304583", + "tt1964758", + "tt5492054", + "tt7309384", + "tt3579192", + "tt2125685", + "tt3749926", + "tt7212266", + "tt0433116", + "tt0374536", + "tt3616292", + "tt0285462", + "tt5575258", + "tt7812828", + "tt2429278", + "tt0178988", + "tt4991512", + "tt0493430", + "tt0401410", + "tt2766790", + "tt4267026", + "tt5269968", + "tt8493638", + "tt8707374", + "tt0071199", + "tt6027490", + "tt1319733", + "tt1276434", + "tt0031002", + "tt2362991", + "tt0109053", + "tt1827402", + "tt0441303", + "tt5335244", + "tt6189022", + "tt1832355", + "tt0095409", + "tt0041776", + "tt3074856", + "tt0282687", + "tt6375308", + "tt3735398", + "tt6615426", + "tt4760804", + "tt0118966", + "tt0118887", + "tt4103992", + "tt0065872", + "tt0498900", + "tt4627352", + "tt5791536", + "tt5792468", + "tt1363127", + "tt7474562", + "tt3626504", + "tt0087718", + "tt0120185", + "tt0294345", + "tt0782867", + "tt3675204", + "tt2338454", + "tt3268458", + "tt0378306", + "tt8126390", + "tt2388771", + "tt8858104", + "tt0113028", + "tt5278506", + "tt7683148", + "tt0059501", + "tt3837248", + "tt0108656", + "tt0023249", + "tt0101510", + "tt1454545", + "tt0400497", + "tt0165232", + "tt2631072", + "tt0069426", + "tt0108105", + "tt3159812", + "tt1975368", + "tt0114496", + "tt3952614", + "tt0217756", + "tt3140724", + "tt9028880", + "tt0229002", + "tt0466399", + "tt11015752", + "tt0039895", + "tt0067433", + "tt0372237", + "tt0073605", + "tt0049856", + "tt0024794", + "tt0059232", + "tt0107719", + "tt0048055", + "tt6794424", + "tt0192528", + "tt1355235", + "tt0042379", + "tt0064073", + "tt0039022", + "tt5433114", + "tt6608032", + "tt5834854", + "tt0067774", + "tt2259318", + "tt0116817", + "tt0079753", + "tt5932330", + "tt0118686", + "tt0076044", + "tt0107009", + "tt0295725", + "tt4659728", + "tt0460766", + "tt0075807", + "tt1543511", + "tt0196267", + "tt7605144", + "tt5110386", + "tt2974068", + "tt0069866", + "tt2180571", + "tt2358806", + "tt3266724", + "tt3004852", + "tt6079702", + "tt11023738", + "tt0432291", + "tt5974050", + "tt0119310", + "tt3040528", + "tt8976032", + "tt0094006", + "tt0107107", + "tt6956798", + "tt6843446", + "tt6566768", + "tt3219686", + "tt4206250", + "tt0110712", + "tt6206364", + "tt10577906", + "tt4967298", + "tt5677598", + "tt0104837", + "tt7666724", + "tt4147238", + "tt9384954", + "tt5751588", + "tt1237962", + "tt1735357", + "tt4795730", + "tt6195904", + "tt0118870", + "tt7919810", + "tt1288406", + "tt0981072", + "tt1673381", + "tt7846056", + "tt8178486", + "tt4729430", + "tt0077303", + "tt5066818", + "tt3467440", + "tt2929690", + "tt10938576", + "tt10915826", + "tt0462482", + "tt8963288", + "tt6053440", + "tt1071780", + "tt0339034", + "tt0438123", + "tt0323572", + "tt6175670", + "tt5725368", + "tt1822394", + "tt0412922", + "tt1003165", + "tt0236640", + "tt1639084", + "tt4060244", + "tt0117293", + "tt1813652", + "tt0074205", + "tt0095515", + "tt2352196", + "tt1515195", + "tt0046874", + "tt4682780", + "tt5165878", + "tt0225882", + "tt4532280", + "tt6921496", + "tt1009017", + "tt0058981", + "tt3456784", + "tt0075793", + "tt2403867", + "tt3480056", + "tt0111333", + "tt0112772", + "tt7272948", + "tt0970521", + "tt0102585", + "tt0108640", + "tt0915460", + "tt0067144", + "tt0087134", + "tt0092863", + "tt0119375", + "tt8009314", + "tt5587022", + "tt5758302", + "tt1153690", + "tt2200022", + "tt0058191", + "tt0443737", + "tt6644286", + "tt1354553", + "tt0085356", + "tt10886732", + "tt0201820", + "tt0427411", + "tt1277736", + "tt0214641", + "tt0454808", + "tt0283530", + "tt10413458", + "tt7240298", + "tt5432342", + "tt4188442", + "tt3612320", + "tt0335559", + "tt3373410", + "tt8453538", + "tt0443496", + "tt5246700", + "tt0111418", + "tt5596104", + "tt3762974", + "tt0120604", + "tt9389444", + "tt0283139", + "tt0231402", + "tt6253688", + "tt7707314", + "tt0097481", + "tt0469689", + "tt2619512", + "tt5533228", + "tt5253074", + "tt4031126", + "tt7288562", + "tt0286788", + "tt0072152", + "tt2351417", + "tt4622018", + "tt1140941", + "tt3910512", + "tt10701384", + "tt2191805", + "tt5117876", + "tt1497874", + "tt8167872", + "tt0218378", + "tt0102768", + "tt6078458", + "tt6095472", + "tt0252501", + "tt0076106", + "tt2385211", + "tt6541512", + "tt0430457", + "tt4936176", + "tt0086361", + "tt0092042", + "tt0757361", + "tt0071288", + "tt6338506", + "tt3111864", + "tt7284204", + "tt2340650", + "tt7214470", + "tt0098966", + "tt0066492", + "tt0120662", + "tt0463996", + "tt0131436", + "tt0076059", + "tt0473464", + "tt8488126", + "tt7415466", + "tt0448166", + "tt0083745", + "tt6984258", + "tt0076138", + "tt3711708", + "tt0056596", + "tt0120847", + "tt4702826", + "tt9213244", + "tt7125774", + "tt11062388", + "tt8068768", + "tt7370952", + "tt0082926", + "tt3300542", + "tt6613958", + "tt11108064", + "tt9637246", + "tt2302755", + "tt7422926", + "tt4473054", + "tt0076762", + "tt0120094", + "tt7653006", + "tt1103221", + "tt5472372", + "tt0078326", + "tt6105406", + "tt3983674", + "tt0091019", + "tt0077199", + "tt1964650", + "tt0078024", + "tt2523832", + "tt3884528", + "tt1054588", + "tt3750976", + "tt0282171", + "tt0104487", + "tt3691270", + "tt0365125", + "tt0102687", + "tt5227606", + "tt0359692", + "tt6222300", + "tt1242460", + "tt0240913", + "tt5034212", + "tt6522666", + "tt5989336", + "tt0356680", + "tt0037008", + "tt0054073", + "tt0023427", + "tt1065332", + "tt1646973", + "tt0028096", + "tt0065571", + "tt0246692", + "tt0098253", + "tt0038206", + "tt0384369", + "tt0097396", + "tt0065649", + "tt0092978", + "tt0059619", + "tt0052847", + "tt0091251", + "tt0099776", + "tt0038419", + "tt0032186", + "tt0078054", + "tt6949398", + "tt10262492", + "tt7659018", + "tt6492020", + "tt10499474", + "tt2359085", + "tt8399718", + "tt2516874", + "tt1957867", + "tt1350498", + "tt10691094", + "tt7710160", + "tt1789074", + "tt8069578", + "tt10719844", + "tt0040341", + "tt0040755", + "tt7947624", + "tt5987700", + "tt1137996", + "tt10720474", + "tt5246928", + "tt3431188", + "tt0166674", + "tt10327518", + "tt0368688", + "tt0040197", + "tt7477068", + "tt0155578", + "tt1336621", + "tt6805354", + "tt0067559", + "tt0102517", + "tt7547410", + "tt0093845", + "tt0062885", + "tt10920662", + "tt8022928", + "tt1150934", + "tt0407121", + "tt8760684", + "tt0093342", + "tt0117966", + "tt0478832", + "tt0469810", + "tt0223783", + "tt7908312", + "tt1365050", + "tt3832326", + "tt1183921", + "tt11121556", + "tt0139418", + "tt4027794", + "tt3329654", + "tt0183882", + "tt6576556", + "tt7471706", + "tt4786020", + "tt3840082", + "tt1528792", + "tt4131208", + "tt1323926", + "tt0115434", + "tt7951242", + "tt0314691", + "tt0052765", + "tt2389290", + "tt1261422", + "tt0479852", + "tt1739303", + "tt0117093", + "tt6333086", + "tt2960304", + "tt0206871", + "tt0033722", + "tt0422515", + "tt0293359", + "tt6285672", + "tt6887162", + "tt0234964", + "tt5592878", + "tt3089326", + "tt1124078", + "tt0131356", + "tt5128790", + "tt0156246", + "tt0207961", + "tt0194894", + "tt3146022", + "tt0289374", + "tt0101998", + "tt5047336", + "tt0115438", + "tt0065560", + "tt1764666", + "tt4870510", + "tt5083366", + "tt0130121", + "tt0103850", + "tt0060462", + "tt2216088", + "tt6068406", + "tt0318974", + "tt7546024", + "tt4009728", + "tt0228750", + "tt2124959", + "tt5127214", + "tt0109288", + "tt0314119", + "tt0179471", + "tt3393164", + "tt0079771", + "tt2386237", + "tt8425058", + "tt6964538", + "tt6343988", + "tt0107090", + "tt0326856", + "tt0067650", + "tt0119950", + "tt7528342", + "tt0421090", + "tt7977162", + "tt5952266", + "tt0338556", + "tt7689926", + "tt2278050", + "tt6082630", + "tt0421994", + "tt2766882", + "tt7830428", + "tt5368354", + "tt5715832", + "tt3064356", + "tt0382621", + "tt0091159", + "tt8727494", + "tt2277106", + "tt2091427", + "tt0050181", + "tt5265964", + "tt5266668", + "tt0451094", + "tt3209560", + "tt4680980", + "tt6668974", + "tt0160338", + "tt1054115", + "tt0913399", + "tt0481519", + "tt0082958", + "tt11043546", + "tt3920820", + "tt6464678", + "tt0114466", + "tt6339230", + "tt0091631", + "tt0473692", + "tt1322393", + "tt5873150", + "tt3533612", + "tt6146590", + "tt1426748", + "tt0435617", + "tt0091183", + "tt0119190", + "tt5098712", + "tt2548738", + "tt0079640", + "tt0832318", + "tt0228156", + "tt0077621", + "tt4504438", + "tt0203755", + "tt0079639", + "tt2075352", + "tt0097500", + "tt6948354", + "tt5786184", + "tt3970854", + "tt5834362", + "tt2011325", + "tt0076913", + "tt0186589", + "tt0306734", + "tt8774388", + "tt5158844", + "tt3300712", + "tt7222228", + "tt0250425", + "tt9028784", + "tt8634192", + "tt9032562", + "tt6021694", + "tt3661570", + "tt9033712", + "tt6802950", + "tt7714138", + "tt1950235", + "tt5133572", + "tt7164084", + "tt6992230", + "tt8160744", + "tt7511008", + "tt4477292", + "tt6727816", + "tt6842446", + "tt4054008", + "tt7315484", + "tt8242340", + "tt7428884", + "tt1605782", + "tt6472234", + "tt10691312", + "tt10691126", + "tt2072910", + "tt9866208", + "tt2755860", + "tt0089523", + "tt6163094", + "tt0385700", + "tt0435286", + "tt0015116", + "tt1483421", + "tt0090302", + "tt0107947", + "tt0116743", + "tt6415100", + "tt3500600", + "tt8009906", + "tt7985692", + "tt0244000", + "tt5690810", + "tt8637428", + "tt7935908", + "tt6105098", + "tt8266310", + "tt0060168", + "tt0111845", + "tt7869818", + "tt2375454", + "tt5938190", + "tt8000908", + "tt5851598", + "tt8717590", + "tt3106314", + "tt5664676", + "tt4364194", + "tt0757194", + "tt0489048", + "tt4177856", + "tt1139662", + "tt0938281", + "tt9243946", + "tt0772181", + "tt0398029", + "tt7343762", + "tt0067390", + "tt0454914", + "tt0848281", + "tt0823172", + "tt0437954", + "tt1262945", + "tt0349747", + "tt0043751", + "tt1533089", + "tt0285154", + "tt1267160", + "tt0221889", + "tt7919372", + "tt5687968", + "tt0165859", + "tt1334537", + "tt0118851", + "tt0436629", + "tt2484530", + "tt7445552", + "tt0073911", + "tt0276919", + "tt2071600", + "tt0191133", + "tt0327919", + "tt7358154", + "tt1229791", + "tt0110971", + "tt3165632", + "tt0863136", + "tt5275872", + "tt3721924", + "tt2214863", + "tt0210567", + "tt10613550", + "tt8106568", + "tt5602204", + "tt0090840", + "tt0061591", + "tt0072245", + "tt0113104", + "tt6508770", + "tt0083542", + "tt1956594", + "tt0073903", + "tt3810760", + "tt1927067", + "tt2310316", + "tt6014904", + "tt2076895", + "tt10948366", + "tt10716748", + "tt0219592", + "tt6781982", + "tt5859882", + "tt9257484", + "tt0479937", + "tt0923683", + "tt0050681", + "tt2787302", + "tt0100014", + "tt1611944", + "tt0042052", + "tt0081793", + "tt0066970", + "tt0427968", + "tt4809590", + "tt0047263", + "tt0234105", + "tt1842448", + "tt2156536", + "tt3788052", + "tt7158904", + "tt10147936", + "tt10793634", + "tt7635550", + "tt10771556", + "tt0092796", + "tt0051887", + "tt7030194", + "tt8197058", + "tt5206770", + "tt10763618", + "tt6722976", + "tt0819129", + "tt0178935", + "tt9103028", + "tt1985064", + "tt0435670", + "tt6337910", + "tt4974254", + "tt5514008", + "tt7616148", + "tt2732286", + "tt0128364", + "tt7124092", + "tt6433106", + "tt0166960", + "tt7841536", + "tt11168100", + "tt8893402", + "tt0069989", + "tt0096171", + "tt0060737", + "tt0113967", + "tt9135272", + "tt7212878", + "tt7958644", + "tt6823080", + "tt0388183", + "tt2277840", + "tt6204148", + "tt0071772", + "tt8528334", + "tt0198494", + "tt1369845", + "tt0314412", + "tt5622660", + "tt0314786", + "tt0068639", + "tt2057449", + "tt0079807", + "tt3819718", + "tt1499069", + "tt0977648", + "tt2349677", + "tt2049586", + "tt0323298", + "tt0105698", + "tt0119326", + "tt6654082", + "tt6130118", + "tt2943352", + "tt7779590", + "tt0290296", + "tt1511532", + "tt5242100", + "tt7886614", + "tt3712822", + "tt0448100", + "tt6727598", + "tt0070731", + "tt0060165", + "tt2044040", + "tt0107889", + "tt0082010", + "tt1447482", + "tt0116313", + "tt8161914", + "tt0327036", + "tt10009796", + "tt6197400", + "tt0229553", + "tt4500214", + "tt0057063", + "tt0063625", + "tt0077942", + "tt4522922", + "tt0804551", + "tt0069080", + "tt0142201", + "tt3605266", + "tt1928320", + "tt0058371", + "tt1826550", + "tt3778086", + "tt0063811", + "tt0109206", + "tt2325761", + "tt8244578", + "tt3203290", + "tt0076149", + "tt5159024", + "tt2937390", + "tt0093133", + "tt3654796", + "tt0178431", + "tt2732932", + "tt5155780", + "tt0102910", + "tt0089129", + "tt0367623", + "tt0077289", + "tt0071554", + "tt0094002", + "tt2417912", + "tt1618434", + "tt0161860", + "tt0118040", + "tt0112792", + "tt5752356", + "tt0070358", + "tt5183500", + "tt0016394", + "tt1375669", + "tt0093650", + "tt0119588", + "tt0100974", + "tt0424359", + "tt0063740", + "tt3949644", + "tt0265739", + "tt0031208", + "tt0328049", + "tt1694580", + "tt0168780", + "tt8193978", + "tt0078867", + "tt10608842", + "tt10007978", + "tt0091658", + "tt2061756", + "tt11081044", + "tt0099040", + "tt0226872", + "tt0116516", + "tt9646240", + "tt6414392", + "tt6876788", + "tt10720384", + "tt0066002", + "tt0093800", + "tt0138545", + "tt1602572", + "tt2007360", + "tt0006736", + "tt0072010", + "tt0078087", + "tt8710502", + "tt0074510", + "tt7329656", + "tt0054649", + "tt0099719", + "tt0216767", + "tt9358196", + "tt3228830", + "tt0064243", + "tt0134664", + "tt0453383", + "tt0100827", + "tt0080881", + "tt7895904", + "tt0192111", + "tt0068186", + "tt6447022", + "tt0368447", + "tt0226875", + "tt0105880", + "tt0056289", + "tt6535880", + "tt2980086", + "tt0268397", + "tt0043972", + "tt0060748", + "tt0074798", + "tt0079486", + "tt0294594", + "tt1753597", + "tt3149612", + "tt0052555", + "tt0104839", + "tt6604174", + "tt0933064", + "tt0061931", + "tt0067647", + "tt5275838", + "tt0078288", + "tt0140340", + "tt1016301", + "tt0795352", + "tt0053899", + "tt5087564", + "tt0104014", + "tt0052104", + "tt6450428", + "tt0138078", + "tt3149536", + "tt5844286", + "tt7116548", + "tt7745068", + "tt0387954", + "tt2551516", + "tt0099637", + "tt0097336", + "tt7320560", + "tt0059379", + "tt0053145", + "tt0069124", + "tt0174931", + "tt3242640", + "tt0069073", + "tt0061173", + "tt0059244", + "tt0072827", + "tt7984766", + "tt2047910", + "tt1504489", + "tt7689910", + "tt5325030", + "tt6953526", + "tt3699150", + "tt11127056", + "tt0052655", + "tt3387520", + "tt0058753", + "tt0170054", + "tt9412098", + "tt2091476", + "tt9075778", + "tt7439748", + "tt9664078", + "tt11083568", + "tt0243575", + "tt1560169", + "tt6829222", + "tt3620846", + "tt0430634", + "tt0156647", + "tt0128278", + "tt8541394", + "tt3829884", + "tt4906148", + "tt8327962", + "tt0379306", + "tt3213622", + "tt1966575", + "tt0369441", + "tt7182240", + "tt0120613", + "tt4925028", + "tt0077716", + "tt6262764", + "tt0071514", + "tt0070068", + "tt0466875", + "tt0057905", + "tt0382189", + "tt9121906", + "tt4985906", + "tt3369134", + "tt4568312", + "tt0078856", + "tt6159268", + "tt0052950", + "tt0103678", + "tt0037146", + "tt0075005", + "tt5278464", + "tt6422192", + "tt1092633", + "tt1131727", + "tt3111516", + "tt2245084", + "tt1877647", + "tt0206534", + "tt6236738", + "tt0032232", + "tt7983348", + "tt0047642", + "tt1772263", + "tt1478839", + "tt0057718", + "tt0106262", + "tt1999167", + "tt0056355", + "tt1520392", + "tt4219130", + "tt0100156", + "tt0082045", + "tt0039391", + "tt0115535", + "tt0091396", + "tt0052829", + "tt0285503", + "tt5707754", + "tt0945355", + "tt3265462", + "tt0061549", + "tt0090753", + "tt0026164", + "tt0349205", + "tt3281920", + "tt0105888", + "tt5903088", + "tt0368774", + "tt8079880", + "tt8805702", + "tt5437148", + "tt6692264", + "tt0033804", + "tt6333084", + "tt0116462", + "tt0258255", + "tt0038203", + "tt0059794", + "tt1213574", + "tt0391891", + "tt5144236", + "tt0062980", + "tt0063102", + "tt4883512", + "tt0095262", + "tt0780622", + "tt0433416", + "tt0036290", + "tt6017364", + "tt0280720", + "tt0079965", + "tt0042411", + "tt0050895", + "tt3598178", + "tt2317796", + "tt0096808", + "tt0036232", + "tt7284952", + "tt6213810", + "tt5518168", + "tt8809652", + "tt0096343", + "tt0046534", + "tt6219314", + "tt3682686", + "tt6378942", + "tt7558302", + "tt0164393", + "tt3113836", + "tt5740868", + "tt7468616", + "tt0159508", + "tt0062804", + "tt0082914", + "tt0315824", + "tt7575642", + "tt0073014", + "tt5822564", + "tt8526872", + "tt0037219", + "tt2765192", + "tt9021184", + "tt2113788", + "tt3786198", + "tt0193166", + "tt0022886", + "tt6805862", + "tt3759912", + "tt0158736", + "tt0041308", + "tt0070242", + "tt0110516", + "tt0106753", + "tt0051145", + "tt2377700", + "tt0060420", + "tt1371630", + "tt7313348", + "tt2446990", + "tt1485134", + "tt7218812", + "tt1943873", + "tt0035799", + "tt3607812", + "tt1185836", + "tt1325619", + "tt0062762", + "tt7948818", + "tt0104510", + "tt8556014", + "tt5923026", + "tt5891122", + "tt0412904", + "tt0019130", + "tt1033501", + "tt0067169", + "tt0035376", + "tt5518022", + "tt6891976", + "tt7890408", + "tt4323370", + "tt5001130", + "tt3831344", + "tt0421239", + "tt6269942", + "tt2124162", + "tt9507276", + "tt2702724", + "tt7083846", + "tt8076344", + "tt0057360", + "tt3138664", + "tt5372528", + "tt10150694", + "tt2918988", + "tt5838300", + "tt0094103", + "tt5515814", + "tt8421156", + "tt6380398", + "tt6023560", + "tt4504188", + "tt0069818", + "tt7676816", + "tt8420442", + "tt0074562", + "tt4207112", + "tt0117723", + "tt1836776", + "tt0079239", + "tt0113851", + "tt1110048", + "tt3481232", + "tt3275362", + "tt0186202", + "tt5859140", + "tt0067531", + "tt6096254", + "tt6191876", + "tt0060155", + "tt0054453", + "tt0325537", + "tt0438488", + "tt9189566", + "tt6026700", + "tt0118540", + "tt1374989", + "tt0048304", + "tt6251666", + "tt0095812", + "tt0028346", + "tt0384833", + "tt0052389", + "tt0030418", + "tt0323033", + "tt0110759", + "tt0316824", + "tt6921112", + "tt7044010", + "tt0049026", + "tt0129982", + "tt5691856", + "tt3041032", + "tt11137384", + "tt6050668", + "tt7234202", + "tt5193790", + "tt6642662", + "tt8669212", + "tt5628902", + "tt2160125", + "tt8095862", + "tt7154284", + "tt5848986", + "tt0133089", + "tt3323940", + "tt3488668", + "tt6223974", + "tt7434402", + "tt0113010", + "tt0040795", + "tt2061563", + "tt6967162", + "tt4497846", + "tt0119896", + "tt0032676", + "tt1713991", + "tt0052529", + "tt0036182", + "tt0308152", + "tt7239076", + "tt6391732", + "tt0069729", + "tt0061738", + "tt2490148", + "tt2749282", + "tt4835636", + "tt0079828", + "tt0057473", + "tt4687410", + "tt0175047", + "tt4901304", + "tt0071671", + "tt0264150", + "tt7134296", + "tt8991264", + "tt4457716", + "tt1270296", + "tt3004544", + "tt3966544", + "tt1621641", + "tt0046008", + "tt4543902", + "tt0061795", + "tt0299977", + "tt1900908", + "tt2923256", + "tt0079146", + "tt0317219", + "tt0097527", + "tt0084472", + "tt8239806", + "tt0104449", + "tt1196121", + "tt0091223", + "tt0119675", + "tt1139797", + "tt0069341", + "tt0239641", + "tt0330634", + "tt3289956", + "tt0093220", + "tt0115963", + "tt0114608", + "tt2526422", + "tt10452224", + "tt0108539", + "tt0089885", + "tt10051586", + "tt0144814", + "tt0081334", + "tt0035689", + "tt1228987", + "tt0214388", + "tt0032138", + "tt0070518", + "tt0048634", + "tt1342122", + "tt0837122", + "tt3651804", + "tt0059518", + "tt2317088", + "tt2466320", + "tt0073496", + "tt0074777", + "tt2090629", + "tt0055458", + "tt0899270", + "tt3911554", + "tt0056964", + "tt1474897", + "tt2287170", + "tt0077254", + "tt0060814", + "tt0308208", + "tt5632272", + "tt0251075", + "tt0460812", + "tt0113438", + "tt0065537", + "tt0095638", + "tt1567279", + "tt0044466", + "tt0478802", + "tt0030857", + "tt0059358", + "tt2058620", + "tt1535615", + "tt1016226", + "tt1704721", + "tt0933874", + "tt4459806", + "tt0398286", + "tt2011265", + "tt1742327", + "tt2256826", + "tt0051476", + "tt0218619", + "tt0053957", + "tt3162856", + "tt0119109", + "tt0186253", + "tt1918908", + "tt0494716", + "tt2554274", + "tt0101516", + "tt0031580", + "tt0210070", + "tt4855748", + "tt0103873", + "tt1077368", + "tt0044207", + "tt0134067", + "tt0084787", + "tt0121164", + "tt1682180", + "tt4160840", + "tt1748113", + "tt2254790", + "tt8233874", + "tt2932536", + "tt3592750", + "tt1219834", + "tt2229095", + "tt3991302", + "tt2948356", + "tt5675632", + "tt1579396", + "tt0453729", + "tt0366777", + "tt3894660", + "tt2333998", + "tt1778940", + "tt3302654", + "tt3969208", + "tt0047930", + "tt0114825", + "tt2338027", + "tt2647078", + "tt0460883", + "tt3004572", + "tt1626201", + "tt4474828", + "tt0073801", + "tt0229260", + "tt3899706", + "tt2574666", + "tt5636234", + "tt1419346", + "tt5129156", + "tt3521148", + "tt3589016", + "tt5887630", + "tt3003980", + "tt1038971", + "tt1022571", + "tt1478877", + "tt5059406", + "tt4513074", + "tt0080908", + "tt3014556", + "tt5577742", + "tt3578894", + "tt1303233", + "tt3730162", + "tt0480249", + "tt3466248", + "tt6301784", + "tt0063522", + "tt3521164", + "tt0089175", + "tt2316433", + "tt0087262", + "tt3620452", + "tt1132626", + "tt4263482", + "tt1188729", + "tt5052448", + "tt1477076", + "tt0080749", + "tt2321549", + "tt0890870", + "tt0387564", + "tt0432348", + "tt8236214", + "tt1233227", + "tt5630752", + "tt5360232", + "tt0489270", + "tt10327842", + "tt11052346", + "tt3348730", + "tt0780521", + "tt4712086", + "tt0077773", + "tt0202936", + "tt0102488", + "tt0060440", + "tt0117161", + "tt2472102", + "tt0131013", + "tt1596769", + "tt1645116", + "tt0075944", + "tt2175581", + "tt3160336", + "tt0112342", + "tt0067296", + "tt0070187", + "tt1856053", + "tt0079148", + "tt2192580", + "tt0068281", + "tt0058113", + "tt5670836", + "tt0363587", + "tt0115487", + "tt10326928", + "tt0031867", + "tt0388141", + "tt3606752", + "tt0335185", + "tt0078294", + "tt2066922", + "tt1714205", + "tt2343707", + "tt5334108", + "tt0071115", + "tt5643768", + "tt0119365", + "tt0039357", + "tt1599351", + "tt5779686", + "tt9666394", + "tt0060880", + "tt0356150", + "tt0074285", + "tt1961307", + "tt9848404", + "tt2085741", + "tt3407562", + "tt0048387", + "tt7935392", + "tt0067367", + "tt0167456", + "tt4136008", + "tt0195714", + "tt8326250", + "tt0087799", + "tt1939659", + "tt1909270", + "tt6256978", + "tt5580252", + "tt0414982", + "tt1919184", + "tt0119081", + "tt0790781", + "tt0160127", + "tt0309593", + "tt1772422", + "tt1144884", + "tt0144084", + "tt6644200", + "tt1622979", + "tt0119731", + "tt2094760", + "tt5176648", + "tt3828090", + "tt3915560", + "tt3663890", + "tt0918531", + "tt8727992", + "tt1887746", + "tt5143270", + "tt6436666", + "tt0110099", + "tt0308506", + "tt1038693", + "tt5206170", + "tt1124048", + "tt4662062", + "tt1340418", + "tt2110388", + "tt0250720", + "tt1871420", + "tt2049554", + "tt0413893", + "tt6889806", + "tt0057212", + "tt3443808", + "tt1188474", + "tt0198371", + "tt3302498", + "tt6545220", + "tt0468795", + "tt0088449", + "tt0396445", + "tt4932388", + "tt0055502", + "tt0063822", + "tt0142892", + "tt0287539", + "tt10378798", + "tt0439226", + "tt5020372", + "tt1337671", + "tt0117276", + "tt5545862", + "tt0127349", + "tt8098480", + "tt1991191", + "tt0790804", + "tt0366174", + "tt9048318", + "tt6437228", + "tt3852042", + "tt0119942", + "tt0166792", + "tt0465142", + "tt5875632", + "tt5860852", + "tt5011604", + "tt8806104", + "tt2693610", + "tt4649856", + "tt0120716", + "tt1991180", + "tt0768212", + "tt3910148", + "tt0110066", + "tt2166500", + "tt0202641", + "tt0113089", + "tt1919174", + "tt0216930", + "tt1585660", + "tt1425933", + "tt0139615", + "tt2170499", + "tt7642542", + "tt0116130", + "tt0125454", + "tt1935742", + "tt5333842", + "tt0431021", + "tt0016039", + "tt4844148", + "tt1855325", + "tt2339741", + "tt5280664", + "tt0377109", + "tt0095963", + "tt1745784", + "tt0498381", + "tt1596365", + "tt1220634", + "tt1259521", + "tt0245674", + "tt0815245", + "tt0298130", + "tt0230600", + "tt0404032", + "tt0432021", + "tt0464141", + "tt0318627", + "tt0938330", + "tt2752772", + "tt0120804", + "tt4361050", + "tt2592614", + "tt0092076", + "tt2388715", + "tt4602066", + "tt2023587", + "tt1922777", + "tt1204977", + "tt0099994", + "tt0324216", + "tt0072271", + "tt1572315", + "tt0185937", + "tt2620590", + "tt0420294", + "tt0110978", + "tt0045888", + "tt11131032", + "tt0348836", + "tt2300975", + "tt1127180", + "tt0397065", + "tt7589524", + "tt0110148", + "tt0288477", + "tt0108026", + "tt3345528", + "tt0898098", + "tt3622110", + "tt0806203", + "tt3583186", + "tt6265828", + "tt0795351", + "tt0382628", + "tt4786282", + "tt1540011", + "tt11057912", + "tt4160708", + "tt0119152", + "tt0450385", + "tt8510350", + "tt8685520", + "tt1797498", + "tt2379713", + "tt8883524", + "tt3709718", + "tt5264178", + "tt0997093", + "tt0483826", + "tt1854564", + "tt0985056", + "tt0439115", + "tt4206516", + "tt2275543", + "tt1515179", + "tt3203462", + "tt0118073", + "tt2229301", + "tt0134618", + "tt1183672", + "tt1077252", + "tt4380580", + "tt1757816", + "tt0119848", + "tt4399590", + "tt1748260", + "tt6398054", + "tt10719984", + "tt6645236", + "tt0120906", + "tt2464508", + "tt2570224", + "tt0115907", + "tt1103984", + "tt2164770", + "tt10628006", + "tt0295254", + "tt2170369", + "tt0165336", + "tt3792884", + "tt2304870", + "tt3812722", + "tt0436331", + "tt0044486", + "tt0433405", + "tt3823672", + "tt0079894", + "tt5589212", + "tt7262346", + "tt6954136", + "tt0095889", + "tt10901588", + "tt8282042", + "tt0997184", + "tt0060461", + "tt7362036", + "tt1029360", + "tt0076009", + "tt0091778", + "tt0449086", + "tt0070047", + "tt0101744", + "tt0204313", + "tt0099528", + "tt0084516", + "tt0099720", + "tt2088974", + "tt0100776", + "tt0075922", + "tt0081421", + "tt0099818", + "tt0110832", + "tt1753773", + "tt0060944", + "tt0086199", + "tt0117876", + "tt11127054", + "tt0110530", + "tt0363589", + "tt0057311", + "tt4042994", + "tt0084133", + "tt2569772", + "tt1625350", + "tt1382722", + "tt3526098", + "tt1604115", + "tt0153225", + "tt1774400", + "tt6158692", + "tt1901033", + "tt2265567", + "tt1043877", + "tt2741452", + "tt4771568", + "tt0034272", + "tt1105512", + "tt0089274", + "tt2447908", + "tt1731755", + "tt0047885", + "tt0064353", + "tt1715827", + "tt2520516", + "tt0086137", + "tt0085211", + "tt0082377", + "tt0120135", + "tt0454841", + "tt0466909", + "tt0800069", + "tt0100258", + "tt0077681", + "tt1087431", + "tt7594384", + "tt0077394", + "tt10462646", + "tt1074638", + "tt0091680", + "tt0077402", + "tt4287350", + "tt0063350", + "tt0337592", + "tt0088993", + "tt0489018", + "tt0146675", + "tt0138510", + "tt0116365", + "tt1262416", + "tt0119215", + "tt0134084", + "tt0167404", + "tt1288558", + "tt0117571", + "tt0051588", + "tt0083907", + "tt0092991", + "tt0069938", + "tt0097388", + "tt0251736", + "tt7904606", + "tt0083972", + "tt0061847", + "tt0120082", + "tt5203824", + "tt0211443", + "tt0830515", + "tt0095179", + "tt0082418", + "tt0087298", + "tt0089173", + "tt0758746", + "tt0080761", + "tt0070351", + "tt0091080", + "tt0107254", + "tt10927576", + "tt0329101", + "tt3302078", + "tt4693358", + "tt0082411", + "tt0101917", + "tt0112819", + "tt0115906", + "tt2325014", + "tt0028661", + "tt0087800", + "tt0061407", + "tt0093629", + "tt0103003", + "tt0111686", + "tt0097981", + "tt0089686", + "tt0095742", + "tt1179056", + "tt0381061", + "tt3951732", + "tt0118912", + "tt3021360", + "tt0078517", + "tt0120764", + "tt0105327", + "tt2295712", + "tt3256226", + "tt0032130", + "tt1295085", + "tt0041694", + "tt0116731", + "tt0033766", + "tt0080431", + "tt2506388", + "tt6900644", + "tt5305246", + "tt1278469", + "tt0064782", + "tt0278413", + "tt1934335", + "tt5836576", + "tt1488164", + "tt5068162", + "tt5948944", + "tt0077118", + "tt8726442", + "tt7026230", + "tt10026172", + "tt6899800", + "tt8332666", + "tt6067832", + "tt5929750", + "tt1196339", + "tt6388082", + "tt7455754", + "tt0862856", + "tt2866708", + "tt0049103", + "tt1199557", + "tt0118665", + "tt1966385", + "tt0116240", + "tt0035616", + "tt0065528", + "tt0071973", + "tt0071771", + "tt3859052", + "tt3903416", + "tt0384537", + "tt1270781", + "tt0243931", + "tt0031295", + "tt4335520", + "tt3189862", + "tt0101698", + "tt9151704", + "tt5831936", + "tt0102789", + "tt0127722", + "tt0023464", + "tt2084093", + "tt0028141", + "tt0056062", + "tt1220217", + "tt2273004", + "tt0038622", + "tt0112571", + "tt0886531", + "tt5818782", + "tt1591095", + "tt0162661", + "tt3065204", + "tt7044076", + "tt3195644", + "tt1289401", + "tt0246578", + "tt0119695", + "tt5726086", + "tt1618442", + "tt0385880", + "tt0093560", + "tt0094721", + "tt1457767", + "tt3322940", + "tt5140878", + "tt0087332", + "tt0097428", + "tt2226417", + "tt0112642", + "tt1060253", + "tt6316816", + "tt1127682", + "tt8988748", + "tt1182942", + "tt0182983", + "tt2503990", + "tt3236962", + "tt5865966", + "tt4461390", + "tt7554632", + "tt5913798", + "tt6246534", + "tt10915286", + "tt5865326", + "tt7262990", + "tt1979376", + "tt5294518", + "tt8439204", + "tt0191074", + "tt1787767", + "tt1869416", + "tt4153828", + "tt8663446", + "tt2088871", + "tt1925446", + "tt0116752", + "tt0087020", + "tt4080598", + "tt6733446", + "tt2343475", + "tt0117338", + "tt2131541", + "tt0093139", + "tt0082367", + "tt2281065", + "tt0458242", + "tt1607577", + "tt2072145", + "tt0068776", + "tt5482752", + "tt7951038", + "tt2493466", + "tt2112143", + "tt0098532", + "tt1836210", + "tt1190708", + "tt0091151", + "tt0472230", + "tt3070506", + "tt0325033", + "tt0080996", + "tt9251718", + "tt2325909", + "tt0158692", + "tt9184066", + "tt2192900", + "tt0070078", + "tt1629377", + "tt2724304", + "tt0078437", + "tt2330933", + "tt0078078", + "tt0245562", + "tt1595354", + "tt0071229", + "tt2956666", + "tt0311519", + "tt0159485", + "tt0449073", + "tt3963812", + "tt0415345", + "tt3121122", + "tt5104330", + "tt8965432", + "tt0112681", + "tt1874757", + "tt1049406", + "tt0094675", + "tt0048527", + "tt2506632", + "tt5987374", + "tt3544734", + "tt7214964", + "tt0071762", + "tt7209510", + "tt0177215", + "tt0022905", + "tt0089114", + "tt2327397", + "tt0310933", + "tt4400688", + "tt0119256", + "tt0996979", + "tt0027407", + "tt2346046", + "tt5051150", + "tt5314638", + "tt0441889", + "tt5757520", + "tt1663631", + "tt0023349", + "tt2370686", + "tt7855072", + "tt0042376", + "tt5541140", + "tt6540084", + "tt6140294", + "tt0103247", + "tt5512756", + "tt0077651", + "tt0118892", + "tt5968156", + "tt0046806", + "tt0211181", + "tt1852154", + "tt6848094", + "tt5280018", + "tt0061610", + "tt0048975", + "tt0113253", + "tt0095271", + "tt0220506", + "tt1502407", + "tt1220715", + "tt0120694", + "tt0373883", + "tt0097474", + "tt1311067", + "tt0082495", + "tt6228640", + "tt0085636", + "tt0039312", + "tt4084954", + "tt0044509", + "tt1235548", + "tt1614950", + "tt5797828", + "tt1853533", + "tt1362141", + "tt4158876", + "tt7670212", + "tt1736046", + "tt2232404", + "tt0246592", + "tt2210855", + "tt5901672", + "tt3955230", + "tt1918727", + "tt0114469", + "tt0042677", + "tt7456544", + "tt2624662", + "tt1950192", + "tt4304382", + "tt4057956", + "tt1808339", + "tt0086873", + "tt0035959", + "tt3591836", + "tt7006938", + "tt8578738", + "tt4096810", + "tt0055361", + "tt0117119", + "tt3205630", + "tt0094137", + "tt3279870", + "tt3770272", + "tt2370528", + "tt7645780", + "tt0865907", + "tt0119360", + "tt4779072", + "tt6217306", + "tt0146838", + "tt0035608", + "tt0327437", + "tt0057093", + "tt0119778", + "tt2901582", + "tt2458412", + "tt8752498", + "tt4465572", + "tt10188156", + "tt0029604", + "tt0118147", + "tt0086379", + "tt10548944", + "tt9581518", + "tt3894094", + "tt5080804", + "tt8483272", + "tt0118570", + "tt8398892", + "tt10915930", + "tt9358192", + "tt2088957", + "tt10987544", + "tt1560779", + "tt7657364", + "tt0103016", + "tt0770751", + "tt6302006", + "tt10240438", + "tt2124190", + "tt7476524", + "tt0245120", + "tt2789014", + "tt0057435", + "tt5358014", + "tt9154936", + "tt0107079", + "tt0046331", + "tt0063256", + "tt6043142", + "tt4381382", + "tt0256103", + "tt0077360", + "tt7319822", + "tt10767720", + "tt0036692", + "tt0050500", + "tt8850036", + "tt1956618", + "tt5109302", + "tt0082894", + "tt0026338", + "tt7339248", + "tt7105440", + "tt0032467", + "tt1733729", + "tt3741316", + "tt2102499", + "tt3561818", + "tt0327665", + "tt2273024", + "tt2033981", + "tt0100449", + "tt0095362", + "tt1579956", + "tt2057499", + "tt8484370", + "tt10444096", + "tt4192552", + "tt0035746", + "tt0800325", + "tt5988012", + "tt0051816", + "tt3748354", + "tt6938602", + "tt0026942", + "tt3437996", + "tt1327196", + "tt5582306", + "tt0061433", + "tt0102592", + "tt8697266", + "tt1014807", + "tt1780862", + "tt0373024", + "tt0048603", + "tt2716062", + "tt4919766", + "tt0469111", + "tt0119892", + "tt0102598", + "tt3175350", + "tt0061385", + "tt3692768", + "tt5053156", + "tt0089393", + "tt0022626", + "tt0086250", + "tt0034449", + "tt6388074", + "tt5814530", + "tt10384806", + "tt0032145", + "tt4572116", + "tt0973790", + "tt6263828", + "tt0026421", + "tt0020081", + "tt2042712", + "tt0330602", + "tt1827415", + "tt5541240", + "tt5204636", + "tt2120025", + "tt5806798", + "tt10038028", + "tt6013186", + "tt0104009", + "tt5648966", + "tt0031477", + "tt4701702", + "tt2691040", + "tt4624724", + "tt10843676", + "tt4253360", + "tt1625345", + "tt1935139", + "tt0167190", + "tt0384488", + "tt0066413", + "tt3387560", + "tt1845796", + "tt5209072", + "tt2262157", + "tt0037966", + "tt0372311", + "tt1461395", + "tt2360430", + "tt0038780", + "tt0432373", + "tt0020642", + "tt0109297", + "tt3380800", + "tt2505294", + "tt3995504", + "tt7505148", + "tt0483578", + "tt3655414", + "tt0938341", + "tt1604900", + "tt1434423", + "tt4786802", + "tt5684550", + "tt0020641", + "tt1998393", + "tt0042488", + "tt3615204", + "tt4378066", + "tt0039111", + "tt2313306", + "tt4643670", + "tt0984057", + "tt0286261", + "tt1641398", + "tt0054016", + "tt2817548", + "tt5979556", + "tt5278806", + "tt1552192", + "tt5037296", + "tt0241760", + "tt0104181", + "tt0061380", + "tt0438204", + "tt0039337", + "tt0775529", + "tt2179191", + "tt0475936", + "tt2327507", + "tt0067458", + "tt0024314", + "tt3911850", + "tt3651512", + "tt3156000", + "tt0062706", + "tt0045682", + "tt3472928", + "tt5238824", + "tt3885442", + "tt0039783", + "tt0242888", + "tt2016901", + "tt10958282", + "tt1419318", + "tt3197176", + "tt4332232", + "tt2357770", + "tt0172627", + "tt0096280", + "tt5836262", + "tt0162360", + "tt7476416", + "tt2870306", + "tt0282698", + "tt0388419", + "tt0096223", + "tt5541848", + "tt6438096", + "tt1127228", + "tt0111653", + "tt0160216", + "tt0049902", + "tt2690572", + "tt1918911", + "tt8059382", + "tt0049007", + "tt2326087", + "tt2974726", + "tt0107819", + "tt1916766", + "tt3731792", + "tt0094824", + "tt4219652", + "tt0040919", + "tt0838164", + "tt1470859", + "tt0029010", + "tt0106639", + "tt0066542", + "tt0023196", + "tt2428170", + "tt3783746", + "tt0055811", + "tt2025586", + "tt0046085", + "tt0115710", + "tt0051849", + "tt2342421", + "tt0101757", + "tt10208198", + "tt4042818", + "tt1597070", + "tt4985564", + "tt0104756", + "tt0104187", + "tt7068896", + "tt9064764", + "tt0092268", + "tt5278596", + "tt4872998", + "tt0088286", + "tt2014346", + "tt7164714", + "tt0026205", + "tt4523928", + "tt0388500", + "tt2943946", + "tt0110442", + "tt0043465", + "tt4008566", + "tt8134742", + "tt10579992", + "tt1673376", + "tt5213870", + "tt2892340", + "tt8364368", + "tt7945420", + "tt0048401", + "tt3589172", + "tt7308310", + "tt4463894", + "tt0071212", + "tt0099002", + "tt0018524", + "tt3140958", + "tt0026983", + "tt0208502", + "tt0326769", + "tt3901260", + "tt1406161", + "tt0356176", + "tt6958760", + "tt7229730", + "tt2216748", + "tt0027367", + "tt0051844", + "tt6214928", + "tt0165831", + "tt0426615", + "tt3489996", + "tt2431074", + "tt0055524", + "tt0017584", + "tt0028683", + "tt7399140", + "tt4995858", + "tt0044431", + "tt1734550", + "tt6508408", + "tt0075887", + "tt3108154", + "tt0038104", + "tt2447318", + "tt0091295", + "tt2234315", + "tt7188058", + "tt1964887", + "tt2870350", + "tt9652888", + "tt3180912", + "tt0441782", + "tt1877688", + "tt0088107", + "tt4943998", + "tt0105682", + "tt0200120", + "tt0092260", + "tt0122800", + "tt6448406", + "tt7827658", + "tt0074792", + "tt0085218", + "tt3071192", + "tt2472668", + "tt7981480", + "tt7205942", + "tt7664228", + "tt0085635", + "tt0102545", + "tt5451244", + "tt1797547", + "tt9182284", + "tt0080040", + "tt5536398", + "tt6447952", + "tt7180392", + "tt0052169", + "tt7734218", + "tt0442286", + "tt1572769", + "tt4777004", + "tt5244762", + "tt4820284", + "tt0074419", + "tt0126301", + "tt0212830", + "tt3721070", + "tt0081648", + "tt0076767", + "tt0119223", + "tt0074836", + "tt0045316", + "tt6047298", + "tt2004262", + "tt8739752", + "tt4558830", + "tt9135944", + "tt6014434", + "tt8055324", + "tt8110640", + "tt5061570", + "tt4249710", + "tt0215516", + "tt4042834", + "tt0119783", + "tt0053902", + "tt8657548", + "tt1291547", + "tt0048752", + "tt10378980", + "tt7453418", + "tt0992993", + "tt5739478", + "tt0954541", + "tt5478698", + "tt0049778", + "tt0068245", + "tt0046931", + "tt6627134", + "tt0098471", + "tt0118798", + "tt0167423", + "tt0054652", + "tt8521500", + "tt0023194", + "tt0081283", + "tt2033965", + "tt1704161", + "tt0032612", + "tt5306084", + "tt0211941", + "tt3314958", + "tt8174450", + "tt1935828", + "tt4309834", + "tt7476856", + "tt6597488", + "tt10329696", + "tt9312100", + "tt6963760", + "tt7296606", + "tt10617150", + "tt07455754", + "tt8168966", + "tt3706960", + "tt1683524", + "tt7083208", + "tt0083951", + "tt3733138", + "tt3262534", + "tt7689532", + "tt2158695", + "tt6096414", + "tt7304196", + "tt1413527", + "tt0280760", + "tt1199503", + "tt0083694", + "tt0210075", + "tt0105187", + "tt4089412", + "tt0126917", + "tt0413879", + "tt2510820", + "tt0050560", + "tt0097781", + "tt7790040", + "tt7251048", + "tt0028772", + "tt0465436", + "tt7021088", + "tt0033383", + "tt4200326", + "tt5273284", + "tt7224520", + "tt0036098", + "tt0075845", + "tt4004608", + "tt0198021", + "tt10269016", + "tt2147822", + "tt0090966", + "tt6356228", + "tt0018773", + "tt0047944", + "tt0068658", + "tt3826242", + "tt0043299", + "tt3592340", + "tt0337711", + "tt0042767", + "tt0091129", + "tt5149490", + "tt0234354", + "tt0109067", + "tt8254080", + "tt0289213", + "tt8072488", + "tt0199000", + "tt0059512", + "tt4097116", + "tt7857076", + "tt6275372", + "tt0889671", + "tt4400784", + "tt0094924", + "tt0025878", + "tt0061089", + "tt2520394", + "tt0026667", + "tt5612564", + "tt8738176", + "tt11006464", + "tt0052191", + "tt3394592", + "tt0471561", + "tt0040095", + "tt0037343", + "tt0203230", + "tt9186684", + "tt0074740", + "tt2309260", + "tt0038165", + "tt0086186", + "tt0090945", + "tt1261954", + "tt0060414", + "tt0046269", + "tt0054809", + "tt1268989", + "tt0395972", + "tt9083124", + "tt2891174", + "tt0488380", + "tt5154678", + "tt3662308", + "tt3992752", + "tt3500822", + "tt3980372", + "tt4239548", + "tt5224012", + "tt1640642", + "tt2338356", + "tt1127884", + "tt3204632", + "tt0038264", + "tt5641542", + "tt0045328", + "tt2182057", + "tt10927122", + "tt3450112", + "tt4703660", + "tt3476724", + "tt3561204", + "tt3755706", + "tt0071164", + "tt0914819", + "tt1155508", + "tt6903636", + "tt0081404", + "tt6212934", + "tt2529132", + "tt5175636", + "tt6189676", + "tt1763236", + "tt8503162", + "tt10409666", + "tt2090669", + "tt0066256", + "tt8918746", + "tt0185456", + "tt8998220", + "tt3796388", + "tt5001436", + "tt7916276", + "tt5827496", + "tt4698584", + "tt5225488", + "tt0090095", + "tt0258960", + "tt4687464", + "tt0047203", + "tt0098708", + "tt5714322", + "tt3106868", + "tt6063090", + "tt6320538", + "tt5352846", + "tt9242798", + "tt5013688", + "tt1921149", + "tt0052194", + "tt0065611", + "tt7721542", + "tt0047050", + "tt0038250", + "tt3628334", + "tt4181052", + "tt5233410", + "tt0049815", + "tt2309788", + "tt1308138", + "tt3445306", + "tt0062425", + "tt0120678", + "tt0034485", + "tt0057090", + "tt4033926", + "tt4785662", + "tt1562392", + "tt1530923", + "tt3263306", + "tt1858725", + "tt2719448", + "tt0037366", + "tt0294806", + "tt0420757", + "tt4558042", + "tt0048767", + "tt9737136", + "tt6720618", + "tt0027214", + "tt9020130", + "tt5851904", + "tt1523406", + "tt9737182", + "tt6815320", + "tt2321405", + "tt0436216", + "tt0995739", + "tt9737102", + "tt1700810", + "tt2268732", + "tt0337960", + "tt8609368", + "tt0222713", + "tt2014338", + "tt0089679", + "tt8609374", + "tt3833520", + "tt0023753", + "tt6487050", + "tt0042513", + "tt0071384", + "tt0040869", + "tt1356763", + "tt1929276", + "tt5329376", + "tt0059927", + "tt0062673", + "tt4485246", + "tt4459890", + "tt0808506", + "tt6217368", + "tt0256739", + "tt7643622", + "tt3865850", + "tt9351980", + "tt0095326", + "tt4176776", + "tt10613572", + "tt3206616", + "tt6237512", + "tt0048119", + "tt0053740", + "tt0098600", + "tt0047580", + "tt0025710", + "tt0101272", + "tt2200376", + "tt3379456", + "tt0099364", + "tt7967672", + "tt0078199", + "tt1383251", + "tt0106220", + "tt0074687", + "tt0038574", + "tt0068562", + "tt10467292", + "tt0135706", + "tt6803390", + "tt8639316", + "tt0028669", + "tt3358654", + "tt4625320", + "tt2365416", + "tt2400359", + "tt0025094", + "tt0997264", + "tt0044040", + "tt5797798", + "tt0491044", + "tt1859573", + "tt2008633", + "tt0118113", + "tt0090856", + "tt0026685", + "tt1621819", + "tt0144640", + "tt1516586", + "tt2298304", + "tt2630300", + "tt4966020", + "tt3297586", + "tt0923752", + "tt2396671", + "tt4679136", + "tt0067321", + "tt4687108", + "tt2091398", + "tt2515472", + "tt0031067", + "tt2064713", + "tt8063826", + "tt1837683", + "tt0303353", + "tt6363646", + "tt4385944", + "tt2925664", + "tt2785390", + "tt9097270", + "tt0297181", + "tt6517902", + "tt7169514", + "tt9724076", + "tt8638524", + "tt1682940", + "tt1272051", + "tt1194624", + "tt6201302", + "tt8329290", + "tt0188503", + "tt0107472", + "tt0762114", + "tt2125666", + "tt1438461", + "tt1336619", + "tt7339938", + "tt4300480", + "tt0103994", + "tt1020938", + "tt0081182", + "tt0053374", + "tt1217243", + "tt0091260", + "tt0015768", + "tt6529772", + "tt3163844", + "tt0455857", + "tt2186715", + "tt0087164", + "tt2106403", + "tt1229381", + "tt0050201", + "tt4276206", + "tt0065603", + "tt0057985", + "tt0058007", + "tt0050957", + "tt0059403", + "tt8879946", + "tt0152037", + "tt0457430", + "tt0952682", + "tt0077936", + "tt0298845", + "tt0105063", + "tt0113672", + "tt2093995", + "tt2368182", + "tt3313324", + "tt0447166", + "tt4941032", + "tt6887540", + "tt3906002", + "tt0049619", + "tt0029047", + "tt6801218", + "tt0244970", + "tt0120478", + "tt2944424", + "tt0934706", + "tt0081505", + "tt2934218", + "tt0064240", + "tt8174646", + "tt6884380", + "tt7735930", + "tt2201772", + "tt3878978", + "tt2094883", + "tt7610858", + "tt1534351", + "tt3429774", + "tt1806954", + "tt6281148", + "tt6988208", + "tt8947352", + "tt7107018", + "tt0251654", + "tt1034032", + "tt0089126", + "tt5495294", + "tt0153888", + "tt0102564", + "tt0153815", + "tt0039169", + "tt2649370", + "tt2459160", + "tt6969980", + "tt5069564", + "tt5889372", + "tt0152202", + "tt8553606", + "tt3452710", + "tt6736198", + "tt9826668", + "tt0076649", + "tt0048665", + "tt0338188", + "tt3584496", + "tt9086910", + "tt8785034", + "tt7655142", + "tt0417658", + "tt3777102", + "tt7491968", + "tt2233406", + "tt0415380", + "tt0097530", + "tt4771056", + "tt2476436", + "tt0092671", + "tt0165773", + "tt1212456", + "tt2334593", + "tt0293176", + "tt1071909", + "tt1916719", + "tt2445812", + "tt0790721", + "tt2587366", + "tt2625790", + "tt10687642", + "tt0119951", + "tt0401420", + "tt1156398", + "tt1104684", + "tt0219952", + "tt0032221", + "tt0110365", + "tt0036891", + "tt2455402", + "tt0111739", + "tt7392060", + "tt3388060", + "tt1532958", + "tt0040823", + "tt0042742", + "tt0478970", + "tt0047086", + "tt7438912", + "tt6613952", + "tt3923116", + "tt9593792", + "tt8837018", + "tt0040679", + "tt3129484", + "tt7127700", + "tt0163745", + "tt3448214", + "tt4061760", + "tt0021040", + "tt4052768", + "tt5113868", + "tt8665806", + "tt6393026", + "tt6426028", + "tt0233600", + "tt1521877", + "tt10952752", + "tt1090665", + "tt6332628", + "tt3574822", + "tt1262863", + "tt8757960", + "tt6869362", + "tt6065538", + "tt0097116", + "tt7254768", + "tt0441796", + "tt10495912", + "tt6519762", + "tt8456696", + "tt9469842", + "tt3262168", + "tt10049848", + "tt2925642", + "tt7434324", + "tt8176462", + "tt7620218", + "tt6466058", + "tt1579236", + "tt6064520", + "tt8236848", + "tt0118002", + "tt0042669", + "tt3341448", + "tt8031130", + "tt6112524", + "tt6863222", + "tt3083932", + "tt0076213", + "tt2803424", + "tt0033314", + "tt1801026", + "tt0057940", + "tt2368412", + "tt0250798", + "tt0116823", + "tt0090830", + "tt2719024", + "tt3773386", + "tt0103924", + "tt7094352", + "tt0042893", + "tt1539489", + "tt5016028", + "tt2931920", + "tt9204408", + "tt0114759", + "tt0047985", + "tt2609776", + "tt4512444", + "tt5886420", + "tt7582508", + "tt5539054", + "tt1307442", + "tt5592796", + "tt0041571", + "tt8328716", + "tt2550300", + "tt0076804", + "tt0319901", + "tt5307018", + "tt10847330", + "tt4064912", + "tt0280477", + "tt0048250", + "tt0119734", + "tt0041700", + "tt2912120", + "tt0045557", + "tt0033094", + "tt0042783", + "tt0035441", + "tt0032477", + "tt0384533", + "tt1740002", + "tt0465676", + "tt9465588", + "tt6320628", + "tt6268222", + "tt1980942", + "tt4844348", + "tt2265080", + "tt1990218", + "tt0111835", + "tt0814077", + "tt0074270", + "tt0036872", + "tt3635300", + "tt0296845", + "tt2236358", + "tt0087129", + "tt0092559", + "tt0117781", + "tt2279786", + "tt0188453", + "tt3562966", + "tt2171902", + "tt0070248", + "tt0107131", + "tt8106570", + "tt4841610", + "tt3028418", + "tt3369248", + "tt0104743", + "tt6866006", + "tt2950052", + "tt4073952", + "tt0383694", + "tt2043893", + "tt6338476", + "tt0020827", + "tt0036629", + "tt0380736", + "tt0091877", + "tt4189442", + "tt0211915", + "tt0065134", + "tt0106968", + "tt0120448", + "tt0035209", + "tt0084628", + "tt0103905", + "tt0075177", + "tt0037017", + "tt0110631", + "tt2815072", + "tt0058888", + "tt0054310", + "tt0283509", + "tt0056119", + "tt0116334", + "tt0037824", + "tt0056172", + "tt0039822", + "tt0180748", + "tt0197569", + "tt0049259", + "tt0051790", + "tt0095993", + "tt1403047", + "tt0071315", + "tt0042327", + "tt0140888", + "tt0303325", + "tt2202607", + "tt6264182", + "tt1032846", + "tt1202511", + "tt0473514", + "tt0465670", + "tt5939924", + "tt6037626", + "tt9353586", + "tt0483726", + "tt6895284", + "tt0034778", + "tt2913916", + "tt1984244", + "tt8725958", + "tt0026121", + "tt0040082", + "tt3223480", + "tt4331400", + "tt0065486", + "tt0388838", + "tt2322441", + "tt8394314", + "tt2033239", + "tt1354572", + "tt1345904", + "tt0343663", + "tt0049474", + "tt2216704", + "tt6987652", + "tt4265962", + "tt0091991", + "tt4847454", + "tt0106748", + "tt0079688", + "tt0290747", + "tt1634070", + "tt0094716", + "tt1029432", + "tt6743942", + "tt3038414", + "tt0099615", + "tt2514128", + "tt2745684", + "tt0111667", + "tt0040577", + "tt0078790", + "tt0113612", + "tt0772157", + "tt6759380", + "tt0072403", + "tt0074174", + "tt0462359", + "tt0022353", + "tt3733286", + "tt3899516", + "tt2108629", + "tt0063748", + "tt5669410", + "tt0098221", + "tt0045943", + "tt0371835", + "tt4383196", + "tt6293032", + "tt0055019", + "tt3221910", + "tt2238660", + "tt0449471", + "tt3094236", + "tt0047603", + "tt0120107", + "tt1198199", + "tt0053644", + "tt0260495", + "tt0079376", + "tt0031143", + "tt6019394", + "tt10622136", + "tt1211837", + "tt0024381", + "tt1051213", + "tt4142394", + "tt0052722", + "tt0119832", + "tt4970632", + "tt0068313", + "tt0029942", + "tt0050166", + "tt0113755", + "tt3848036", + "tt5238904", + "tt5895028", + "tt1828163", + "tt0065206", + "tt0047349", + "tt0113936", + "tt0060728", + "tt6126196", + "tt0460793", + "tt2049633", + "tt5710514", + "tt0026174", + "tt0094155", + "tt1666823", + "tt1574600", + "tt4174526", + "tt0199013", + "tt3294206", + "tt3195826", + "tt0022268", + "tt4194392", + "tt0097790", + "tt6917210", + "tt0060980", + "tt0065225", + "tt2951834", + "tt0065775", + "tt2015381", + "tt6649108", + "tt6523440", + "tt8350360", + "tt1212449", + "tt4452210", + "tt0055993", + "tt0119870", + "tt7671414", + "tt5699928", + "tt5196516", + "tt7078658", + "tt6578572", + "tt10720210", + "tt2294629", + "tt10682000", + "tt6023242", + "tt8858420", + "tt5061564", + "tt0060816", + "tt6887624", + "tt0011565", + "tt0469045", + "tt0165473", + "tt0030035", + "tt6462506", + "tt6275296", + "tt0067698", + "tt0095878", + "tt0095853", + "tt0032610", + "tt0312932", + "tt0100605", + "tt0067770", + "tt2125500", + "tt0080931", + "tt3591946", + "tt0085871", + "tt3892618", + "tt0093056", + "tt0084651", + "tt0048640", + "tt0404802", + "tt0235751", + "tt0097982", + "tt9526152", + "tt0395584", + "tt6964076", + "tt0091051", + "tt6151222", + "tt5954556", + "tt5884784", + "tt0070509", + "tt1630311", + "tt4896224", + "tt0070640", + "tt6962906", + "tt5990342", + "tt0026266", + "tt3895884", + "tt3648510", + "tt1734548", + "tt0897249", + "tt2392385", + "tt0079655", + "tt2620204", + "tt0102609", + "tt2461226", + "tt0117332", + "tt1351133", + "tt6289128", + "tt1851922", + "tt2054817", + "tt5818768", + "tt2591720", + "tt0039437", + "tt3597108", + "tt3707284", + "tt0021152", + "tt4139598", + "tt0048705", + "tt3881494", + "tt1535102", + "tt3616986", + "tt1815836", + "tt0304283", + "tt0081353", + "tt1735233", + "tt7058080", + "tt0035019", + "tt5860940", + "tt0347484", + "tt4019346", + "tt9635902", + "tt1587310", + "tt0063465", + "tt0075164", + "tt0269856", + "tt3012214", + "tt0097521", + "tt0818226", + "tt2882426", + "tt8147680", + "tt1945052", + "tt0391877", + "tt2471626", + "tt0275719", + "tt7748076", + "tt0083793", + "tt0028216", + "tt1675761", + "tt0045815", + "tt0023488", + "tt2401037", + "tt3762944", + "tt7527564", + "tt0050837", + "tt2271327", + "tt1410229", + "tt0030149", + "tt0049333", + "tt1871279", + "tt0047264", + "tt0100631", + "tt4799426", + "tt0077663", + "tt0120596", + "tt7164422", + "tt0053675", + "tt10161398", + "tt2016335", + "tt0056096", + "tt5737938", + "tt2215211", + "tt0031212", + "tt0101550", + "tt6269810", + "tt1845273", + "tt0043728", + "tt1865368", + "tt0064382", + "tt0164108", + "tt5119260", + "tt0040553", + "tt0457655", + "tt7790894", + "tt0192080", + "tt7381444", + "tt6281936", + "tt0062898", + "tt4414858", + "tt1885171", + "tt6679794", + "tt0029751", + "tt5883570", + "tt1747960", + "tt0260492", + "tt0841119", + "tt3758162", + "tt10651668", + "tt6094746", + "tt8354582", + "tt0032701", + "tt0041859", + "tt6141334", + "tt4554186", + "tt7832848", + "tt0110939", + "tt10847194", + "tt6980962", + "tt7858616", + "tt4840922", + "tt7987702", + "tt6317236", + "tt7661028", + "tt5903358", + "tt6251390", + "tt6557938", + "tt8329618", + "tt3624210", + "tt4974396", + "tt8418126", + "tt3895908", + "tt0329030", + "tt1286821", + "tt0096754", + "tt0109287", + "tt0085919", + "tt0892899", + "tt0044573", + "tt0418753", + "tt0448179", + "tt0021730", + "tt0046906", + "tt0159421", + "tt0057897", + "tt0040513", + "tt2283740", + "tt3659162", + "tt1016164", + "tt0037313", + "tt0255798", + "tt0084597", + "tt0021508", + "tt0048973", + "tt1238293", + "tt2380123", + "tt0042700", + "tt0112444", + "tt7331424", + "tt0996966", + "tt6358156", + "tt5535726", + "tt5358146", + "tt0035982", + "tt5342950", + "tt0107659", + "tt0078212", + "tt0075152", + "tt0168972", + "tt0309530", + "tt0103157", + "tt0115016", + "tt7520286", + "tt5693562", + "tt3328924", + "tt0330904", + "tt0261833", + "tt10255320", + "tt3110272", + "tt0073518", + "tt1491616", + "tt0172711", + "tt0099757", + "tt0060272", + "tt0061868", + "tt0080469", + "tt2296909", + "tt4809166", + "tt7313350", + "tt7964004", + "tt1801061", + "tt9352426", + "tt0451187", + "tt2630134", + "tt4100252", + "tt8539280", + "tt2184233", + "tt1841792", + "tt1977881", + "tt3764966", + "tt0119594", + "tt2325989", + "tt0041259", + "tt0076426", + "tt0118901", + "tt5729870", + "tt2547650", + "tt1230376", + "tt7046974", + "tt4540384", + "tt2137170", + "tt0015014", + "tt4843344", + "tt3100750", + "tt0104073", + "tt1284973", + "tt6138688", + "tt2245049", + "tt4268722", + "tt4466490", + "tt4704422", + "tt0044014", + "tt0062038", + "tt0054483", + "tt6368132", + "tt6405384", + "tt5425946", + "tt3397430", + "tt2043879", + "tt3917118", + "tt5119268", + "tt1830538", + "tt5480782", + "tt1613092", + "tt1815790", + "tt3257072", + "tt2946084", + "tt0042339", + "tt0183766", + "tt0071247", + "tt3482362", + "tt0071269", + "tt4881430", + "tt6648926", + "tt0430919", + "tt2306511", + "tt4625334", + "tt0036515", + "tt1724597", + "tt8695220", + "tt0107478", + "tt1016315", + "tt3569014", + "tt0093637", + "tt2709766", + "tt3660856", + "tt8633120", + "tt1748062", + "tt0376215", + "tt0082619", + "tt6119504", + "tt0043983", + "tt5716650", + "tt4842646", + "tt2473476", + "tt0051003", + "tt2338251", + "tt2427224", + "tt0150176", + "tt0071532", + "tt0039461", + "tt0082763", + "tt3719452", + "tt0088680", + "tt0026071", + "tt1609113", + "tt8749922", + "tt5754892", + "tt7553766", + "tt6071068", + "tt1440110", + "tt1488606", + "tt0409860", + "tt0416857", + "tt6271806", + "tt1809315", + "tt0037494", + "tt2112868", + "tt0084893", + "tt0118826", + "tt0035751", + "tt0079510", + "tt0347200", + "tt4762758", + "tt0070155", + "tt4269256", + "tt4240878", + "tt0280491", + "tt0098994", + "tt3496286", + "tt0357580", + "tt0053242", + "tt0403508", + "tt0094072", + "tt1884414", + "tt0113538", + "tt1786714", + "tt0243558", + "tt6181974", + "tt0407851", + "tt1831617", + "tt7616974", + "tt0177650", + "tt7321190", + "tt6061610", + "tt0035417", + "tt2261735", + "tt1609962", + "tt0305772", + "tt2112331", + "tt3138024", + "tt2626338", + "tt8351452", + "tt0808435", + "tt4693860", + "tt8549088", + "tt0111512", + "tt0066498", + "tt8204772", + "tt2295318", + "tt6365796", + "tt10954364", + "tt0092563", + "tt5668208", + "tt0067500", + "tt7596220", + "tt0054973", + "tt3511960", + "tt1778338", + "tt4456982", + "tt0425598", + "tt3133722", + "tt2734974", + "tt2004271", + "tt5603620", + "tt2333598", + "tt3924144", + "tt1863203", + "tt3101132", + "tt9358206", + "tt3072182", + "tt2297063", + "tt2821832", + "tt2017711", + "tt3529110", + "tt3699674", + "tt3130776", + "tt1674047", + "tt2186663", + "tt2201548", + "tt2287030", + "tt1922748", + "tt1971397", + "tt3812348", + "tt0285682", + "tt3359872", + "tt1292569", + "tt3503068", + "tt2915134", + "tt8620646", + "tt0486761", + "tt10675136", + "tt5240748", + "tt5503594", + "tt5890998", + "tt5016946", + "tt1799516", + "tt2880448", + "tt3686630", + "tt4846318", + "tt5641138", + "tt5192124", + "tt3646322", + "tt7279188", + "tt0191132", + "tt10791618", + "tt5857874", + "tt5047424", + "tt6209400", + "tt2044856", + "tt4151400", + "tt5087462", + "tt4820702", + "tt3462896", + "tt4152212", + "tt3825450", + "tt3741700", + "tt6565702", + "tt0068295", + "tt7584702", + "tt1016307", + "tt0138393", + "tt0064048", + "tt0082252", + "tt0049804", + "tt0094980", + "tt8351882", + "tt0085859", + "tt0096153", + "tt0068272", + "tt0204745", + "tt0040537", + "tt0013140", + "tt2376442", + "tt0365830", + "tt8663516", + "tt3843532", + "tt6423140", + "tt0393635", + "tt0099316", + "tt0039501", + "tt1853805", + "tt6400614", + "tt4934152", + "tt0060098", + "tt3550078", + "tt1728981", + "tt4637878", + "tt8064262", + "tt5640450", + "tt0101591", + "tt4878526", + "tt0213790", + "tt2437004", + "tt3576048", + "tt2544074", + "tt10847138", + "tt2983602", + "tt4517738", + "tt1079444", + "tt7127976", + "tt2315144", + "tt5160154", + "tt0088103", + "tt5223514", + "tt1198054", + "tt6628234", + "tt6097228", + "tt8337080", + "tt0035195", + "tt10924716", + "tt0069986", + "tt4163224", + "tt1528813", + "tt3340434", + "tt0452685", + "tt0109542", + "tt0095107", + "tt7655590", + "tt0035369", + "tt7925066", + "tt5952138", + "tt0080904", + "tt0035244", + "tt1650058", + "tt0087287", + "tt7350614", + "tt6460046", + "tt0107745", + "tt0057933", + "tt0058382", + "tt6494358", + "tt4983314", + "tt6333090", + "tt4494090", + "tt0431213", + "tt0053717", + "tt0056825", + "tt0055205", + "tt3791268", + "tt3228754", + "tt1680102", + "tt0158583", + "tt0489212", + "tt3891970", + "tt0025423", + "tt1666335", + "tt1112097", + "tt3201722", + "tt0918511", + "tt2704578", + "tt4555594", + "tt5773882", + "tt1019454", + "tt6794380", + "tt0119699", + "tt0100053", + "tt8748236", + "tt10812748", + "tt1761007", + "tt0187512", + "tt1640714", + "tt4807950", + "tt7521370", + "tt2838678", + "tt5449296", + "tt10136840", + "tt0186506", + "tt2442662", + "tt0060175", + "tt4916700", + "tt9006968", + "tt7975674", + "tt4329098", + "tt6321270", + "tt8069048", + "tt3464018", + "tt5456120", + "tt0050653", + "tt0051456", + "tt0052713", + "tt0051081", + "tt0049748", + "tt0070926", + "tt0054058", + "tt0054446", + "tt0051866", + "tt7613996", + "tt7033192", + "tt0050405", + "tt0066549", + "tt4106264", + "tt7144200", + "tt0074811", + "tt0057192", + "tt0050087", + "tt4642192", + "tt7533756", + "tt7456310", + "tt0132381", + "tt0132378", + "tt0132377", + "tt5240372", + "tt0132379", + "tt0132385", + "tt0079661", + "tt5079674", + "tt0087700", + "tt0282179", + "tt0203835", + "tt0222355", + "tt6139732", + "tt0455583", + "tt6868606", + "tt0091278", + "tt0116353", + "tt3729914", + "tt1754750", + "tt0203425", + "tt0120747", + "tt2047885", + "tt7583968", + "tt0132376", + "tt0109783", + "tt4945528", + "tt0078915", + "tt1426320", + "tt0029870", + "tt5987526", + "tt6107570", + "tt2005156", + "tt0930072", + "tt2752736", + "tt2415372", + "tt4828330", + "tt2444092", + "tt6491170", + "tt8111130", + "tt7511368", + "tt2131532", + "tt8084572", + "tt10520800", + "tt0090655", + "tt7403614", + "tt3920060", + "tt6044910", + "tt0195960", + "tt1045889", + "tt0085895", + "tt0138074", + "tt0374639", + "tt0052303", + "tt5636922", + "tt5243900", + "tt6848602", + "tt0473107", + "tt0114113", + "tt4264834", + "tt0138541", + "tt0083193", + "tt3604950", + "tt6450330", + "tt0247527", + "tt7913994", + "tt2638140", + "tt5967066", + "tt8597908", + "tt1382370", + "tt2245884", + "tt5915572", + "tt0083021", + "tt5313906", + "tt1536440", + "tt2043900", + "tt6011454", + "tt3263946", + "tt3078242", + "tt7627782", + "tt0132384", + "tt0132383", + "tt0060277", + "tt0942896", + "tt8228884", + "tt2998364", + "tt0021331", + "tt2080418", + "tt5918090", + "tt8124666", + "tt4223204", + "tt4481066", + "tt0082329", + "tt0087710", + "tt0132380", + "tt0129273", + "tt9176638", + "tt0132382", + "tt0072067", + "tt0063599", + "tt3264194", + "tt0180683", + "tt0072848", + "tt7942742", + "tt4184494", + "tt6333082", + "tt3953274", + "tt3381600", + "tt3314978", + "tt1169829", + "tt1127877", + "tt9203030", + "tt0128137", + "tt0057393", + "tt2461684", + "tt5935072", + "tt1577040", + "tt2023659", + "tt0043646", + "tt0032342", + "tt2419354", + "tt0092948", + "tt0034428", + "tt3097084", + "tt4650516", + "tt3997238", + "tt1091744", + "tt0146984", + "tt0337631", + "tt2458786", + "tt0102571", + "tt4519914", + "tt5509634", + "tt0081176", + "tt2827908", + "tt2179007", + "tt1496460", + "tt2236160", + "tt5581284", + "tt8552406", + "tt5208252", + "tt6947808", + "tt1686027", + "tt5473124", + "tt1433099", + "tt0486651", + "tt7797926", + "tt9352926", + "tt5508108", + "tt0088213", + "tt5651050", + "tt5893906", + "tt0119988", + "tt5141862", + "tt2258685", + "tt5258306", + "tt3678980", + "tt5850176", + "tt7531138", + "tt4420110", + "tt9837502", + "tt0095599", + "tt4597622", + "tt0097964", + "tt0425661", + "tt2996076", + "tt0145048", + "tt0105819", + "tt4761870", + "tt0104291", + "tt0101455", + "tt0043286", + "tt0235737", + "tt4136056", + "tt0025456", + "tt2281215", + "tt0042195", + "tt0096310", + "tt4697742", + "tt2481238", + "tt0334416", + "tt2258233", + "tt0041625", + "tt0051105", + "tt2678448", + "tt4819986", + "tt0026056", + "tt9283302", + "tt4113114", + "tt1698651", + "tt4038052", + "tt0064921", + "tt6280182", + "tt0119305", + "tt0062235", + "tt4382552", + "tt7215262", + "tt0085249", + "tt2308822", + "tt6049106", + "tt2254131", + "tt2709716", + "tt4301440", + "tt7034316", + "tt6571274", + "tt5836706", + "tt0084861", + "tt4632888", + "tt1591584", + "tt0094025", + "tt3548442", + "tt0023181", + "tt6385768", + "tt5787384", + "tt0093840", + "tt6945932", + "tt1745862", + "tt10354036", + "tt0040379", + "tt6773126", + "tt0024481", + "tt2430084", + "tt0080801", + "tt0097728", + "tt2353092", + "tt9042456", + "tt0051141", + "tt2114058", + "tt2322672", + "tt2083294", + "tt0490822", + "tt0044683", + "tt0029120", + "tt4129180", + "tt0042447", + "tt0271367", + "tt4262174", + "tt4172146", + "tt8271188", + "tt0060171", + "tt0097770", + "tt0097443", + "tt5583554", + "tt1648044", + "tt5036924", + "tt8884430", + "tt3584354", + "tt7323546", + "tt1189897", + "tt1895534", + "tt0080012", + "tt0021128", + "tt9419834", + "tt10847306", + "tt0073596", + "tt6734054", + "tt0021165", + "tt0366621", + "tt0216048", + "tt3320550", + "tt8969332", + "tt0120053", + "tt2042583", + "tt0120684", + "tt1731985", + "tt2601044", + "tt7524414", + "tt0061658", + "tt0100491", + "tt2433118", + "tt3918748", + "tt7130110", + "tt7954000", + "tt9165664", + "tt3737840", + "tt8343294", + "tt6590856", + "tt5718764", + "tt1641410", + "tt0048034", + "tt0103639", + "tt10720196", + "tt6570372", + "tt4324916", + "tt2475154", + "tt1852786", + "tt6533240", + "tt0216200", + "tt3032096", + "tt2296697", + "tt3829874", + "tt0114319", + "tt6931984", + "tt0107985", + "tt4120298", + "tt8710040", + "tt0056173", + "tt5057140", + "tt2925730", + "tt5707274", + "tt8202020", + "tt0141369", + "tt8617844", + "tt0053901", + "tt0032209", + "tt0460925", + "tt0301454", + "tt3883234", + "tt0163983", + "tt7473890", + "tt4902216", + "tt1153698", + "tt2452352", + "tt6984456", + "tt0428441", + "tt0094946", + "tt1326869", + "tt0082200", + "tt2520808", + "tt1851900", + "tt6212136", + "tt3654506", + "tt4645636", + "tt5000724", + "tt0022403", + "tt0113114", + "tt6047906", + "tt0380268", + "tt1659261", + "tt5808796", + "tt6151244", + "tt0050861", + "tt0048801", + "tt6547044", + "tt0117918", + "tt1979388", + "tt0064637", + "tt2292148", + "tt4786236", + "tt2512582", + "tt0049096", + "tt7310906", + "tt1753767", + "tt0027686", + "tt0091587", + "tt1079956", + "tt3512956", + "tt0028944", + "tt7156436", + "tt8793990", + "tt0179389", + "tt0448022", + "tt0106539", + "tt0092718", + "tt1954886", + "tt0854678", + "tt4653606", + "tt0248640", + "tt6705860", + "tt8318648", + "tt6677418", + "tt4461676", + "tt0869152", + "tt7398584", + "tt0382932", + "tt3445280", + "tt10510166", + "tt5997492", + "tt4944460", + "tt7978660", + "tt0059415", + "tt7538788", + "tt9174828", + "tt4086024", + "tt5882206", + "tt4569878", + "tt0078788", + "tt1216475", + "tt8200998", + "tt7137640", + "tt5859352", + "tt0112641", + "tt7043534", + "tt5030904", + "tt1525836", + "tt1217209", + "tt10095336", + "tt6798722", + "tt2096673", + "tt3581384", + "tt6106822", + "tt3904360", + "tt0049087", + "tt2403931", + "tt0131149", + "tt2896898", + "tt0071696", + "tt0489007", + "tt3430482", + "tt0030764", + "tt0048724", + "tt0042198", + "tt1326220", + "tt5966990", + "tt0057889", + "tt3312100", + "tt0159784", + "tt2137351", + "tt0065494", + "tt0377091", + "tt0119807", + "tt5034266", + "tt5203320", + "tt2027178", + "tt0083657", + "tt0117092", + "tt3297554", + "tt4542660", + "tt0097257", + "tt0030044", + "tt3138122", + "tt0045566", + "tt5174284", + "tt4683668", + "tt0040446", + "tt5156530", + "tt6048930", + "tt0375173", + "tt5723286", + "tt5267472", + "tt1228953", + "tt3986532", + "tt2396589", + "tt3319212", + "tt5269374", + "tt5352432", + "tt7354868", + "tt7157574", + "tt7133686", + "tt7785392", + "tt6081408", + "tt6343706", + "tt5377658", + "tt7929156", + "tt1277936", + "tt0031385", + "tt3216766", + "tt7983844", + "tt0101545", + "tt6333060", + "tt0477139", + "tt9261574", + "tt0151905", + "tt9541602", + "tt0022153", + "tt0105059", + "tt4187452", + "tt4139588", + "tt2106651", + "tt6567544", + "tt1754853", + "tt0415965", + "tt0055471", + "tt3339354", + "tt0283026", + "tt0097758", + "tt2737304", + "tt0362269", + "tt0144214", + "tt0263238", + "tt4660086", + "tt0054292", + "tt0208074", + "tt6004848", + "tt5893100", + "tt6333096", + "tt0106701", + "tt0120710", + "tt0052809", + "tt0029217", + "tt1034072", + "tt0051221", + "tt7123974", + "tt0043117", + "tt0050680", + "tt1828976", + "tt0048312", + "tt5022702", + "tt7043012", + "tt5492496", + "tt0116311", + "tt3801730", + "tt0083854", + "tt0030287", + "tt0080157", + "tt3440298", + "tt0074179", + "tt0112435", + "tt0037522", + "tt4135896", + "tt5124104", + "tt0037094", + "tt0266543", + "tt4065316", + "tt10309088", + "tt0944101", + "tt0112368", + "tt4338184", + "tt0069131", + "tt2011972", + "tt2318701", + "tt3219678", + "tt4936064", + "tt2081178", + "tt1389098", + "tt0323939", + "tt7521860", + "tt1471346", + "tt1576378", + "tt3576352", + "tt5280980", + "tt1122614", + "tt0045175", + "tt0094747", + "tt0103125", + "tt9082020", + "tt0073470", + "tt2277860", + "tt0054205", + "tt0066448", + "tt0479500", + "tt0119125", + "tt0412366", + "tt0337917", + "tt3815136", + "tt3488184", + "tt0316768", + "tt0119715", + "tt0016220", + "tt1386691", + "tt6446550", + "tt1326264", + "tt7274546", + "tt8783798", + "tt6690860", + "tt0075629", + "tt5981656", + "tt8080302", + "tt1814842", + "tt6143782", + "tt10521814", + "tt2435970", + "tt4006384", + "tt2865618", + "tt9053472", + "tt2871776", + "tt8655738", + "tt4935462", + "tt0054033", + "tt2960470", + "tt0499516", + "tt3102440", + "tt0062144", + "tt2581664", + "tt2071582", + "tt6147514", + "tt0093668", + "tt3091304", + "tt0053457", + "tt4271918", + "tt0052278", + "tt1648035", + "tt2195498", + "tt3186984", + "tt3359754", + "tt0038765", + "tt0089904", + "tt0290210", + "tt5028698", + "tt1227378", + "tt0048719", + "tt0216584", + "tt3772640", + "tt6205994", + "tt3322134", + "tt10902020", + "tt0024069", + "tt0045992", + "tt0101912", + "tt3164198", + "tt0077698", + "tt3701804", + "tt1440756", + "tt3499084", + "tt6710212", + "tt2654522", + "tt0057007", + "tt3332308", + "tt5033790", + "tt1245098", + "tt1465471", + "tt3781476", + "tt8381988", + "tt3689590", + "tt8426594", + "tt3816372", + "tt0433362", + "tt6679242", + "tt5742304", + "tt10907772", + "tt0040495", + "tt2507128", + "tt4310022", + "tt4729426", + "tt0092676", + "tt7715192", + "tt1736049", + "tt3858454", + "tt6146586", + "tt0102558", + "tt0338427", + "tt1579247", + "tt5215486", + "tt1322313", + "tt2977110", + "tt0081738", + "tt0133985", + "tt4026034", + "tt6022898", + "tt1674785", + "tt9063470", + "tt6892378", + "tt0036172", + "tt4201522", + "tt0091934", + "tt4882698", + "tt6432062", + "tt5215088", + "tt8425264", + "tt0058580", + "tt0109190", + "tt5519340", + "tt0221309", + "tt2505938", + "tt0036630", + "tt1823059", + "tt0073133", + "tt0081746", + "tt6052748", + "tt1622563", + "tt1020876", + "tt0174792", + "tt0033105", + "tt0285175", + "tt0043924", + "tt4338138", + "tt1699509", + "tt7697712", + "tt0108515", + "tt9831136", + "tt4353250", + "tt0119670", + "tt0036881", + "tt0177262", + "tt0492494", + "tt6051096", + "tt5755912", + "tt0092074", + "tt0023153", + "tt5936578", + "tt6643608", + "tt0059460", + "tt0032273", + "tt0116589", + "tt1748043", + "tt0087096", + "tt1196165", + "tt5164412", + "tt2041510", + "tt2911666", + "tt0059309", + "tt0406650", + "tt2402200", + "tt0109959", + "tt8861802", + "tt4425200", + "tt0069824", + "tt5773116", + "tt8695030", + "tt0478049", + "tt1920885", + "tt0102958", + "tt0107438", + "tt6874254", + "tt1954299", + "tt0053361", + "tt3660770", + "tt2103159", + "tt1931388", + "tt1945228", + "tt0120238", + "tt0253867", + "tt4629266", + "tt0107937", + "tt8284860", + "tt0050126", + "tt2498626", + "tt1753549", + "tt0033717", + "tt0080948", + "tt0119219", + "tt0093405", + "tt0060560", + "tt4647900", + "tt4819510", + "tt0087968", + "tt0120034", + "tt0138467", + "tt0265010", + "tt4524992", + "tt5690958", + "tt6047388", + "tt9219868", + "tt2177180", + "tt0083449", + "tt0196499", + "tt0462499", + "tt0056632", + "tt6856056", + "tt8585940", + "tt0492492", + "tt1990352", + "tt1513089", + "tt2064960", + "tt1112115", + "tt0037404", + "tt6619250", + "tt0045294", + "tt0139491", + "tt0069349", + "tt1667485", + "tt0082591", + "tt0208850", + "tt2355540", + "tt0064287", + "tt4776324", + "tt0163759", + "tt6739646", + "tt0209274", + "tt2304747", + "tt10810030", + "tt0389326", + "tt1368117", + "tt0077598", + "tt0206190", + "tt0087660", + "tt0285094", + "tt4157220", + "tt6522668", + "tt4219836", + "tt0360033", + "tt2294551", + "tt1974308", + "tt1462014", + "tt5730248", + "tt5510970", + "tt0363282", + "tt1697920", + "tt0209191", + "tt5563100", + "tt1592784", + "tt0099044", + "tt0116016", + "tt5066870", + "tt0372334", + "tt0091790", + "tt0309061", + "tt5076184", + "tt8226078", + "tt3243636", + "tt0082534", + "tt1695831", + "tt2223678", + "tt4524432", + "tt4772396", + "tt2040281", + "tt4729466", + "tt4105466", + "tt0406280", + "tt0393435", + "tt0040019", + "tt0064815", + "tt3824032", + "tt7692966", + "tt0028165", + "tt0461847", + "tt3823018", + "tt0102497", + "tt3640682", + "tt0048575", + "tt0066919", + "tt0028275", + "tt5076032", + "tt1515203", + "tt6169920", + "tt0903618", + "tt0082081", + "tt0209110", + "tt0022080", + "tt0062322", + "tt0434953", + "tt8296608", + "tt0061524", + "tt0056053", + "tt0176684", + "tt4373956", + "tt8559006", + "tt0026394", + "tt0923709", + "tt4144368", + "tt0070809", + "tt0132683", + "tt7205208", + "tt0311599", + "tt0025592", + "tt5788528", + "tt7037544", + "tt5566660", + "tt4711926", + "tt3654964", + "tt1486616", + "tt8499102", + "tt0351540", + "tt4411466", + "tt2136914", + "tt3471440", + "tt0289390", + "tt3741860", + "tt3141954", + "tt1741225", + "tt0265591", + "tt3794392", + "tt2559192", + "tt0972883", + "tt6329716", + "tt3246874", + "tt3699104", + "tt0137799", + "tt0113762", + "tt8483220", + "tt1579361", + "tt9358228", + "tt6077540", + "tt5646136", + "tt7639528", + "tt6423428", + "tt8515700", + "tt7472330", + "tt6998390", + "tt0847817", + "tt1083462", + "tt3813334", + "tt2609912", + "tt3486626", + "tt5097970", + "tt0116095", + "tt0045808", + "tt1860242", + "tt2545428", + "tt0110186", + "tt1312251", + "tt0023876", + "tt0019702", + "tt0494652", + "tt7866702", + "tt0310910", + "tt0038601", + "tt0026008", + "tt0960790", + "tt1032821", + "tt1742081", + "tt5834576", + "tt5776928", + "tt9730648", + "tt0046903", + "tt5692030", + "tt9730640", + "tt9730644", + "tt7999850", + "tt0088178", + "tt0326208", + "tt0180734", + "tt0037150", + "tt0393597", + "tt1091617", + "tt8922118", + "tt3253624", + "tt7203052", + "tt0100740", + "tt5875654", + "tt0086397", + "tt0093660", + "tt0043565", + "tt4188766", + "tt0047123", + "tt0314097", + "tt0116410", + "tt0081964", + "tt0038461", + "tt0110057", + "tt3201640", + "tt1155592", + "tt1283952", + "tt0258038", + "tt9088954", + "tt4861558", + "tt4624852", + "tt2281095", + "tt5783630", + "tt1972663", + "tt5804038", + "tt5638642", + "tt1687247", + "tt6165936", + "tt0083959", + "tt0039416", + "tt0260191", + "tt1241317", + "tt5327410", + "tt0120913", + "tt0171363", + "tt0974959", + "tt0163988", + "tt0005077", + "tt0157191", + "tt0103241", + "tt0808146", + "tt0185014", + "tt0258153", + "tt1371585", + "tt4483100", + "tt3177392", + "tt2459022", + "tt0185431", + "tt6809094", + "tt0940709", + "tt0119137", + "tt0071567", + "tt0130585", + "tt0163978", + "tt3748172", + "tt0284837", + "tt0290095", + "tt0120885", + "tt0120828", + "tt2295034", + "tt0384680", + "tt0398165", + "tt0159568", + "tt0110377", + "tt0172493", + "tt0032762", + "tt0427944", + "tt0454945", + "tt0335245", + "tt3967856", + "tt0067503", + "tt0130908", + "tt0115433", + "tt0061181", + "tt0061023", + "tt0126642", + "tt0092005", + "tt0456554", + "tt7557212", + "tt3188290", + "tt0390384", + "tt2186791", + "tt4110086", + "tt0104534", + "tt0213065", + "tt0060594", + "tt0060143", + "tt0109322", + "tt0065677", + "tt0064647", + "tt0075834", + "tt0060550", + "tt0052667", + "tt1810633", + "tt0208654", + "tt0073869", + "tt0067134", + "tt8433858", + "tt0082570", + "tt0065794", + "tt2644072", + "tt0065812", + "tt0131042", + "tt3692082", + "tt0094274", + "tt0403237", + "tt1024855", + "tt1094249", + "tt0185266", + "tt7932490", + "tt4229298", + "tt0167261", + "tt3822614", + "tt4738912", + "tt2187107", + "tt0167260", + "tt0458364", + "tt0120737", + "tt8708304", + "tt0054020", + "tt8400758", + "tt1986998", + "tt5066616", + "tt2015462", + "tt6400316", + "tt2197240", + "tt0102888", + "tt2726560", + "tt4653818", + "tt7905880", + "tt7363336", + "tt6471090", + "tt0101523", + "tt0119358", + "tt6496816", + "tt2992220", + "tt2576452", + "tt7474914", + "tt2536512", + "tt7036840", + "tt3153806", + "tt7665846", + "tt3767278", + "tt9024106", + "tt5174974", + "tt0028970", + "tt0066017", + "tt5265980", + "tt1489887", + "tt6920356", + "tt7150512", + "tt8300786", + "tt7264462", + "tt0058962", + "tt5774054", + "tt0468536", + "tt6830716", + "tt0295192", + "tt7349910", + "tt0117110", + "tt1798188", + "tt0117002", + "tt1234541", + "tt0062994", + "tt0077588", + "tt0084805", + "tt0046057", + "tt0045616", + "tt0099401", + "tt0048691", + "tt0049038", + "tt0049408", + "tt0379217", + "tt0051622", + "tt1821549", + "tt0055630", + "tt1692486", + "tt0055608", + "tt0062136", + "tt0067372", + "tt0062755", + "tt0069113", + "tt0089092", + "tt0106620", + "tt0443473", + "tt0078754", + "tt0056443", + "tt1014759", + "tt0236784", + "tt2820852", + "tt0091083", + "tt1182350", + "tt5770864", + "tt9860728", + "tt0200138", + "tt0120630", + "tt0098524", + "tt1193631", + "tt9213932", + "tt2103281", + "tt0366551", + "tt1646971", + "tt0047472", + "tt7464188", + "tt0091059", + "tt0021635", + "tt1629757", + "tt0096344", + "tt0428870", + "tt0481369", + "tt0847167", + "tt0105236", + "tt1657284", + "tt0291848", + "tt0852975", + "tt0091225", + "tt2654430", + "tt1549571", + "tt6564620", + "tt4781700", + "tt1078885", + "tt0010323", + "tt3438640", + "tt0240122", + "tt2088714", + "tt5779286", + "tt0099290", + "tt4701546", + "tt0082335", + "tt1506458", + "tt0434541", + "tt0078343", + "tt0237572", + "tt0068654", + "tt1756632", + "tt0062957", + "tt4771932", + "tt0443527", + "tt4217172", + "tt0122037", + "tt10856726", + "tt0090610", + "tt0042531", + "tt0076709", + "tt0784816", + "tt0042315", + "tt0053768", + "tt2986512", + "tt0484439", + "tt3158440", + "tt0052530", + "tt2665228", + "tt0043546", + "tt0079063", + "tt6578116", + "tt4738360", + "tt1976009", + "tt0180093", + "tt3070242", + "tt8842950", + "tt3032274", + "tt4273562", + "tt3833748", + "tt3699372", + "tt0397039", + "tt8497794", + "tt0086872", + "tt0046754", + "tt3652978", + "tt0089572", + "tt7555072", + "tt0006309", + "tt0108053", + "tt0484382", + "tt0146271", + "tt0012364", + "tt0160401", + "tt0080569", + "tt0084090", + "tt5361488", + "tt0320193", + "tt0113703", + "tt0048441", + "tt0192120", + "tt0029381", + "tt0006032", + "tt1869724", + "tt5864236", + "tt0049126", + "tt0005571", + "tt0005044", + "tt0212720", + "tt0075250", + "tt0309150", + "tt3416828", + "tt1860353", + "tt0419984", + "tt0848537", + "tt2172402", + "tt1094666", + "tt0087277", + "tt0864835", + "tt2387499", + "tt7696328", + "tt1911658", + "tt7215444", + "tt1502712", + "tt0046425", + "tt7704762", + "tt3583688", + "tt5348190", + "tt6237314", + "tt1324999", + "tt3323314", + "tt2934696", + "tt1104001", + "tt9109006", + "tt2604224", + "tt6604050", + "tt0820142", + "tt7825514", + "tt10579468", + "tt3696610", + "tt0454864", + "tt8218662", + "tt0454876", + "tt6234016", + "tt0094226", + "tt4731136", + "tt6838918", + "tt2596246", + "tt0107144", + "tt9411860", + "tt10224134", + "tt0120363", + "tt3512900", + "tt2334871", + "tt2267968", + "tt9251326", + "tt1679335", + "tt0435761", + "tt3079380", + "tt1935859", + "tt6184958", + "tt0277434", + "tt8351424", + "tt2224026", + "tt0317705", + "tt5431950", + "tt0114709", + "tt9358084", + "tt2679042", + "tt0397892", + "tt6029796", + "tt6319714", + "tt1431045", + "tt7843600", + "tt9303030", + "tt8354344", + "tt3682448", + "tt2091256", + "tt5782140", + "tt4654844", + "tt8649148", + "tt0065550", + "tt0092099", + "tt7099756", + "tt0069398", + "tt7207006", + "tt3655452", + "tt2267998", + "tt8093094", + "tt7597454", + "tt3512486", + "tt7973608", + "tt6669590", + "tt0063127", + "tt0145955", + "tt0022017", + "tt5595364", + "tt8020378", + "tt6499572", + "tt2374452", + "tt4846340", + "tt4046784", + "tt6294822", + "tt0206827", + "tt1816012", + "tt6770548", + "tt6197848", + "tt0011841", + "tt1529567", + "tt5463088", + "tt0831888", + "tt1111821", + "tt1485796", + "tt2673996", + "tt2235815", + "tt1587157", + "tt3385516", + "tt1790864", + "tt0107681", + "tt0443690", + "tt1512316", + "tt2316204", + "tt2361423", + "tt2417218", + "tt0089374", + "tt0108461", + "tt3402236", + "tt0026185", + "tt0095403", + "tt0142247", + "tt3830998", + "tt0142245", + "tt0418141", + "tt5480520", + "tt0400370", + "tt0035749", + "tt0015202", + "tt0061552", + "tt4400714", + "tt0066517", + "tt0069421", + "tt3726252", + "tt0069783", + "tt2873282", + "tt0074462", + "tt0423977", + "tt3847390", + "tt3916100", + "tt2065952", + "tt1245534", + "tt4774372", + "tt2690718", + "tt1869718", + "tt0255773", + "tt0077740", + "tt0096341", + "tt2190193", + "tt2025516", + "tt6026818", + "tt2833768", + "tt1388595", + "tt1828127", + "tt2011314", + "tt4571194", + "tt1107142", + "tt1713799", + "tt0064866", + "tt7958736", + "tt2283336", + "tt1365540", + "tt2938978", + "tt5328796", + "tt2328922", + "tt6295106", + "tt9759938", + "tt0353164", + "tt8711274", + "tt1976540", + "tt0382301", + "tt2004361", + "tt1107134", + "tt6296148", + "tt0119280", + "tt9647330", + "tt0385568", + "tt5323662", + "tt1739212", + "tt5731132", + "tt1741669", + "tt0113326", + "tt3689910", + "tt2888046", + "tt5973984", + "tt3245794", + "tt4769824", + "tt6099462", + "tt3739614", + "tt6449358", + "tt0347791", + "tt1564058", + "tt2364071", + "tt6035470", + "tt0466947", + "tt0428144", + "tt1831611", + "tt0494222", + "tt0109456", + "tt5871184", + "tt0404286", + "tt2540072", + "tt0060167", + "tt0354210", + "tt4264202", + "tt0104146", + "tt0070288", + "tt0120371", + "tt0127357", + "tt1646232", + "tt1130089", + "tt1206345", + "tt2065968", + "tt08439204", + "tt1690470", + "tt4007502", + "tt5884052", + "tt1505118", + "tt3391348", + "tt5994834", + "tt0063612", + "tt0061515", + "tt0120692", + "tt0104361", + "tt5781006", + "tt0824326", + "tt4698718", + "tt9301146", + "tt0108598", + "tt0037363", + "tt3954876", + "tt10801352", + "tt4448290", + "tt7080960", + "tt1082588", + "tt0390521", + "tt0120245", + "tt10260408", + "tt9184016", + "tt3263598", + "tt5762174", + "tt1411956", + "tt3258142", + "tt0289365", + "tt3231010", + "tt2180529", + "tt0089050", + "tt2111283", + "tt2632708", + "tt1948394", + "tt2224075", + "tt1454110", + "tt0270291", + "tt1018886", + "tt1821374", + "tt0109838", + "tt0100024", + "tt0130445", + "tt0109609", + "tt0436595", + "tt1800759", + "tt0922522", + "tt0109049", + "tt1433813", + "tt0108148", + "tt3579524", + "tt0115952", + "tt4337072", + "tt4016942", + "tt0270444", + "tt0838265", + "tt2636124", + "tt0387412", + "tt0465925", + "tt0813789", + "tt3017864", + "tt0007194", + "tt0823671", + "tt6186940", + "tt0858497", + "tt0140803", + "tt2460976", + "tt0049949", + "tt0005812", + "tt3399998", + "tt0016332", + "tt0005810", + "tt4154796", + "tt0064855", + "tt0005489", + "tt9206798", + "tt0143808", + "tt0083291", + "tt1265587", + "tt0101357", + "tt3120960", + "tt0279919", + "tt0020697", + "tt0036104", + "tt1024215", + "tt3897880", + "tt5572720", + "tt0177240", + "tt2078523", + "tt1849027", + "tt0353515", + "tt7275822", + "tt1629443", + "tt0331068", + "tt0099158", + "tt0095941", + "tt0119595", + "tt3742300", + "tt1675758", + "tt5458888", + "tt3293138", + "tt0465517", + "tt0081366", + "tt0061761", + "tt5320124", + "tt0050872", + "tt4820162", + "tt0898949", + "tt2527560", + "tt7158736", + "tt7776838", + "tt6669086", + "tt2604846", + "tt0425548", + "tt0056406", + "tt2332857", + "tt0376263", + "tt6423362", + "tt8769848", + "tt0048600", + "tt1764454", + "tt0845464", + "tt3378384", + "tt2327948", + "tt0104503", + "tt5328006", + "tt1794886", + "tt7294636", + "tt8991338", + "tt3714492", + "tt1622566", + "tt2592582", + "tt2224073", + "tt1671582", + "tt1117379", + "tt3619972", + "tt1079974", + "tt0133104", + "tt2093928", + "tt2150163", + "tt0366598", + "tt0416051", + "tt0258534", + "tt3576666", + "tt2426266", + "tt8648640", + "tt0362942", + "tt0086606", + "tt1802727", + "tt4804142", + "tt0044876", + "tt0892391", + "tt6029724", + "tt0077332", + "tt0083284", + "tt0135037", + "tt0070119", + "tt2180578", + "tt1259570", + "tt4224478", + "tt2391821", + "tt1703049", + "tt0163494", + "tt0042970", + "tt0072008", + "tt0082525", + "tt0067236", + "tt0075432", + "tt8028526", + "tt0048543", + "tt3455730", + "tt0047087", + "tt6382412", + "tt1578709", + "tt5892486", + "tt4450624", + "tt5931670", + "tt0111293", + "tt4669296", + "tt0117757", + "tt1352386", + "tt5337544", + "tt5580688", + "tt6183104", + "tt5634088", + "tt3949952", + "tt6256872", + "tt0069279", + "tt1536437", + "tt0091902", + "tt2917336", + "tt5589362", + "tt1948563", + "tt1646922", + "tt7614404", + "tt6354568", + "tt0067025", + "tt0297721", + "tt1039651", + "tt0063159", + "tt2411128", + "tt7480958", + "tt3723780", + "tt7051624", + "tt0066612", + "tt0073941", + "tt5969404", + "tt8917964", + "tt0071544", + "tt5699154", + "tt0077373", + "tt4097826", + "tt0015224", + "tt8888186", + "tt2332573", + "tt3830194", + "tt2066051", + "tt1776196", + "tt0075852", + "tt0056012", + "tt5284414", + "tt5216534", + "tt1468322", + "tt1726286", + "tt4307880", + "tt6548966", + "tt0485323", + "tt2476624", + "tt8385474", + "tt1675163", + "tt5519566", + "tt1298644", + "tt6874878", + "tt2085795", + "tt0047937", + "tt5004766", + "tt7752126", + "tt0069753", + "tt0100581", + "tt0071537", + "tt2375379", + "tt0069017", + "tt2396429", + "tt1105263", + "tt0068629", + "tt1485763", + "tt1148261", + "tt1339302", + "tt0090186", + "tt1715210", + "tt9775360", + "tt1599296", + "tt2091885", + "tt2183302", + "tt5251328", + "tt1426325", + "tt0085872", + "tt0810924", + "tt0780492", + "tt0093563", + "tt0068310", + "tt1241330", + "tt0065602", + "tt6542108", + "tt0089206", + "tt0107165", + "tt0870937", + "tt0166789", + "tt0293416", + "tt0193253", + "tt3003668", + "tt0084674", + "tt7046002", + "tt6739094", + "tt0075415", + "tt0232114", + "tt3206074", + "tt4235644", + "tt3306776", + "tt0069540", + "tt3538328", + "tt0102812", + "tt0270933", + "tt2048804", + "tt6848624", + "tt1636780", + "tt1754177", + "tt1235790", + "tt2423504", + "tt3288930", + "tt0806102", + "tt10578106", + "tt4123262", + "tt1869235", + "tt0497633", + "tt1843961", + "tt2935564", + "tt0110153", + "tt0162236", + "tt2230422", + "tt0090197", + "tt0838178", + "tt1232824", + "tt0073031", + "tt0961108", + "tt1922612", + "tt4919484", + "tt8247470", + "tt7692822", + "tt7089628", + "tt6172460", + "tt9657544", + "tt0192701", + "tt4604246", + "tt9100028", + "tt8976710", + "tt0493322", + "tt2230434", + "tt4172746", + "tt0184503", + "tt0049446", + "tt0113142", + "tt5311514", + "tt0062363", + "tt0116390", + "tt0783601", + "tt0087344", + "tt4590806", + "tt0107027", + "tt5396646", + "tt0094884", + "tt1630254", + "tt0314111", + "tt0064860", + "tt0366526", + "tt0399102", + "tt10720098", + "tt7493808", + "tt7487314", + "tt0097444", + "tt10308686", + "tt9904820", + "tt0279112", + "tt3958494", + "tt5066564", + "tt9185816", + "tt0109916", + "tt0071992", + "tt4377918", + "tt9315000", + "tt0113187", + "tt2585736", + "tt0101962", + "tt6143850", + "tt5101956", + "tt10431274", + "tt0255198", + "tt3263758", + "tt5441540", + "tt6890376", + "tt3171784", + "tt7615302", + "tt0470679", + "tt0104352", + "tt0049169", + "tt2188010", + "tt6782276", + "tt0291341", + "tt8819596", + "tt6034164", + "tt6295304", + "tt1037223", + "tt0295529", + "tt0090888", + "tt3190158", + "tt0088256", + "tt2948266", + "tt4188436", + "tt2139919", + "tt10497352", + "tt1229405", + "tt6052206", + "tt2275769", + "tt1727523", + "tt0110123", + "tt10662450", + "tt3484128", + "tt9451848", + "tt3638508", + "tt2837830", + "tt0063308", + "tt9724068", + "tt9840958", + "tt2322296", + "tt0105810", + "tt2234419", + "tt3462676", + "tt0036400", + "tt1347008", + "tt0075109", + "tt2566350", + "tt0119406", + "tt1554966", + "tt2125501", + "tt3204012", + "tt0081432", + "tt1333667", + "tt3457486", + "tt1957996", + "tt1261900", + "tt3053202", + "tt0080159", + "tt0330548", + "tt4102722", + "tt6391356", + "tt0039595", + "tt1462397", + "tt5561598", + "tt7334346", + "tt10087988", + "tt3016642", + "tt0457286", + "tt5753236", + "tt4151002", + "tt6932340", + "tt1560985", + "tt5266456", + "tt6388200", + "tt6704988", + "tt6961862", + "tt3760702", + "tt5845440", + "tt0054377", + "tt4325644", + "tt5505862", + "tt6525952", + "tt5098548", + "tt1358232", + "tt2106514", + "tt0062151", + "tt1698010", + "tt0093871", + "tt2048865", + "tt1093842", + "tt0066924", + "tt1931549", + "tt3178174", + "tt0081696", + "tt0062082", + "tt0069390", + "tt0026246", + "tt0118647", + "tt0108102", + "tt0098513", + "tt0068334", + "tt0278435", + "tt0104265", + "tt0247425", + "tt1981115", + "tt0263734", + "tt4073682", + "tt10240612", + "tt0120772", + "tt3204734", + "tt10644588", + "tt0318411", + "tt0491747", + "tt1764285", + "tt5031332", + "tt7006206", + "tt0286797", + "tt2339703", + "tt6032328", + "tt1810858", + "tt6389316", + "tt1239242", + "tt0800369", + "tt10624458", + "tt1331064", + "tt0050783", + "tt0100589", + "tt0068416", + "tt3227442", + "tt0096332", + "tt7061818", + "tt7266728", + "tt10136908", + "tt1464763", + "tt4875504", + "tt3469592", + "tt0078950", + "tt0077188", + "tt0068152", + "tt0145503", + "tt6545160", + "tt3824950", + "tt0226800", + "tt8985618", + "tt4897358", + "tt0082766", + "tt5116230", + "tt0067429", + "tt2555268", + "tt2400894", + "tt0058631", + "tt2101347", + "tt0116571", + "tt6608386", + "tt0075984", + "tt0083131", + "tt2113007", + "tt0081112", + "tt1534335", + "tt0065997", + "tt0092137", + "tt3686998", + "tt0070039", + "tt8050084", + "tt10638540", + "tt0861772", + "tt0230512", + "tt5777628", + "tt0114011", + "tt5243490", + "tt0085640", + "tt0123324", + "tt3884282", + "tt8961266", + "tt7844166", + "tt0371746", + "tt3113456", + "tt2076850", + "tt7645122", + "tt0092997", + "tt0339412", + "tt7645502", + "tt1009012", + "tt2401147", + "tt0071585", + "tt1300854", + "tt2926926", + "tt2062996", + "tt7737502", + "tt0085328", + "tt1830792", + "tt1293751", + "tt0082000", + "tt6231398", + "tt0031887", + "tt4733736", + "tt0380066", + "tt4857806", + "tt0069809", + "tt6874134", + "tt1228705", + "tt0106926", + "tt5358714", + "tt0988982", + "tt3009772", + "tt0093207", + "tt0114563", + "tt0074360", + "tt0064208", + "tt9144476", + "tt6659936", + "tt0077559", + "tt1525835", + "tt4618398", + "tt1160524", + "tt0092501", + "tt0058567", + "tt0054067", + "tt0093306", + "tt2358911", + "tt1481363", + "tt2210479", + "tt2358913", + "tt1839494", + "tt0142237", + "tt0069191", + "tt0353014", + "tt0286737", + "tt4944658", + "tt0110725", + "tt1121794", + "tt3717532", + "tt5715828", + "tt1414581", + "tt0142236", + "tt1645048", + "tt3361792", + "tt1527788", + "tt0081318", + "tt0055377", + "tt0039402", + "tt2704212", + "tt2371287", + "tt2263944", + "tt0142242", + "tt0142241", + "tt1125254", + "tt3819668", + "tt3541262", + "tt0085127", + "tt1911533", + "tt7689946", + "tt6083230", + "tt0028816", + "tt6290258", + "tt2308711", + "tt6878382", + "tt5878194", + "tt7449376", + "tt6490930", + "tt9153882", + "tt7238634", + "tt3993350", + "tt0107692", + "tt7942746", + "tt0758742", + "tt0810827", + "tt9759612", + "tt0068524", + "tt4839422", + "tt0033740", + "tt0037635", + "tt1043842", + "tt1080926", + "tt0860907", + "tt0069266", + "tt0860906", + "tt0923811", + "tt0910949", + "tt3392330", + "tt0065143", + "tt1694115", + "tt0401233", + "tt8234502", + "tt3886508", + "tt8315128", + "tt6949868", + "tt4255622", + "tt2614776", + "tt0040522", + "tt5097070", + "tt4092774", + "tt3530882", + "tt8318702", + "tt5531032", + "tt2649274", + "tt7116000", + "tt7014234", + "tt8571404", + "tt3865478", + "tt3699354", + "tt4668860", + "tt0072195", + "tt6807324", + "tt8123728", + "tt10369978", + "tt5254198", + "tt0969216", + "tt4875844", + "tt5259184", + "tt8109800", + "tt3966500", + "tt7711764", + "tt1506950", + "tt2198063", + "tt3692652", + "tt0075740", + "tt1891806", + "tt5460858", + "tt4103306", + "tt0065568", + "tt4664568", + "tt2355871", + "tt0049774", + "tt0047926", + "tt5241534", + "tt3461882", + "tt0049693", + "tt6850758", + "tt0047962", + "tt0060311", + "tt0047133", + "tt0048423", + "tt1691832", + "tt0046743", + "tt6315750", + "tt0048077", + "tt0076049", + "tt06064378", + "tt0120576", + "tt0048420", + "tt0054099", + "tt8525560", + "tt0026718", + "tt6075718", + "tt0101439", + "tt0373450", + "tt2256811", + "tt3466476", + "tt8488340", + "tt6513406", + "tt6461526", + "tt8549254", + "tt8420952", + "tt5464204", + "tt8747288", + "tt0087980", + "tt8880188", + "tt4064488", + "tt2762662", + "tt0114885", + "tt0090768", + "tt0821638", + "tt0086366", + "tt0112437", + "tt9013956", + "tt0375104", + "tt0074207", + "tt0460792", + "tt0084675", + "tt0476995", + "tt0081480", + "tt0083170", + "tt0052005", + "tt4063438", + "tt0372279", + "tt10545040", + "tt1284578", + "tt6109168", + "tt4143306", + "tt0380728", + "tt7972178", + "tt0110201", + "tt0924263", + "tt5668850", + "tt0106696", + "tt0114794", + "tt0034478", + "tt7031474", + "tt9737150", + "tt0399019", + "tt0163081", + "tt7124090", + "tt0117221", + "tt0163532", + "tt0075347", + "tt0116866", + "tt7461300", + "tt0089866", + "tt0261739", + "tt1941704", + "tt6107558", + "tt3687316", + "tt0035230", + "tt0084076", + "tt1398991", + "tt1954617", + "tt5403488", + "tt0928125", + "tt6939372", + "tt9049072", + "tt0023902", + "tt0167925", + "tt0109382", + "tt8706988", + "tt0163849", + "tt0036659", + "tt8020896", + "tt0036621", + "tt0103596", + "tt0038222", + "tt5792490", + "tt1625155", + "tt5325492", + "tt2036416", + "tt7851500", + "tt6434022", + "tt0098690", + "tt5056842", + "tt1673423", + "tt0113292", + "tt5167966", + "tt2972098", + "tt4834622", + "tt0071465", + "tt7753158", + "tt0194314", + "tt3752930", + "tt4195368", + "tt7930006", + "tt5622770", + "tt0071232", + "tt0315521", + "tt4788638", + "tt4231508", + "tt0018037", + "tt3952226", + "tt0221007", + "tt3421246", + "tt2097267", + "tt3419894", + "tt0019254", + "tt0019901", + "tt0019725", + "tt0096003", + "tt0026138", + "tt0015532", + "tt0019760", + "tt3721048", + "tt9382396", + "tt7133580", + "tt0974977", + "tt0017765", + "tt9645348", + "tt5190578", + "tt5178264", + "tt0242695", + "tt2899120", + "tt6848930", + "tt1380784", + "tt0039686", + "tt7335324", + "tt3311020", + "tt5769414", + "tt2812356", + "tt5729246", + "tt5278458", + "tt4717204", + "tt0400174", + "tt3673764", + "tt10131230", + "tt4222732", + "tt5514632", + "tt3404158", + "tt8752440", + "tt0048091", + "tt3958276", + "tt1433001", + "tt5556068", + "tt2500670", + "tt3148576", + "tt5467852", + "tt3182620", + "tt0026261", + "tt6047374", + "tt6269434", + "tt0023594", + "tt0386423", + "tt5460986", + "tt10656752", + "tt1977894", + "tt6078842", + "tt1193092", + "tt9534958", + "tt0080472", + "tt1759744", + "tt0053084", + "tt6269368", + "tt0100318", + "tt6038042", + "tt4180560", + "tt0263265", + "tt8444450", + "tt0114690", + "tt2117892", + "tt0065932", + "tt0286049", + "tt2283017", + "tt0469062", + "tt2509902", + "tt9358044", + "tt2713886", + "tt5117372", + "tt5472614", + "tt8618420", + "tt0414951", + "tt2741624", + "tt0119165", + "tt3029558", + "tt6184932", + "tt0163563", + "tt6865728", + "tt0219671", + "tt3029556", + "tt2363564", + "tt4807908", + "tt1686313", + "tt3812366", + "tt3570006", + "tt3084294", + "tt0112913", + "tt3715896", + "tt5633396", + "tt7266388", + "tt3876372", + "tt0090557", + "tt2546434", + "tt0092214", + "tt8060774", + "tt0068286", + "tt0097005", + "tt0093435", + "tt1786503", + "tt2825120", + "tt7262782", + "tt0097441", + "tt6289898", + "tt10349958", + "tt2656588", + "tt0076916", + "tt0064756", + "tt0049849", + "tt3952246", + "tt0073559", + "tt5735464", + "tt0059740", + "tt4840686", + "tt0057163", + "tt7185492", + "tt2653264", + "tt3846972", + "tt3550344", + "tt0006864", + "tt0070884", + "tt1554523", + "tt4287848", + "tt0054940", + "tt0165489", + "tt1985144", + "tt3709442", + "tt7286500", + "tt0155722", + "tt0906765", + "tt3872778", + "tt5271582", + "tt8999864", + "tt2845166", + "tt0090305", + "tt3399024", + "tt0037175", + "tt1683431", + "tt2770290", + "tt0301181", + "tt1185418", + "tt4552118", + "tt3264102", + "tt1714886", + "tt4995776", + "tt2966934", + "tt2938416", + "tt3343350", + "tt3575624", + "tt8511530", + "tt0945356", + "tt0060794", + "tt2126403", + "tt0101020", + "tt1860355", + "tt6215712", + "tt2137267", + "tt2970510", + "tt9872556", + "tt2166804", + "tt2271387", + "tt2509922", + "tt2518788", + "tt0768116", + "tt2332522", + "tt0068444", + "tt0112446", + "tt1845773", + "tt3311384", + "tt0097052", + "tt1244668", + "tt2499076", + "tt1183732", + "tt1824254", + "tt1693039", + "tt0073836", + "tt3421270", + "tt2345864", + "tt3033478", + "tt3120508", + "tt7906262", + "tt0437086", + "tt7038632", + "tt3131532", + "tt10521638", + "tt7528504", + "tt10442108", + "tt7756492", + "tt9695662", + "tt0039871", + "tt9004516", + "tt0075893", + "tt6776300", + "tt0069995", + "tt10461826", + "tt10654432", + "tt0077532", + "tt9038026", + "tt5300154", + "tt10584048", + "tt1226766", + "tt4598848", + "tt7223050", + "tt0067245", + "tt4938484", + "tt1456660", + "tt0056127", + "tt6332276", + "tt3924262", + "tt0071413", + "tt1570583", + "tt3995006", + "tt5168832", + "tt0118818", + "tt1893218", + "tt4284010", + "tt0421199", + "tt3043590", + "tt4460032", + "tt3982706", + "tt0024360", + "tt4626970", + "tt0065760", + "tt0047073", + "tt0074085", + "tt0128142", + "tt0036125", + "tt0035386", + "tt9638206", + "tt0035007", + "tt4911408", + "tt5079362", + "tt2234462", + "tt0110771", + "tt1683048", + "tt6255230", + "tt0847212", + "tt2713938", + "tt7449274", + "tt8925102", + "tt6601502", + "tt7374952", + "tt5125894", + "tt4606514", + "tt7286492", + "tt0106698", + "tt7358686", + "tt7946422", + "tt4113346", + "tt9838372", + "tt1325773", + "tt3157640", + "tt0077924", + "tt0082399", + "tt1737591", + "tt0207359", + "tt3894404", + "tt4477106", + "tt5553436", + "tt0847187", + "tt1754546", + "tt5058340", + "tt2247566", + "tt0040979", + "tt6189344", + "tt2909724", + "tt2182163", + "tt0220507", + "tt3341268", + "tt6692368", + "tt0118662", + "tt3240784", + "tt0047259", + "tt1385633", + "tt5539264", + "tt5644726", + "tt0054906", + "tt5613848", + "tt2331143", + "tt5092272", + "tt4143384", + "tt4162910", + "tt0096114", + "tt0070121", + "tt3125652", + "tt3272570", + "tt3118874", + "tt3504604", + "tt0103262", + "tt5605076", + "tt7007696", + "tt3707114", + "tt4143508", + "tt1598725", + "tt1696192", + "tt2822584", + "tt1827378", + "tt0083281", + "tt7890550", + "tt3785740", + "tt4126312", + "tt0077485", + "tt5309954", + "tt0416207", + "tt2417154", + "tt8236566", + "tt2301147", + "tt3905662", + "tt2937254", + "tt4717798", + "tt0086013", + "tt0867411", + "tt0093175", + "tt1721693", + "tt3630556", + "tt1403854", + "tt1236472", + "tt2350608", + "tt4066748", + "tt3367686", + "tt3484800", + "tt1401664", + "tt2440214", + "tt0490935", + "tt2025526", + "tt3351386", + "tt1297943", + "tt3715406", + "tt0082009", + "tt3544654", + "tt1844025", + "tt2737926", + "tt0041268", + "tt3685922", + "tt0111776", + "tt0807726", + "tt2244889", + "tt1542485", + "tt4229236", + "tt2299368", + "tt4458368", + "tt1600429", + "tt1403129", + "tt0206754", + "tt2440362", + "tt0297144", + "tt0052629", + "tt3546370", + "tt3339376", + "tt3572132", + "tt0040481", + "tt2409300", + "tt2112307", + "tt1384926", + "tt3458236", + "tt2582426", + "tt0077993", + "tt2005363", + "tt2077766", + "tt1401663", + "tt1837494", + "tt2368672", + "tt2466346", + "tt3179402", + "tt2208568", + "tt2086853", + "tt3237154", + "tt0455475", + "tt2854894", + "tt6159734", + "tt0088128", + "tt1885448", + "tt0025037", + "tt1344008", + "tt0064991", + "tt9780416", + "tt0077372", + "tt0077362", + "tt6716912", + "tt0045991", + "tt0040740", + "tt1986089", + "tt6792282", + "tt0122689", + "tt1677603", + "tt4885784", + "tt1806906", + "tt0089501", + "tt7941194", + "tt1504416", + "tt0056417", + "tt1865450", + "tt0064886", + "tt8401820", + "tt2546394", + "tt1572503", + "tt0360032", + "tt2129928", + "tt0053434", + "tt0928406", + "tt2510434", + "tt3861390", + "tt02609758", + "tt0036699", + "tt7177324", + "tt5658240", + "tt2308260", + "tt7561364", + "tt0077838", + "tt9451086", + "tt1869491", + "tt0067457", + "tt1666792", + "tt2583814", + "tt1478841", + "tt4082506", + "tt2396566", + "tt4136828", + "tt0097539", + "tt2393817", + "tt2721152", + "tt2072029", + "tt0093489", + "tt0058294", + "tt0778631", + "tt10532840", + "tt0346578", + "tt2205904", + "tt1816608", + "tt1753967", + "tt3809492", + "tt0064519", + "tt0062301", + "tt1636849", + "tt1242544", + "tt2282917", + "tt1806805", + "tt0484855", + "tt0077800", + "tt3184096", + "tt0078405", + "tt2177827", + "tt0072209", + "tt1703923", + "tt2360446", + "tt1606636", + "tt1350546", + "tt2459156", + "tt1971571", + "tt0065579", + "tt0102458", + "tt1087841", + "tt0412637", + "tt2066048", + "tt0069451", + "tt6284564", + "tt0315930", + "tt0004972", + "tt2295196", + "tt0087803", + "tt8785052", + "tt0107565", + "tt0049083", + "tt1188988", + "tt0140397", + "tt0078269", + "tt4264716", + "tt9146030", + "tt0092641", + "tt0076645", + "tt6522084", + "tt5372350", + "tt0024028", + "tt6126346", + "tt0040370", + "tt0265808", + "tt10009434", + "tt9395794", + "tt1056036", + "tt4764490", + "tt0101761", + "tt1368116", + "tt1226232", + "tt9358204", + "tt1815852", + "tt4986926", + "tt4594286", + "tt2274648", + "tt1447793", + "tt0196708", + "tt0074291", + "tt2106550", + "tt0082416", + "tt0429573", + "tt1172571", + "tt1077262", + "tt1907614", + "tt7262882", + "tt0111201", + "tt0118998", + "tt0073036", + "tt1109574", + "tt2181959", + "tt7775622", + "tt0057345", + "tt1728976", + "tt0057091", + "tt0078058", + "tt1034305", + "tt0354690", + "tt0036055", + "tt0048512", + "tt0120133", + "tt0113552", + "tt0066491", + "tt1956671", + "tt7582890", + "tt1221208", + "tt2403393", + "tt6226908", + "tt0020163", + "tt0053604", + "tt0071487", + "tt0057960", + "tt0074901", + "tt0075824", + "tt0041719", + "tt0066534", + "tt0015841", + "tt0073858", + "tt0021375", + "tt0024216", + "tt0058249", + "tt0322824", + "tt0035881", + "tt0910559", + "tt0079013", + "tt0206394", + "tt0109771", + "tt0034978", + "tt5424984", + "tt0044364", + "tt0022718", + "tt0054599", + "tt0139153", + "tt8546396", + "tt0106364", + "tt0050083", + "tt0143127", + "tt0233298", + "tt1946502", + "tt0086264", + "tt7962932", + "tt1787759", + "tt1194271", + "tt4420040", + "tt5002838", + "tt1712170", + "tt0091168", + "tt1754438", + "tt1131728", + "tt2622988", + "tt0024941", + "tt0770728", + "tt4621398", + "tt0027068", + "tt6493648", + "tt0150926", + "tt1813519", + "tt2196430", + "tt2061822", + "tt0373926", + "tt0331468", + "tt1704201", + "tt1628039", + "tt1618421", + "tt0020447", + "tt1651328", + "tt1718755", + "tt0019701", + "tt0142092", + "tt1762300", + "tt1646967", + "tt0023393", + "tt0023855", + "tt2215719", + "tt2095742", + "tt2402539", + "tt1785389", + "tt2014202", + "tt4859168", + "tt2139881", + "tt0051759", + "tt0130637", + "tt6221660", + "tt1698008", + "tt3270538", + "tt0056196", + "tt8761814", + "tt6187794", + "tt7649620", + "tt1493157", + "tt2339367", + "tt0278295", + "tt0217355", + "tt6166196", + "tt3311588", + "tt0043949", + "tt0117038", + "tt5285494", + "tt0029819", + "tt3282076", + "tt1360767", + "tt0050171", + "tt0258000", + "tt10466908", + "tt10219384", + "tt8666494", + "tt3294732", + "tt7575440", + "tt0038190", + "tt1602098", + "tt1152827", + "tt4444956", + "tt0822868", + "tt1452599", + "tt0044829", + "tt0120176", + "tt1563704", + "tt7268388", + "tt1183251", + "tt1582621", + "tt1231580", + "tt1118045", + "tt1223236", + "tt1560957", + "tt1529635", + "tt1204315", + "tt1503769", + "tt1610528", + "tt8228538", + "tt4459156", + "tt1334512", + "tt1442486", + "tt1247400", + "tt1561768", + "tt1139115", + "tt5613402", + "tt1173907", + "tt6648932", + "tt1143143", + "tt4913966", + "tt2177843", + "tt5837976", + "tt0305396", + "tt6722030", + "tt6675736", + "tt10327712", + "tt0805619", + "tt0837796", + "tt0796368", + "tt0815138", + "tt0120102", + "tt0469640", + "tt1073241", + "tt1042503", + "tt1093824", + "tt0961097", + "tt1086340", + "tt1079964", + "tt0349467", + "tt0405469", + "tt1033468", + "tt0082940", + "tt0816539", + "tt0414055", + "tt0444682", + "tt0808417", + "tt1007018", + "tt1003118", + "tt0050302", + "tt0814131", + "tt0439289", + "tt0431197", + "tt0049224", + "tt0114728", + "tt0102443", + "tt0102994", + "tt0460810", + "tt5350358", + "tt0772193", + "tt0435696", + "tt0395495", + "tt0064664", + "tt0138324", + "tt0484207", + "tt0379557", + "tt0044537", + "tt0479948", + "tt0478337", + "tt0097202", + "tt4283414", + "tt2633666", + "tt0094061", + "tt0082612", + "tt0072136", + "tt0082499", + "tt0093876", + "tt0055318", + "tt1684567", + "tt0075764", + "tt3808102", + "tt0092830", + "tt0057102", + "tt0070782", + "tt5734548", + "tt6126492", + "tt3832126", + "tt4862506", + "tt1068646", + "tt5457484", + "tt0299988", + "tt6772246", + "tt0084099", + "tt0937347", + "tt0062829", + "tt0080066", + "tt0065595", + "tt0100506", + "tt0062732", + "tt1196630", + "tt3853830", + "tt1269734", + "tt0039211", + "tt0053961", + "tt0089269", + "tt2415710", + "tt0496350", + "tt0128232", + "tt0448172", + "tt0051380", + "tt7207398", + "tt0400347", + "tt1078899", + "tt0259288", + "tt2482856", + "tt0052639", + "tt0060866", + "tt0322659", + "tt1386011", + "tt2251306", + "tt0160644", + "tt1684936", + "tt0975673", + "tt0043574", + "tt5113926", + "tt0319531", + "tt0449077", + "tt2814080", + "tt0348505", + "tt0448115", + "tt6418918", + "tt1504385", + "tt3883282", + "tt0071080", + "tt0400944", + "tt7159616", + "tt4076980", + "tt0497116", + "tt0488612", + "tt0199314", + "tt3717234", + "tt0770742", + "tt4241824", + "tt8663942", + "tt10076722", + "tt0251656", + "tt6858002", + "tt6632338", + "tt0405832", + "tt3201736", + "tt0065230", + "tt5421078", + "tt0047680", + "tt8484012", + "tt0250494", + "tt3074952", + "tt1182345", + "tt6411748", + "tt4769214", + "tt4078160", + "tt0435716", + "tt0083096", + "tt3244786", + "tt0067658", + "tt0051114", + "tt6076226", + "tt0070770", + "tt0070687", + "tt3613314", + "tt0047279", + "tt0050771", + "tt5153860", + "tt0074703", + "tt0074608", + "tt1261046", + "tt0100079", + "tt0095286", + "tt3147336", + "tt0068619", + "tt7302054", + "tt0090750", + "tt1785277", + "tt0041332", + "tt0419491", + "tt0057267", + "tt1942831", + "tt1663628", + "tt0071857", + "tt3027716", + "tt0068529", + "tt8998472", + "tt0059503", + "tt7298400", + "tt0078797", + "tt5457926", + "tt0075838", + "tt3465710", + "tt8115320", + "tt0010435", + "tt0002130", + "tt8184202", + "tt0011293", + "tt0028436", + "tt0011144", + "tt7336572", + "tt4717402", + "tt0087246", + "tt0051404", + "tt5258726", + "tt0113464", + "tt0065518", + "tt4331776", + "tt2217790", + "tt3663680", + "tt2040398", + "tt4766342", + "tt7342170", + "tt2949296", + "tt2319739", + "tt0093416", + "tt0092298", + "tt5163286", + "tt1943014", + "tt0058403", + "tt1390539", + "tt0214871", + "tt0045339", + "tt0073615", + "tt0073901", + "tt4937564", + "tt2769828", + "tt1068669", + "tt0077318", + "tt1087524", + "tt0075294", + "tt6336270", + "tt5933560", + "tt3567194", + "tt0049431", + "tt0047947", + "tt4577344", + "tt0099377", + "tt4843046", + "tt0082812", + "tt1651894", + "tt0775543", + "tt0092933", + "tt3899262", + "tt1290472", + "tt1240538", + "tt4509084", + "tt0110307", + "tt6483364", + "tt2807548", + "tt4340720", + "tt2978576", + "tt0096769", + "tt0096464", + "tt5657932", + "tt1367177", + "tt2734110", + "tt0105410", + "tt0411267", + "tt2188831", + "tt4765610", + "tt6268882", + "tt0100618", + "tt3465302", + "tt6741026", + "tt6140354", + "tt7043148", + "tt2553444", + "tt2048905", + "tt3986352", + "tt0075638", + "tt3640710", + "tt3495774", + "tt4110978", + "tt2516500", + "tt2179211", + "tt0796307", + "tt0027905", + "tt3249352", + "tt4624532", + "tt5865284", + "tt4880942", + "tt0055198", + "tt0116922", + "tt3188994", + "tt0301214", + "tt0023245", + "tt0076820", + "tt0027200", + "tt0057463", + "tt5460522", + "tt6198946", + "tt10239930", + "tt3141846", + "tt4183140", + "tt6014472", + "tt0074372", + "tt1440379", + "tt0065851", + "tt2450440", + "tt0070814", + "tt2420166", + "tt6215044", + "tt3042626", + "tt0051565", + "tt0070222", + "tt5152640", + "tt0039931", + "tt1290471", + "tt2298394", + "tt0051028", + "tt0066585", + "tt0084633", + "tt7083526", + "tt4519006", + "tt0113080", + "tt0064694", + "tt1265621", + "tt1922679", + "tt1179071", + "tt5767628", + "tt2461340", + "tt2293750", + "tt0056625", + "tt1394329", + "tt2805976", + "tt0069715", + "tt2069955", + "tt9036998", + "tt0099524", + "tt5610626", + "tt0067309", + "tt0497316", + "tt3350890", + "tt6063648", + "tt6170682", + "tt6581616", + "tt0330795", + "tt5222646", + "tt7049542", + "tt0093456", + "tt8417466", + "tt8900984", + "tt5504222", + "tt0970453", + "tt2909196", + "tt3741188", + "tt5704912", + "tt2024483", + "tt0412523", + "tt5564932", + "tt3040216", + "tt10581102", + "tt2620254", + "tt1590285", + "tt2018136", + "tt5788866", + "tt2294743", + "tt7715988", + "tt7236434", + "tt5281134", + "tt4930242", + "tt2369410", + "tt6740154", + "tt1930308", + "tt1754830", + "tt6015760", + "tt5164238", + "tt0061597", + "tt3295354", + "tt0114743", + "tt3250650", + "tt4072296", + "tt10516390", + "tt0275039", + "tt0077132", + "tt0241687", + "tt0086862", + "tt1509276", + "tt0065895", + "tt0065761", + "tt0058700", + "tt0047376", + "tt1764657", + "tt8717660", + "tt0293324", + "tt0043892", + "tt0043809", + "tt0275309", + "tt0064265", + "tt6164014", + "tt0014532", + "tt0046757", + "tt0069518", + "tt0090213", + "tt0086036", + "tt0049286", + "tt6348138", + "tt0045554", + "tt0051980", + "tt0045296", + "tt0043899", + "tt2664264", + "tt0055082", + "tt0069806", + "tt0053388", + "tt0392908", + "tt0046126", + "tt9089294", + "tt0044685", + "tt6288290", + "tt1650060", + "tt10050766", + "tt10325070", + "tt3504226", + "tt8242812", + "tt8438836", + "tt0042727", + "tt0061814", + "tt0046267", + "tt3014910", + "tt0064473", + "tt0046729", + "tt0061189", + "tt0044941", + "tt0105824", + "tt0046882", + "tt1533817", + "tt0050858", + "tt0042367", + "tt0042310", + "tt0043734", + "tt6754750", + "tt0050631", + "tt1468387", + "tt0072263", + "tt0323808", + "tt0065856", + "tt0056138", + "tt0033467", + "tt0068502", + "tt0016630", + "tt4151192", + "tt0052933", + "tt0047445", + "tt0082138", + "tt7580902", + "tt1709122", + "tt7207890", + "tt2112277", + "tt0104753", + "tt7983678", + "tt7890946", + "tt0069134", + "tt0102067", + "tt3955894", + "tt0106913", + "tt0758740", + "tt0072761", + "tt10254986", + "tt5341032", + "tt5770836", + "tt3084028", + "tt5827590", + "tt5089534", + "tt4415360", + "tt8099132", + "tt6849786", + "tt0077234", + "tt0046250", + "tt1210059", + "tt8660842", + "tt6353976", + "tt0047577", + "tt6490532", + "tt3170458", + "tt0036377", + "tt5425264", + "tt0039017", + "tt0040662", + "tt0088457", + "tt0045659", + "tt0046808", + "tt0052296", + "tt0039074", + "tt0040367", + "tt0044943", + "tt4442130", + "tt1545986", + "tt0045178", + "tt1202222", + "tt3294746", + "tt0040369", + "tt0044754", + "tt0039335", + "tt0034742", + "tt0041737", + "tt2494384", + "tt0298826", + "tt0033533", + "tt0076175", + "tt0065086", + "tt0991167", + "tt3200980", + "tt0042539", + "tt0047029", + "tt0068290", + "tt0037794", + "tt2325517", + "tt0040978", + "tt0093227", + "tt0104812", + "tt2210834", + "tt2911342", + "tt0850677", + "tt0038008", + "tt0040068", + "tt0051879", + "tt1059887", + "tt1276107", + "tt0060884", + "tt0062424", + "tt0038494", + "tt4955566", + "tt0038259", + "tt5958178", + "tt0074597", + "tt1186803", + "tt2611626", + "tt0084938", + "tt4145304", + "tt4950110", + "tt0064393", + "tt0077629", + "tt0119429", + "tt10559318", + "tt0047013", + "tt1168662", + "tt2040578", + "tt0050432", + "tt0036591", + "tt2924442", + "tt0817545", + "tt6230134", + "tt2977090", + "tt0067820", + "tt0101891", + "tt0095904", + "tt0060897", + "tt1340123", + "tt0048990", + "tt0077945", + "tt0075268", + "tt0091829", + "tt0087222", + "tt2130142", + "tt3958780", + "tt3727202", + "tt1090671", + "tt0106689", + "tt5735280", + "tt0050763", + "tt4706888", + "tt0119577", + "tt2724532", + "tt1617620", + "tt3957956", + "tt3093522", + "tt0057918", + "tt3511596", + "tt0047977", + "tt0021079", + "tt0046719", + "tt0035317", + "tt0072737", + "tt0036349", + "tt0139639", + "tt0025586", + "tt0023694", + "tt0035318", + "tt0022941", + "tt0114898", + "tt0029843", + "tt0039220", + "tt0036348", + "tt0086904", + "tt0061683", + "tt5092708", + "tt4838614", + "tt0060474", + "tt0401696", + "tt0092128", + "tt6418778", + "tt2313189", + "tt2949196", + "tt0024991", + "tt0286716", + "tt8242160", + "tt1332134", + "tt7428820", + "tt0061806", + "tt3383262", + "tt8613876", + "tt0043455", + "tt0219466", + "tt0033676", + "tt7069496", + "tt0020768", + "tt0026955", + "tt0031022", + "tt0028818", + "tt0067483", + "tt0057263", + "tt0415160", + "tt2499472", + "tt3534282", + "tt1321861", + "tt0068732", + "tt0024240", + "tt5580536", + "tt0037149", + "tt0031397", + "tt0032146", + "tt1790621", + "tt0031448", + "tt1107859", + "tt0027672", + "tt0027893", + "tt3286560", + "tt0033159", + "tt0027849", + "tt0030663", + "tt0027876", + "tt0086515", + "tt0063293", + "tt0095302", + "tt0091969", + "tt0030545", + "tt1709654", + "tt0066849", + "tt0069005", + "tt4072326", + "tt0046828", + "tt3007132", + "tt0198652", + "tt0083067", + "tt1273675", + "tt1341341", + "tt0098300", + "tt2923088", + "tt4255110", + "tt3531202", + "tt0099292", + "tt1232838", + "tt0067690", + "tt10110872", + "tt0095867", + "tt3704352", + "tt0080732", + "tt0072139", + "tt0098257", + "tt5189894", + "tt0312549", + "tt7287680", + "tt9490414", + "tt0107530", + "tt0106302", + "tt7399170", + "tt0110913", + "tt0118537", + "tt4200442", + "tt5790274", + "tt4397342", + "tt0113720", + "tt4618800", + "tt5936866", + "tt1659208", + "tt1100119", + "tt5268348", + "tt0087265", + "tt0497329", + "tt0161654", + "tt0080140", + "tt1483831", + "tt0085204", + "tt0058155", + "tt0082511", + "tt5486170", + "tt1117581", + "tt1697851", + "tt0110687", + "tt0039224", + "tt1767319", + "tt3677466", + "tt0067217", + "tt7730928", + "tt0065054", + "tt0067248", + "tt1441956", + "tt0100168", + "tt0036910", + "tt0055597", + "tt0493247", + "tt1316616", + "tt0050782", + "tt1352369", + "tt0067482", + "tt0067713", + "tt0323921", + "tt0085276", + "tt0067805", + "tt0073075", + "tt9174388", + "tt2063011", + "tt0049006", + "tt2392830", + "tt0056868", + "tt6485776", + "tt0089798", + "tt0072709", + "tt1907731", + "tt0337881", + "tt3678476", + "tt0061648", + "tt5493706", + "tt6577814", + "tt5816374", + "tt6298780", + "tt0069436", + "tt3308358", + "tt0089652", + "tt4718500", + "tt6455992", + "tt0430779", + "tt0101376", + "tt0096000", + "tt2169274", + "tt0064515", + "tt0052182", + "tt9140306", + "tt6960770", + "tt0099271", + "tt0060761", + "tt0241605", + "tt0106680", + "tt2815902", + "tt0034798", + "tt1648186", + "tt0083678", + "tt0070468", + "tt10238788", + "tt0423505", + "tt0092637", + "tt0075342", + "tt0069050", + "tt0043879", + "tt0483756", + "tt4660980", + "tt2481198", + "tt3488328", + "tt0076636", + "tt6574272", + "tt0058606", + "tt3202890", + "tt0050933", + "tt0044557", + "tt2063666", + "tt0063049", + "tt0077834", + "tt0045963", + "tt0071424", + "tt0106309", + "tt0059084", + "tt2044801", + "tt1490785", + "tt0064328", + "tt0111503", + "tt0064100", + "tt0077275", + "tt6608132", + "tt4230700", + "tt0112643", + "tt0106339", + "tt5173032", + "tt1861421", + "tt4357714", + "tt0113972", + "tt0039158", + "tt0023470", + "tt1293093", + "tt2517044", + "tt3110818", + "tt3026488", + "tt0954990", + "tt0055201", + "tt0101343", + "tt0088007", + "tt2088832", + "tt5637212", + "tt6067462", + "tt3203954", + "tt3112900", + "tt1592503", + "tt4814760", + "tt7087210", + "tt2077886", + "tt0100606", + "tt7134690", + "tt10575038", + "tt1967560", + "tt9251598", + "tt0458471", + "tt5695764", + "tt3091138", + "tt0022689", + "tt0114938", + "tt0017751", + "tt1867101", + "tt4180514", + "tt0058725", + "tt0118859", + "tt8928500", + "tt5460530", + "tt0060177", + "tt4210080", + "tt0095379", + "tt0071675", + "tt0077756", + "tt0040705", + "tt0036261", + "tt0059557", + "tt2048770", + "tt0116344", + "tt0093286", + "tt0111094", + "tt1745672", + "tt0047550", + "tt0039305", + "tt3268668", + "tt1631707", + "tt0114798", + "tt0059012", + "tt2726552", + "tt0357474", + "tt0109415", + "tt0380817", + "tt0040555", + "tt7290778", + "tt7512276", + "tt0043121", + "tt10525592", + "tt1710533", + "tt0058754", + "tt0038922", + "tt0065916", + "tt3495644", + "tt3289606", + "tt1820488", + "tt1845774", + "tt3317562", + "tt0094746", + "tt2160413", + "tt1735433", + "tt2481498", + "tt6704170", + "tt2979638", + "tt0029682", + "tt0118643", + "tt0052415", + "tt0183678", + "tt0079336", + "tt0043067", + "tt0051077", + "tt8109082", + "tt3955618", + "tt0115580", + "tt0104740", + "tt0019777", + "tt1196340", + "tt0076637", + "tt0808526", + "tt0054269", + "tt0042832", + "tt0079100", + "tt0119937", + "tt0091142", + "tt1657283", + "tt0051773", + "tt3638396", + "tt2597242", + "tt1083448", + "tt0075995", + "tt0041163", + "tt1100051", + "tt2274570", + "tt7961060", + "tt0295667", + "tt8179388", + "tt2112303", + "tt1679204", + "tt2377396", + "tt1230478", + "tt0050598", + "tt0019838", + "tt2188723", + "tt7504496", + "tt0075244", + "tt2115388", + "tt1863160", + "tt0069257", + "tt1699140", + "tt0007338", + "tt0038160", + "tt0765447", + "tt2354513", + "tt0151933", + "tt0152216", + "tt0151014", + "tt0067989", + "tt0039645", + "tt1608776", + "tt2870808", + "tt1181935", + "tt0070679", + "tt0429589", + "tt1677730", + "tt0151081", + "tt1769363", + "tt0133412", + "tt9760256", + "tt0844948", + "tt0149660", + "tt0320441", + "tt0042286", + "tt0152235", + "tt0152220", + "tt8014482", + "tt5129682", + "tt2670882", + "tt1855401", + "tt0150571", + "tt0048673", + "tt2118702", + "tt0151228", + "tt0150977", + "tt0057033", + "tt0152374", + "tt0044188", + "tt0080486", + "tt1954900", + "tt0091190", + "tt0106551", + "tt0066075", + "tt0066105", + "tt0048393", + "tt0152263", + "tt6178388", + "tt0460732", + "tt0367813", + "tt0065481", + "tt0152032", + "tt0149625", + "tt0153943", + "tt0109162", + "tt0040202", + "tt0085470", + "tt0098051", + "tt1927152", + "tt0050307", + "tt3745058", + "tt0037800", + "tt8947034", + "tt0103129", + "tt0079271", + "tt0025919", + "tt8517704", + "tt8064392", + "tt6144524", + "tt7558912", + "tt7633666", + "tt3449040", + "tt0111700", + "tt3813404", + "tt0331314", + "tt0071517", + "tt0151775", + "tt1482104", + "tt7254920", + "tt1312953", + "tt0084955", + "tt0080641", + "tt0038988", + "tt0414472", + "tt0086646", + "tt0843843", + "tt0043592", + "tt0040338", + "tt0041498", + "tt0054757", + "tt0058672", + "tt0858419", + "tt4573516", + "tt0056575", + "tt0070077", + "tt0035899", + "tt0042652", + "tt0052585", + "tt0940657", + "tt2597768", + "tt1885265", + "tt6931170", + "tt0117237", + "tt6643972", + "tt0044413", + "tt0061584", + "tt0255274", + "tt1433207", + "tt0052374", + "tt0069222", + "tt0087042", + "tt0320763", + "tt0080724", + "tt0015977", + "tt0059817", + "tt0030063", + "tt0228943", + "tt1220213", + "tt2513864", + "tt0029686", + "tt0055862", + "tt7266800", + "tt0023293", + "tt0030523", + "tt8085790", + "tt0194523", + "tt0041510", + "tt1111833", + "tt0083891", + "tt0058246", + "tt0094793", + "tt0102820", + "tt0090559", + "tt0064807", + "tt0142804", + "tt0049916", + "tt0160210", + "tt0049934", + "tt0062366", + "tt0057146", + "tt0028030", + "tt0804492", + "tt0020523", + "tt0025911", + "tt0057450", + "tt2265257", + "tt0002816", + "tt0001865", + "tt0060914", + "tt0005149", + "tt1556690", + "tt1951239", + "tt0060438", + "tt0452945", + "tt0002506", + "tt8260858", + "tt0059105", + "tt6207878", + "tt0015039", + "tt0174228", + "tt2261319", + "tt0070858", + "tt5002444", + "tt0024894", + "tt0061577", + "tt0061698", + "tt5364010", + "tt0161216", + "tt0066098", + "tt8678108", + "tt4189646", + "tt7257948", + "tt6467274", + "tt0106335", + "tt0066739", + "tt0453207", + "tt0063121", + "tt0221719", + "tt0039677", + "tt2857160", + "tt5604902", + "tt8582254", + "tt9664168", + "tt0053804", + "tt3704854", + "tt7243462", + "tt2981768", + "tt7241484", + "tt0109493", + "tt0484444", + "tt1854506", + "tt0066319", + "tt2120743", + "tt0046247", + "tt0076584", + "tt0063979", + "tt5201934", + "tt5966604", + "tt6103318", + "tt0038499", + "tt3638444", + "tt3139682", + "tt0061391", + "tt0041967", + "tt3638644", + "tt1974420", + "tt0045920", + "tt0035896", + "tt4933238", + "tt2363481", + "tt3325098", + "tt4027504", + "tt3131050", + "tt0031505", + "tt6818874", + "tt0107178", + "tt0089200", + "tt4126438", + "tt0046511", + "tt1710417", + "tt2511428", + "tt4462082", + "tt0116075", + "tt1710396", + "tt7811942", + "tt3052652", + "tt9896916", + "tt3830420", + "tt0896811", + "tt8191502", + "tt4131658", + "tt7769716", + "tt4123650", + "tt5119160", + "tt2556936", + "tt0115645", + "tt0023551", + "tt7986672", + "tt6141886", + "tt2069797", + "tt0096969", + "tt5092484", + "tt4813254", + "tt5746054", + "tt0114594", + "tt0101983", + "tt4714568", + "tt0074906", + "tt1901040", + "tt0050356", + "tt0092115", + "tt0089087", + "tt0103130", + "tt0280380", + "tt0037415", + "tt2474024", + "tt2436682", + "tt1913166", + "tt0055257", + "tt0072951", + "tt0120029", + "tt0045883", + "tt0081207", + "tt0116118", + "tt0100142", + "tt0073092", + "tt0098194", + "tt0090930", + "tt1171222", + "tt0099277", + "tt1718924", + "tt1786751", + "tt0089013", + "tt0355954", + "tt1456060", + "tt0083739", + "tt1736150", + "tt0240772", + "tt0480516", + "tt0378947", + "tt2312890", + "tt3451956", + "tt0025833", + "tt1135525", + "tt0033021", + "tt5252674", + "tt0056194", + "tt1790867", + "tt0052618", + "tt0466845", + "tt4236310", + "tt0050815", + "tt1167319", + "tt0264796", + "tt0896036", + "tt0043069", + "tt0023814", + "tt8111636", + "tt1319712", + "tt0116736", + "tt0255441", + "tt1321862", + "tt0080752", + "tt0069895", + "tt0036670", + "tt0041263", + "tt0080117", + "tt6333000", + "tt0080461", + "tt7266936", + "tt3384938", + "tt2115295", + "tt0087921", + "tt3622120", + "tt8764762", + "tt0049291", + "tt0283897", + "tt0259484", + "tt2150369", + "tt0086631", + "tt0120667", + "tt0030522", + "tt5225338", + "tt2286990", + "tt0099697", + "tt1667307", + "tt0027657", + "tt0249677", + "tt0086205", + "tt0065051", + "tt0783598", + "tt0090315", + "tt0051383", + "tt0084652", + "tt3859304", + "tt0104511", + "tt1181614", + "tt0023238", + "tt1815708", + "tt1233219", + "tt0052151", + "tt0112625", + "tt0780548", + "tt0048342", + "tt0096380", + "tt0059903", + "tt0116502", + "tt5440730", + "tt0118541", + "tt4807408", + "tt0057193", + "tt0356721", + "tt0042332", + "tt0073387", + "tt1274293", + "tt0058947", + "tt0837563", + "tt2520306", + "tt1628841", + "tt0112384", + "tt0061578", + "tt0116629", + "tt7590334", + "tt0104694", + "tt0083184", + "tt0079429", + "tt0059578", + "tt10438648", + "tt2719752", + "tt0093793", + "tt0058461", + "tt0066831", + "tt6175764", + "tt0060196", + "tt8712750", + "tt0089346", + "tt0929860", + "tt2337981", + "tt0040366", + "tt0040536", + "tt0103923", + "tt1441940", + "tt3837196", + "tt1692190", + "tt0042451", + "tt0119142", + "tt1107319", + "tt2217859", + "tt6772804", + "tt4503598", + "tt0073636", + "tt0085271", + "tt0048445", + "tt10100664", + "tt3060492", + "tt3588852", + "tt1132285", + "tt1525890", + "tt2095605", + "tt1802197", + "tt0089901", + "tt1781058", + "tt0270707", + "tt0071910", + "tt0087747", + "tt2570858", + "tt2271563", + "tt0073694", + "tt0286322", + "tt1640484", + "tt0097044", + "tt0816520", + "tt0090660", + "tt2243389", + "tt0037865", + "tt0036027", + "tt8551868", + "tt7146372", + "tt0021885", + "tt6865690", + "tt4126476", + "tt0079988", + "tt9860860", + "tt2538778", + "tt2011271", + "tt3608930", + "tt10514532", + "tt7188002", + "tt5942864", + "tt1855175", + "tt7458872", + "tt0090319", + "tt9537532", + "tt4934870", + "tt6007614", + "tt6198058", + "tt7075594", + "tt0101453", + "tt0101786", + "tt0041298", + "tt4921370", + "tt0139358", + "tt0056059", + "tt0139670", + "tt0101821", + "tt0046313", + "tt5914350", + "tt0139624", + "tt7476946", + "tt0078872", + "tt0034401", + "tt0109198", + "tt0030404", + "tt0040866", + "tt1132449", + "tt0018578", + "tt0445396", + "tt0050330", + "tt0153033", + "tt0151375", + "tt0152575", + "tt0233732", + "tt0233704", + "tt0233703", + "tt0076054", + "tt0139612", + "tt0034424", + "tt0150469", + "tt0152554", + "tt0152255", + "tt0139148", + "tt0152048", + "tt0078492", + "tt0139191", + "tt4958596", + "tt0032723", + "tt0234814", + "tt0090163", + "tt0036644", + "tt0150444", + "tt1518812", + "tt1235448", + "tt0153712", + "tt0151693", + "tt3729920", + "tt0150241", + "tt0037563", + "tt0011742", + "tt0153478", + "tt0150044", + "tt4746506", + "tt7063210", + "tt3152602", + "tt0010962", + "tt7105944", + "tt7278824", + "tt3720788", + "tt0120728", + "tt0081748", + "tt0100594", + "tt0105699", + "tt1059836", + "tt0035405", + "tt2481480", + "tt0067893", + "tt0309912", + "tt0358349", + "tt0279493", + "tt3791216", + "tt3610746", + "tt0023027", + "tt7519174", + "tt2784936", + "tt0113321", + "tt0022158", + "tt0800003", + "tt0061122", + "tt6301452", + "tt0031762", + "tt9783778", + "tt5096928", + "tt10432620", + "tt0103845", + "tt6866224", + "tt6952960", + "tt5275828", + "tt5084204", + "tt0101793", + "tt0494225", + "tt5457582", + "tt7056906", + "tt0107147", + "tt1845866", + "tt4192652", + "tt4838534", + "tt0064843", + "tt0396688", + "tt0419815", + "tt0091786", + "tt8225174", + "tt0424823", + "tt0082464", + "tt1611180", + "tt10468872", + "tt3421614", + "tt0059043", + "tt0454084", + "tt0077655", + "tt3521134", + "tt0437232", + "tt3467412", + "tt0118771", + "tt4702752", + "tt0441007", + "tt0104033", + "tt2258285", + "tt1260502", + "tt0430576", + "tt0166943", + "tt0093209", + "tt1121977", + "tt0085478", + "tt0109842", + "tt0080391", + "tt0423169", + "tt0424993", + "tt0087056", + "tt0053137", + "tt0106341", + "tt1182921", + "tt0071524", + "tt0098097", + "tt0495596", + "tt0056412", + "tt0059885", + "tt3505950", + "tt0048977", + "tt1270835", + "tt0037515", + "tt1705952", + "tt0062407", + "tt2639344", + "tt2193265", + "tt1870419", + "tt4666726", + "tt2376218", + "tt0059825", + "tt1010271", + "tt0099160", + "tt2112096", + "tt10204316", + "tt0088414", + "tt0098663", + "tt5033290", + "tt7537434", + "tt1636817", + "tt0077474", + "tt0110823", + "tt0095863", + "tt0051525", + "tt0145893", + "tt0082474", + "tt1756799", + "tt1878841", + "tt0038057", + "tt0066740", + "tt2043933", + "tt0099204", + "tt1523483", + "tt1725986", + "tt0298744", + "tt0091538", + "tt0099180", + "tt0050658", + "tt1564777", + "tt0064418", + "tt0020640", + "tt0047811", + "tt5522310", + "tt6368508", + "tt8749146", + "tt0082622", + "tt0042994", + "tt2181885", + "tt0280653", + "tt4142364", + "tt1911662", + "tt0099484", + "tt0077369", + "tt0412798", + "tt3662066", + "tt0053172", + "tt0090670", + "tt7058612", + "tt7529650", + "tt1922685", + "tt0075760", + "tt0914797", + "tt3513498", + "tt0080009", + "tt0064603", + "tt0047136", + "tt1183374", + "tt1931602", + "tt0035093", + "tt0093075", + "tt3976144", + "tt5195412", + "tt1742683", + "tt0101969", + "tt0893412", + "tt3722070", + "tt3445702", + "tt1371155", + "tt0083806", + "tt0037441", + "tt8323104", + "tt0057877", + "tt5200368", + "tt8783146", + "tt4249580", + "tt0035575", + "tt10182822", + "tt10017680", + "tt0120724", + "tt0113690", + "tt4067062", + "tt1226240", + "tt0047834", + "tt0089424", + "tt7458762", + "tt0094631", + "tt0052948", + "tt7297156", + "tt2709962", + "tt0119225", + "tt6175078", + "tt0107282", + "tt1661199", + "tt6423998", + "tt8001400", + "tt9103622", + "tt0062376", + "tt6588838", + "tt5172404", + "tt0419946", + "tt0448075", + "tt3733778", + "tt0082517", + "tt0095243", + "tt3528666", + "tt1179891", + "tt0075213", + "tt1266027", + "tt0104549", + "tt3203616", + "tt4935334", + "tt2334841", + "tt0057372", + "tt1047540", + "tt5781798", + "tt2319580", + "tt0060955", + "tt2304771", + "tt0205873", + "tt0041866", + "tt7368186", + "tt0120701", + "tt0377062", + "tt1701990", + "tt0077405", + "tt0118055", + "tt2406658", + "tt0108556", + "tt0062824", + "tt0469021", + "tt0034248", + "tt0105386", + "tt0847879", + "tt8318348", + "tt10048556", + "tt0088855", + "tt0103743", + "tt1823067", + "tt1667150", + "tt0088135", + "tt0099850", + "tt0031886", + "tt0010559", + "tt0079766", + "tt0087852", + "tt0095396", + "tt0203672", + "tt0015016", + "tt0093305", + "tt0953981", + "tt0093185", + "tt0100232", + "tt3835080", + "tt1244659", + "tt0069137", + "tt2247476", + "tt0086950", + "tt0083624", + "tt0058869", + "tt0058349", + "tt7701096", + "tt0381971", + "tt0084807", + "tt1391034", + "tt0043137", + "tt0488870", + "tt0097457", + "tt9600932", + "tt2387469", + "tt6871634", + "tt0288906", + "tt0192731", + "tt0239655", + "tt0105378", + "tt0086373", + "tt2083931", + "tt8582458", + "tt3520418", + "tt9310460", + "tt0087892", + "tt3708886", + "tt0072730", + "tt1320291", + "tt0068768", + "tt0484877", + "tt0073705", + "tt2383068", + "tt0137291", + "tt0076740", + "tt4972062", + "tt1018818", + "tt0093431", + "tt5007760", + "tt0105813", + "tt0997047", + "tt3685490", + "tt4357288", + "tt2447750", + "tt0070334", + "tt5887566", + "tt0023775", + "tt0044519", + "tt0094908", + "tt0127557", + "tt0036855", + "tt10516984", + "tt6044414", + "tt0084788", + "tt0084920", + "tt10195288", + "tt0049248", + "tt0093418", + "tt0088765", + "tt0105211", + "tt0093596", + "tt0120703", + "tt0043660", + "tt0303297", + "tt1232162", + "tt0097722", + "tt0074149", + "tt0105629", + "tt2095649", + "tt0071249", + "tt0073202", + "tt0068315", + "tt0075345", + "tt0071486", + "tt0032484", + "tt6133806", + "tt0041546", + "tt0077355", + "tt1763264", + "tt7380420", + "tt0492912", + "tt0076451", + "tt1436568", + "tt0044837", + "tt0367232", + "tt1152268", + "tt0330181", + "tt0107668", + "tt0413466", + "tt4659490", + "tt0815230", + "tt0396190", + "tt1680114", + "tt1663207", + "tt0087365", + "tt7207158", + "tt3707106", + "tt0457319", + "tt0321961", + "tt0252649", + "tt0119208", + "tt0100107", + "tt0271020", + "tt0391908", + "tt0283015", + "tt0114095", + "tt0097965", + "tt0075223", + "tt2011159", + "tt1555064", + "tt0072926", + "tt0134983", + "tt1798243", + "tt0060397", + "tt0039302", + "tt0482629", + "tt0076257", + "tt3726704", + "tt0493949", + "tt7979492", + "tt0050086", + "tt3733774", + "tt1778924", + "tt2366608", + "tt1185393", + "tt3702652", + "tt4109096", + "tt0341611", + "tt0426501", + "tt0893331", + "tt2706120", + "tt1473179", + "tt3702088", + "tt0071588", + "tt0325214", + "tt10524262", + "tt0424114", + "tt0076788", + "tt0100301", + "tt0108281", + "tt0248845", + "tt4920130", + "tt0078351", + "tt0865957", + "tt1621780", + "tt0459425", + "tt2402091", + "tt0299172", + "tt4667094", + "tt1611840", + "tt1611907", + "tt0027752", + "tt3630276", + "tt0280672", + "tt0247199", + "tt3644730", + "tt0065215", + "tt0034587", + "tt3098654", + "tt1800677", + "tt1291125", + "tt0091375", + "tt0164114", + "tt1572168", + "tt1441951", + "tt0045897", + "tt2235779", + "tt10376958", + "tt0070948", + "tt4030600", + "tt0102943", + "tt0055277", + "tt2725962", + "tt1630036", + "tt2349144", + "tt0417782", + "tt1654523", + "tt0142192", + "tt0100260", + "tt0434124", + "tt0027996", + "tt2183034", + "tt0100212", + "tt0091886", + "tt2304953", + "tt0083833", + "tt0120186", + "tt4185862", + "tt0047849", + "tt1747958", + "tt0116531", + "tt0116704", + "tt0439238", + "tt0214555", + "tt0104897", + "tt1928330", + "tt0117965", + "tt4738626", + "tt3220900", + "tt0090182", + "tt10353560", + "tt2699466", + "tt3499542", + "tt0280438", + "tt10195614", + "tt0800241", + "tt0327643", + "tt2828022", + "tt0064338", + "tt1127177", + "tt0062741", + "tt0279781", + "tt0285728", + "tt3515632", + "tt5885926", + "tt3671052", + "tt0361620", + "tt0117011", + "tt0027800", + "tt0100911", + "tt0032258", + "tt1042424", + "tt0076070", + "tt0115632", + "tt0489281", + "tt0169858", + "tt1467280", + "tt0063665", + "tt0059076", + "tt0145653", + "tt4581576", + "tt4196450", + "tt1468846", + "tt2368553", + "tt0131704", + "tt0026912", + "tt0038991", + "tt0158622", + "tt0105226", + "tt0107473", + "tt1545660", + "tt0095270", + "tt0048356", + "tt0361089", + "tt0089017", + "tt0045891", + "tt7390044", + "tt2140559", + "tt1196204", + "tt0083798", + "tt0101566", + "tt0422774", + "tt3577624", + "tt0058708", + "tt0067848", + "tt8476314", + "tt7424930", + "tt5667650", + "tt0095647", + "tt0245429", + "tt10384404", + "tt8787116", + "tt0103783", + "tt0043012", + "tt0498567", + "tt2677722", + "tt0077892", + "tt8286894", + "tt2288155", + "tt0113442", + "tt0020842", + "tt0095629", + "tt0109498", + "tt0105869", + "tt6490394", + "tt0016028", + "tt2398249", + "tt0045555", + "tt6892400", + "tt2085930", + "tt0900387", + "tt1740047", + "tt0100685", + "tt0070290", + "tt0098141", + "tt0099165", + "tt0081554", + "tt1748207", + "tt0073631", + "tt0107711", + "tt0367093", + "tt0178737", + "tt1767382", + "tt0099726", + "tt0160399", + "tt1634121", + "tt1959332", + "tt0050669", + "tt0088889", + "tt0043671", + "tt6400166", + "tt0271263", + "tt0078902", + "tt2309961", + "tt0106881", + "tt2388637", + "tt9497146", + "tt0049552", + "tt8836988", + "tt0084335", + "tt7461200", + "tt0284034", + "tt6772946", + "tt0088729", + "tt5378092", + "tt0084658", + "tt0074599", + "tt0070716", + "tt0069031", + "tt0066811", + "tt3197802", + "tt0047878", + "tt0087130", + "tt2417970", + "tt0088683", + "tt0448090", + "tt10243660", + "tt0071577", + "tt0301976", + "tt0030993", + "tt0083190", + "tt2799166", + "tt0278500", + "tt1198156", + "tt5977276", + "tt0085701", + "tt0388182", + "tt0086993", + "tt0100135", + "tt2172985", + "tt0073440", + "tt3068194", + "tt0126388", + "tt0086320", + "tt0090021", + "tt2910274", + "tt0418773", + "tt0119115", + "tt0924129", + "tt3352390", + "tt0077523", + "tt0120654", + "tt0060522", + "tt0080377", + "tt0113501", + "tt0094715", + "tt0076670", + "tt0083943", + "tt0061617", + "tt7083870", + "tt6428170", + "tt10358740", + "tt0078908", + "tt6383494", + "tt0114720", + "tt3362670", + "tt1734493", + "tt0051207", + "tt0117420", + "tt0334541", + "tt0110657", + "tt0048281", + "tt0089869", + "tt0405676", + "tt0040525", + "tt0097647", + "tt0046816", + "tt0055018", + "tt3369806", + "tt2872462", + "tt3231054", + "tt0097940", + "tt0089560", + "tt0063135", + "tt4196848", + "tt0113419", + "tt2235108", + "tt0160184", + "tt0120533", + "tt1925431", + "tt0016953", + "tt0058586", + "tt6982794", + "tt0046876", + "tt6338912", + "tt3575954", + "tt1325593", + "tt0114857", + "tt0098319", + "tt3149038", + "tt4255304", + "tt0042041", + "tt0114682", + "tt3308620", + "tt8840882", + "tt1714210", + "tt0258068", + "tt1510938", + "tt0078966", + "tt0388980", + "tt0100419", + "tt1932718", + "tt2023690", + "tt0051036", + "tt2479800", + "tt0107501", + "tt0080319", + "tt0038559", + "tt0077413", + "tt0068762", + "tt0067128", + "tt0106770", + "tt0082869", + "tt0104466", + "tt0093378", + "tt0100140", + "tt1894476", + "tt1441912", + "tt3544082", + "tt2094018", + "tt6873778", + "tt0968264", + "tt2452254", + "tt0175755", + "tt0450340", + "tt4154664", + "tt2326612", + "tt0091954", + "tt1659343", + "tt0078718", + "tt0085811", + "tt0108162", + "tt0037382", + "tt0091828", + "tt0176269", + "tt3813310", + "tt1405365", + "tt0117039", + "tt0082089", + "tt0045810", + "tt0120483", + "tt0093493", + "tt0091499", + "tt1226681", + "tt0066011", + "tt0063518", + "tt3554164", + "tt3835674", + "tt1905041", + "tt4241904", + "tt2458952", + "tt0066765", + "tt0094602", + "tt0218817", + "tt5389736", + "tt2391950", + "tt4653808", + "tt5836432", + "tt7221072", + "tt2386502", + "tt0112527", + "tt7403570", + "tt0046187", + "tt0277296", + "tt6245644", + "tt6107404", + "tt0085244", + "tt1013752", + "tt0092494", + "tt0065724", + "tt0078723", + "tt0360009", + "tt0086491", + "tt1596343", + "tt0192614", + "tt0242445", + "tt0095444", + "tt0093818", + "tt0086216", + "tt1971352", + "tt1204340", + "tt0087995", + "tt2059171", + "tt0426459", + "tt0344854", + "tt0082509", + "tt3247714", + "tt0063374", + "tt0101745", + "tt0802948", + "tt1381404", + "tt0099763", + "tt2088003", + "tt1541160", + "tt0105121", + "tt3787590", + "tt1266029", + "tt0420293", + "tt3499096", + "tt0065988", + "tt0926129", + "tt0263757", + "tt1366365", + "tt0054387", + "tt1594562", + "tt0485851", + "tt0303933", + "tt1032815", + "tt0110167", + "tt0113041", + "tt0089003", + "tt2097307", + "tt0071402", + "tt2261331", + "tt0265298", + "tt2368619", + "tt6428676", + "tt0118636", + "tt3721936", + "tt0086927", + "tt0168786", + "tt2493450", + "tt1828968", + "tt6634646", + "tt7165594", + "tt3512282", + "tt1262981", + "tt4872098", + "tt1261978", + "tt0067093", + "tt0109520", + "tt4370926", + "tt2375779", + "tt3216380", + "tt0804555", + "tt1865567", + "tt3077214", + "tt0095253", + "tt1496422", + "tt0107034", + "tt0078446", + "tt0100477", + "tt0117589", + "tt0464196", + "tt0069947", + "tt0087597", + "tt0101764", + "tt0116242", + "tt0139462", + "tt0195945", + "tt1596345", + "tt0109642", + "tt1234654", + "tt0040506", + "tt0060666", + "tt4191580", + "tt6394244", + "tt0399327", + "tt6621408", + "tt0425571", + "tt5096246", + "tt8530978", + "tt0085382", + "tt4844636", + "tt0899138", + "tt0088758", + "tt2386922", + "tt8160864", + "tt6016744", + "tt8840224", + "tt5450040", + "tt0109830", + "tt7042862", + "tt10206188", + "tt0339147", + "tt7188868", + "tt9044128", + "tt6912580", + "tt6511932", + "tt1869682", + "tt3701862", + "tt7339584", + "tt3949658", + "tt5094192", + "tt8443704", + "tt9130552", + "tt0149624", + "tt5321814", + "tt8717008", + "tt7390536", + "tt3573354", + "tt9866284", + "tt5836246", + "tt4330370", + "tt6167014", + "tt5112424", + "tt8772926", + "tt0212985", + "tt0116745", + "tt6857112", + "tt10215424", + "tt4819544", + "tt3416742", + "tt4695098", + "tt10443324", + "tt0486583", + "tt0337692", + "tt0068555", + "tt0119314", + "tt0419294", + "tt0108238", + "tt0086637", + "tt0070510", + "tt4190530", + "tt8846072", + "tt4876096", + "tt0365929", + "tt0170691", + "tt3205376", + "tt0097027", + "tt0085750", + "tt8346446", + "tt0281322", + "tt1714203", + "tt3387542", + "tt1426329", + "tt1156466", + "tt0810001", + "tt4158096", + "tt0881891", + "tt0093300", + "tt4520364", + "tt6215446", + "tt10376844", + "tt0070707", + "tt6967644", + "tt0047879", + "tt0024055", + "tt0022021", + "tt0099300", + "tt0021092", + "tt0042648", + "tt10136902", + "tt0077189", + "tt2973516", + "tt0022569", + "tt2510998", + "tt0043625", + "tt0022149", + "tt0022243", + "tt0022046", + "tt0021374", + "tt0021377", + "tt0093491", + "tt1053810", + "tt1941705", + "tt3097204", + "tt0065126", + "tt1674784", + "tt0088172", + "tt2828996", + "tt0091149", + "tt0407265", + "tt0202470", + "tt8563452", + "tt1423995", + "tt1598828", + "tt0089457", + "tt0120032", + "tt0051459", + "tt0060390", + "tt0306685", + "tt2034031", + "tt0038109", + "tt0308055", + "tt0387514", + "tt0068327", + "tt0369226", + "tt0398913", + "tt0913951", + "tt0309377", + "tt0077538", + "tt0332580", + "tt2243537", + "tt0088794", + "tt0107076", + "tt0105585", + "tt0155975", + "tt0299213", + "tt0098384", + "tt0266465", + "tt4139124", + "tt0117247", + "tt0079588", + "tt0049366", + "tt0875034", + "tt0107616", + "tt1825157", + "tt1341188", + "tt3099498", + "tt10440380", + "tt0090142", + "tt0110950", + "tt0118789", + "tt0417217", + "tt1038072", + "tt0192122", + "tt0283652", + "tt9114472", + "tt1462769", + "tt1640459", + "tt0109068", + "tt0058621", + "tt6942194", + "tt8243286", + "tt2345737", + "tt0106226", + "tt0096183", + "tt0073240", + "tt0227984", + "tt0076853", + "tt1623757", + "tt8852538", + "tt2461150", + "tt0116126", + "tt0067594", + "tt0848557", + "tt2170299", + "tt1308729", + "tt3169706", + "tt1124037", + "tt0112950", + "tt2967224", + "tt0282163", + "tt0084434", + "tt0947802", + "tt1930421", + "tt2848222", + "tt0094957", + "tt0489318", + "tt0929618", + "tt4893328", + "tt2221484", + "tt0189047", + "tt3532544", + "tt0119171", + "tt1740784", + "tt0222666", + "tt2081213", + "tt0444723", + "tt0978670", + "tt2231253", + "tt0467004", + "tt4004084", + "tt0428390", + "tt0115680", + "tt0118652", + "tt0401711", + "tt0093692", + "tt0893509", + "tt0144528", + "tt0088933", + "tt0460435", + "tt0087015", + "tt7286908", + "tt0113443", + "tt4136084", + "tt0891527", + "tt0395630", + "tt2771372", + "tt0045877", + "tt0088000", + "tt0056576", + "tt1084950", + "tt0091541", + "tt1213648", + "tt1604560", + "tt6732748", + "tt0265651", + "tt6977218", + "tt4817466", + "tt4015500", + "tt6170262", + "tt6220752", + "tt2316479", + "tt0089338", + "tt0089907", + "tt0811138", + "tt7374948", + "tt0096463", + "tt0103060", + "tt1837709", + "tt0102536", + "tt0105151", + "tt0108308", + "tt0117631", + "tt4126340", + "tt0251114", + "tt0245686", + "tt0115956", + "tt2231554", + "tt0093260", + "tt1703199", + "tt0042546", + "tt0103939", + "tt0092493", + "tt1764183", + "tt0086837", + "tt0408345", + "tt0048607", + "tt0078792", + "tt0016654", + "tt0086197", + "tt0047479", + "tt0142453", + "tt0105265", + "tt9407156", + "tt1033492", + "tt0449089", + "tt0046885", + "tt7339826", + "tt5303106", + "tt0327247", + "tt0046036", + "tt0036868", + "tt0073659", + "tt0106387", + "tt0268040", + "tt4653272", + "tt0169951", + "tt0087781", + "tt0039311", + "tt0119918", + "tt0323642", + "tt0247427", + "tt0067800", + "tt1971325", + "tt2105044", + "tt0300969", + "tt0391304", + "tt0097123", + "tt0139414", + "tt2234003", + "tt8498324", + "tt0131857", + "tt0218922", + "tt1748227", + "tt3704538", + "tt0111149", + "tt0060176", + "tt0265029", + "tt0119349", + "tt0844479", + "tt0118972", + "tt0787474", + "tt1043726", + "tt0067302", + "tt0388125", + "tt0023969", + "tt2359024", + "tt0385307", + "tt8119680", + "tt6021482", + "tt0092636", + "tt0067023", + "tt1850457", + "tt1583420", + "tt0091419", + "tt0034786", + "tt0117887", + "tt1742334", + "tt0116683", + "tt0036931", + "tt0472160", + "tt1258972", + "tt0031951", + "tt0390022", + "tt6241270", + "tt0264395", + "tt0285492", + "tt0369436", + "tt0069762", + "tt0377713", + "tt0800308", + "tt0021884", + "tt2390361", + "tt8015080", + "tt8478602", + "tt2295722", + "tt3704700", + "tt1318517", + "tt7655524404", + "tt7250378", + "tt0462485", + "tt0092220", + "tt6469548", + "tt1680133", + "tt0113198", + "tt0208185", + "tt3350436", + "tt0826593", + "tt4824256", + "tt0087050", + "tt0206226", + "tt5338600", + "tt4049956", + "tt9204606", + "tt0349193", + "tt1529240", + "tt7767874", + "tt0051372", + "tt0093854", + "tt2665470", + "tt6506146", + "tt1143110", + "tt4689268", + "tt0092627", + "tt10331828", + "tt10303892", + "tt8155182", + "tt9239888", + "tt1554929", + "tt6975598", + "tt8890582", + "tt6024768", + "tt3496048", + "tt0300051", + "tt0119468", + "tt1591479", + "tt0206314", + "tt0145531", + "tt2039393", + "tt0120177", + "tt2377322", + "tt0084739", + "tt1034389", + "tt0094947", + "tt2085765", + "tt1343046", + "tt0131325", + "tt0097937", + "tt0111301", + "tt1226753", + "tt1602479", + "tt1401690", + "tt4235342", + "tt0139809", + "tt0866439", + "tt0113481", + "tt0119994", + "tt4513674", + "tt1991245", + "tt0075029", + "tt0986233", + "tt0092086", + "tt0105464", + "tt0070393", + "tt0116518", + "tt0103749", + "tt0891592", + "tt0101242", + "tt5833186", + "tt0211792", + "tt0350777", + "tt0242193", + "tt4290974", + "tt0299110", + "tt0082679", + "tt0282482", + "tt2837866", + "tt0185364", + "tt0072405", + "tt6523328", + "tt0120499", + "tt9382596", + "tt0075988", + "tt0083701", + "tt4327418", + "tt0096294", + "tt0085390", + "tt5952594", + "tt0040647", + "tt3576060", + "tt7052108", + "tt3589224", + "tt6472976", + "tt2234534", + "tt6450662", + "tt7054636", + "tt0118607", + "tt8010850", + "tt3514826", + "tt1312156", + "tt1360795", + "tt0056218", + "tt0139239", + "tt1236242", + "tt1756487", + "tt0116225", + "tt1075419", + "tt1054119", + "tt0085794", + "tt0077928", + "tt0272362", + "tt0090863", + "tt0851532", + "tt1491044", + "tt1517633", + "tt0115734", + "tt0975645", + "tt0092675", + "tt0113651", + "tt0067185", + "tt0105812", + "tt0093426", + "tt1173947", + "tt0781084", + "tt1912398", + "tt1270767", + "tt0884732", + "tt0244092", + "tt1528071", + "tt2387433", + "tt1726669", + "tt0051720", + "tt0107808", + "tt9081562", + "tt2870612", + "tt0164181", + "tt1082868", + "tt0120686", + "tt0070051", + "tt0100047", + "tt0971209", + "tt0264429", + "tt0305711", + "tt0491244", + "tt5461944", + "tt0143952", + "tt10377036", + "tt0120646", + "tt9577852", + "tt4002210", + "tt0113500", + "tt5932728", + "tt0119086", + "tt1220198", + "tt0086541", + "tt2501366", + "tt0048424", + "tt0049406", + "tt2179116", + "tt2370248", + "tt1625346", + "tt0038355", + "tt0043456", + "tt0961722", + "tt0132477", + "tt0113161", + "tt0117333", + "tt0089893", + "tt1781922", + "tt1605717", + "tt0087078", + "tt2002718", + "tt1418377", + "tt1056026", + "tt2102496", + "tt0411061", + "tt1600195", + "tt0094862", + "tt1235522", + "tt0377471", + "tt0303816", + "tt0028333", + "tt0112401", + "tt0457510", + "tt0090329", + "tt1456635", + "tt1853739", + "tt2230358", + "tt0099253", + "tt1385867", + "tt0103956", + "tt2980592", + "tt0289848", + "tt0154506", + "tt3280262", + "tt0383216", + "tt0144120", + "tt1020072", + "tt0396555", + "tt1172049", + "tt0098554", + "tt1396218", + "tt1034331", + "tt1322269", + "tt0086034", + "tt0070379", + "tt2357129", + "tt0086979", + "tt0208003", + "tt0072034", + "tt0015864", + "tt0382077", + "tt0270288", + "tt0118615", + "tt0119229", + "tt0090264", + "tt1161864", + "tt0071807", + "tt0070328", + "tt0071360", + "tt0086006", + "tt3063516", + "tt0112818", + "tt0062512", + "tt0479997", + "tt0097742", + "tt0126886", + "tt2431286", + "tt0364970", + "tt0066995", + "tt1142977", + "tt1226273", + "tt0357277", + "tt0174708", + "tt0026385", + "tt9428190", + "tt0174707", + "tt1622547", + "tt0044860", + "tt5968394", + "tt7771454", + "tt0078352", + "tt1327773", + "tt0376136", + "tt0072750", + "tt0058409", + "tt1839492", + "tt0054188", + "tt0068650", + "tt0078969", + "tt0060086", + "tt0063598", + "tt0031566", + "tt1007029", + "tt0044706", + "tt1800246", + "tt0120902", + "tt0780653", + "tt8912932", + "tt0475276", + "tt1408253", + "tt4034354", + "tt0095294", + "tt0113855", + "tt2503944", + "tt0118689", + "tt0064665", + "tt1114740", + "tt0419706", + "tt0093177", + "tt1438176", + "tt0113101", + "tt0256415", + "tt0044081", + "tt0457007", + "tt0499480", + "tt1319718", + "tt0426883", + "tt3205846", + "tt1425257", + "tt0405296", + "tt2474906", + "tt2957774", + "tt0116014", + "tt1611845", + "tt1551621", + "tt0423176", + "tt10452178", + "tt9445114", + "tt1694518", + "tt0036695", + "tt1773370", + "tt8006926", + "tt2969656", + "tt0068676", + "tt0028358", + "tt4034622", + "tt2294677", + "tt2347134", + "tt2599716", + "tt1314170", + "tt0408524", + "tt3070936", + "tt1845838", + "tt1964777", + "tt1723047", + "tt2369205", + "tt2852400", + "tt3144098", + "tt2326204", + "tt1843287", + "tt1718747", + "tt0161081", + "tt2175669", + "tt1924429", + "tt2157346", + "tt0263488", + "tt3117746", + "tt0040897", + "tt2197128", + "tt3414382", + "tt0117438", + "tt2644714", + "tt1307068", + "tt2404311", + "tt0112431", + "tt0365907", + "tt1911644", + "tt0070608", + "tt0109579", + "tt1956620", + "tt0032976", + "tt1179034", + "tt0452594", + "tt0790736", + "tt0325805", + "tt0251160", + "tt0033563", + "tt0765010", + "tt0034492", + "tt2024432", + "tt0184894", + "tt0259446", + "tt0032910", + "tt1524137", + "tt1790886", + "tt0043274", + "tt0257360", + "tt0100150", + "tt0450232", + "tt0427327", + "tt0044079", + "tt0322330", + "tt0429078", + "tt0046183", + "tt0120643", + "tt1298648", + "tt0071230", + "tt4172430", + "tt0079522", + "tt2592808", + "tt0103874", + "tt0475723", + "tt0228094", + "tt1890373", + "tt1193096", + "tt0058331", + "tt0058890", + "tt0069768", + "tt2990738", + "tt0913425", + "tt1534564", + "tt0390221", + "tt5224834", + "tt1160525", + "tt1054122", + "tt0090304", + "tt0118819", + "tt1104123", + "tt0365847", + "tt0318462", + "tt0456743", + "tt0250258", + "tt1351685", + "tt3759298", + "tt1027718", + "tt0106308", + "tt4247618", + "tt0417148", + "tt1764234", + "tt0433386", + "tt0081150", + "tt0060645", + "tt5163226", + "tt4503906", + "tt0424345", + "tt5014122", + "tt5889204", + "tt0990407", + "tt2101441", + "tt0190641", + "tt2371163", + "tt1922561", + "tt1398426", + "tt0228092", + "tt0410297", + "tt0472399", + "tt0242423", + "tt0120647", + "tt0095159", + "tt3086386", + "tt0215129", + "tt0272338", + "tt0100133", + "tt0087998", + "tt0472033", + "tt1100089", + "tt0391198", + "tt0805564", + "tt1935179", + "tt1915581", + "tt0041959", + "tt6301712", + "tt0021749", + "tt0094291", + "tt0389722", + "tt1139328", + "tt0301345", + "tt0070547", + "tt0036775", + "tt0050476", + "tt0346491", + "tt0159097", + "tt1231587", + "tt0452003", + "tt0061852", + "tt1528100", + "tt0283426", + "tt0938283", + "tt2549540", + "tt0051642", + "tt0074521", + "tt0120681", + "tt0075031", + "tt0062850", + "tt0073702", + "tt0063442", + "tt0065462", + "tt0341555", + "tt0056069", + "tt6040806", + "tt0055254", + "tt3002798", + "tt5673432", + "tt0055529", + "tt2318440", + "tt0203433", + "tt0081782", + "tt6892462", + "tt5781458", + "tt0453091", + "tt0058994", + "tt1517451", + "tt0077770", + "tt0156329", + "tt0053720", + "tt0072634", + "tt0070844", + "tt0181956", + "tt2008647", + "tt0986361", + "tt0204360", + "tt0053992", + "tt0055404", + "tt7218804", + "tt2209764", + "tt0079596", + "tt0363547", + "tt0352248", + "tt0241303", + "tt0339291", + "tt0086622", + "tt0010853", + "tt0100157", + "tt1655442", + "tt0027977", + "tt0363988", + "tt1623205", + "tt1284575", + "tt0388482", + "tt10289996", + "tt0914798", + "tt1111422", + "tt1124035", + "tt0117665", + "tt0037469", + "tt1815862", + "tt0043014", + "tt0276751", + "tt0089927", + "tt0029583", + "tt2053463", + "tt3330944", + "tt1701202", + "tt8385976", + "tt1160369", + "tt0327554", + "tt4599588", + "tt2379460", + "tt5562100", + "tt0092001", + "tt0102728", + "tt2388050", + "tt0100438", + "tt9678928", + "tt6612946", + "tt0462160", + "tt3416536", + "tt8693770", + "tt6292852", + "tt6704898", + "tt9556730", + "tt0165543", + "tt1650044", + "tt6408924", + "tt4061944", + "tt5862166", + "tt6360394", + "tt6905676", + "tt0098662", + "tt9139848", + "tt7611944", + "tt0165433", + "tt4982252", + "tt0234817", + "tt2107850", + "tt1125849", + "tt3377798", + "tt1587278", + "tt0082761", + "tt7844450", + "tt0034583", + "tt0031381", + "tt3068544", + "tt3400060", + "tt1799585", + "tt4586114", + "tt3983732", + "tt0196229", + "tt0119396", + "tt3907206", + "tt3484140", + "tt0449059", + "tt2024469", + "tt0425210", + "tt0489099", + "tt1608290", + "tt0066769", + "tt4498760", + "tt0055134", + "tt2004420", + "tt0290002", + "tt3719948", + "tt0091561", + "tt8516544", + "tt1231583", + "tt0068742", + "tt6473402", + "tt0274309", + "tt0486576", + "tt0116367", + "tt0071278", + "tt0105159", + "tt8194318", + "tt4433172", + "tt0056989", + "tt0066900", + "tt0071154", + "tt0065440", + "tt0055534", + "tt1063669", + "tt4484426", + "tt3240102", + "tt0071308", + "tt0075001", + "tt0455841", + "tt4661680", + "tt0066600", + "tt0134821", + "tt0073406", + "tt0154468", + "tt0440003", + "tt0055022", + "tt0093633", + "tt0080166", + "tt0117260", + "tt5167934", + "tt3403194", + "tt3827684", + "tt6940908", + "tt6902696", + "tt0079886", + "tt0097004", + "tt0083526", + "tt5901326", + "tt6846128", + "tt1315419", + "tt4663548", + "tt0056110", + "tt0083146", + "tt6628192", + "tt0042423", + "tt0090093", + "tt1728979", + "tt5538568", + "tt2027255", + "tt3453052", + "tt5810122", + "tt2484224", + "tt8307082", + "tt1978567", + "tt1652287", + "tt1386492", + "tt2990126", + "tt0077534", + "tt4337690", + "tt5281700", + "tt1722638", + "tt0071455", + "tt1340803", + "tt2324928", + "tt0051724", + "tt1740468", + "tt0127045", + "tt0062776", + "tt0120118", + "tt0077270", + "tt1029167", + "tt0105191", + "tt4335650", + "tt4978274", + "tt0065922", + "tt0113674", + "tt1291549", + "tt1178640", + "tt1465478", + "tt3758708", + "tt2710826", + "tt0068897", + "tt1640486", + "tt0099636", + "tt1715320", + "tt5120400", + "tt3397556", + "tt3562786", + "tt0087010", + "tt1289437", + "tt4411618", + "tt0044937", + "tt0109550", + "tt3277624", + "tt0048248", + "tt4653586", + "tt8148018", + "tt1874707", + "tt5497458", + "tt9149786", + "tt2024521", + "tt4638246", + "tt5881522", + "tt3129692", + "tt5618332", + "tt1086794", + "tt6237168", + "tt1776097", + "tt6969814", + "tt0342108", + "tt0217331", + "tt5358948", + "tt2187061", + "tt8025310", + "tt1176410", + "tt1780871", + "tt0119655", + "tt1225698", + "tt0186654", + "tt6095944", + "tt4060480", + "tt9557190", + "tt4225696", + "tt4270060", + "tt3888806", + "tt4416800", + "tt1717229", + "tt6944264", + "tt1735853", + "tt0104987", + "tt6013892", + "tt5525418", + "tt1038902", + "tt5478868", + "tt0225481", + "tt0125988", + "tt0085159", + "tt0180316", + "tt0273041", + "tt0103190", + "tt0047501", + "tt0297284", + "tt8452154", + "tt1393020", + "tt0103757", + "tt0186183", + "tt3759416", + "tt2118775", + "tt0212235", + "tt5195832", + "tt5089786", + "tt8774260", + "tt0315983", + "tt4366830", + "tt0081159", + "tt3169832", + "tt0492931", + "tt7687082", + "tt2147491", + "tt0256858", + "tt0392465", + "tt2171735", + "tt8343312", + "tt4796634", + "tt0929858", + "tt0118945", + "tt0323531", + "tt0086618", + "tt0057581", + "tt1870529", + "tt3603808", + "tt1937449", + "tt1148205", + "tt7200946", + "tt0415856", + "tt0049674", + "tt2548208", + "tt0480011", + "tt1839591", + "tt0097662", + "tt1319694", + "tt2011953", + "tt0102724", + "tt2027064", + "tt1296899", + "tt0078753", + "tt1196338", + "tt0937375", + "tt3776826", + "tt0092752", + "tt3305308", + "tt0102802", + "tt1551630", + "tt6113488", + "tt0073600", + "tt0465997", + "tt2957760", + "tt1247667", + "tt1509803", + "tt0088967", + "tt2624412", + "tt0062708", + "tt1462054", + "tt0089348", + "tt2933544", + "tt3687310", + "tt6386748", + "tt10160814", + "tt0862748", + "tt7587878", + "tt0060640", + "tt0062490", + "tt4267818", + "tt0061715", + "tt0120490", + "tt0224345", + "tt0059462", + "tt0061669", + "tt0098306", + "tt0074968", + "tt9547338", + "tt0075016", + "tt0056095", + "tt0054144", + "tt0053994", + "tt6319654", + "tt0026094", + "tt0033838", + "tt0028378", + "tt0068718", + "tt0487419", + "tt0073796", + "tt0047682", + "tt0114323", + "tt0765849", + "tt0283003", + "tt1772270", + "tt0057869", + "tt0049537", + "tt0102816", + "tt0027964", + "tt7459182", + "tt0029943", + "tt0020475", + "tt0030448", + "tt0029930", + "tt0050567", + "tt0081254", + "tt0091980", + "tt6368028", + "tt0072826", + "tt0073471", + "tt0077547", + "tt1982650", + "tt7765120", + "tt0040009", + "tt0097289", + "tt0082351", + "tt0094663", + "tt0110093", + "tt0091578", + "tt4270516", + "tt0019109", + "tt0276819", + "tt3314376", + "tt0047422", + "tt0068972", + "tt0402850", + "tt2082180", + "tt0074806", + "tt0109384", + "tt0055304", + "tt0117774", + "tt0063568", + "tt1092634", + "tt0021542", + "tt0060268", + "tt2717860", + "tt0064067", + "tt0161083", + "tt0047638", + "tt1368440", + "tt0065499", + "tt2055765", + "tt0080616", + "tt3474600", + "tt0134154", + "tt0995863", + "tt0070756", + "tt0787505", + "tt2967988", + "tt0093304", + "tt0103044", + "tt0075612", + "tt3474602", + "tt2718440", + "tt0107096", + "tt0926063", + "tt0065466", + "tt0069091", + "tt0071512", + "tt0090907", + "tt0079638", + "tt1153706", + "tt3774466", + "tt3303728", + "tt0088915", + "tt1445202", + "tt6182078", + "tt2292959", + "tt0108473", + "tt2911668", + "tt3289728", + "tt0339135", + "tt0057449", + "tt0110006", + "tt2091318", + "tt0369672", + "tt0102388", + "tt0104990", + "tt0063850", + "tt0066819", + "tt1715336", + "tt3299704", + "tt5143226", + "tt3275216", + "tt0094894", + "tt4943322", + "tt2581244", + "tt1620935", + "tt0264761", + "tt0072288", + "tt7922976", + "tt7364566", + "tt0101787", + "tt0810784", + "tt2473794", + "tt7419468", + "tt0067588", + "tt2401097", + "tt2639254", + "tt0102744", + "tt0159382", + "tt4383594", + "tt0062138", + "tt0116324", + "tt4208432", + "tt0765446", + "tt0079207", + "tt2084957", + "tt2218003", + "tt7731512", + "tt6562628", + "tt0352851", + "tt1032746", + "tt0067523", + "tt1535492", + "tt1851871", + "tt0119668", + "tt6493644", + "tt0226018", + "tt0237045", + "tt0100595", + "tt0070246", + "tt0061735", + "tt0095484", + "tt0069041", + "tt0054640", + "tt0073312", + "tt0075720", + "tt0107159", + "tt0069165", + "tt5227746", + "tt0099812", + "tt0075203", + "tt1554522", + "tt0289992", + "tt0112659", + "tt0078300", + "tt0077973", + "tt4824302", + "tt0278723", + "tt2652092", + "tt0105831", + "tt6063024", + "tt1160996", + "tt0367594", + "tt1464174", + "tt0114681", + "tt1181791", + "tt6211976", + "tt5311542", + "tt2244901", + "tt0105275", + "tt2091473", + "tt1441952", + "tt0091090", + "tt1314228", + "tt1932767", + "tt0329717", + "tt1486834", + "tt0228677", + "tt3544112", + "tt0089270", + "tt2404181", + "tt6388090", + "tt1783732", + "tt1196948", + "tt0358135", + "tt0087963", + "tt1117385", + "tt0435665", + "tt0421729", + "tt0329691", + "tt1294688", + "tt0081187", + "tt6391440", + "tt0055256", + "tt1920849", + "tt0328675", + "tt9675192", + "tt2313780", + "tt1414827", + "tt4768160", + "tt0121922", + "tt6091936", + "tt0060903", + "tt0022458", + "tt0038675", + "tt0105851", + "tt0061037", + "tt1404364", + "tt0063668", + "tt0064828", + "tt0074870", + "tt0067487", + "tt0040418", + "tt0068971", + "tt0108650", + "tt0059601", + "tt0060888", + "tt0439654", + "tt0076164", + "tt0071458", + "tt0096885", + "tt0086242", + "tt0165075", + "tt4660800", + "tt1156506", + "tt0435026", + "tt0475355", + "tt0079484", + "tt2904430", + "tt0083156", + "tt2063013", + "tt0067696", + "tt0104155", + "tt6147768", + "tt1662557", + "tt1077094", + "tt0882791", + "tt0485552", + "tt1098226", + "tt4619940", + "tt3108840", + "tt0417072", + "tt1322335", + "tt7282468", + "tt0366292", + "tt1646203", + "tt0296696", + "tt6857282", + "tt2139903", + "tt1373138", + "tt3550748", + "tt0072007", + "tt3145220", + "tt0073168", + "tt3812402", + "tt5034276", + "tt3312962", + "tt0348568", + "tt0065555", + "tt0064897", + "tt5876604", + "tt3025712", + "tt8129794", + "tt0160916", + "tt1948581", + "tt1305730", + "tt5136874", + "tt0041998", + "tt6184402", + "tt0087635", + "tt7867026", + "tt4975498", + "tt0094890", + "tt4830786", + "tt0072759", + "tt0057426", + "tt0067850", + "tt1773768", + "tt0063101", + "tt0089154", + "tt0124565", + "tt0092843", + "tt0848538", + "tt0073259", + "tt0075614", + "tt0029841", + "tt0046851", + "tt0046138", + "tt0058372", + "tt0163989", + "tt0050958", + "tt0244706", + "tt1772399", + "tt7547158", + "tt1189432", + "tt0074477", + "tt0029056", + "tt4475176", + "tt0221269", + "tt0036272", + "tt0064068", + "tt7778680", + "tt1148277", + "tt0097167", + "tt4694546", + "tt0205779", + "tt7001042", + "tt0416675", + "tt0085442", + "tt1016321", + "tt0052006", + "tt8679574", + "tt0070714", + "tt0079917", + "tt1727578", + "tt0120530", + "tt6752992", + "tt8106566", + "tt0103950", + "tt0062345", + "tt0047820", + "tt1123373", + "tt0054209", + "tt1617250", + "tt0069336", + "tt0082220", + "tt0061709", + "tt0054901", + "tt0051349", + "tt8739240", + "tt0048933", + "tt0087644", + "tt4975920", + "tt0045082", + "tt0066735", + "tt0049872", + "tt0093206", + "tt0090756", + "tt0063167", + "tt0082273", + "tt0072324", + "tt0124501", + "tt0250638", + "tt0074941", + "tt0080080", + "tt0119472", + "tt0073735", + "tt0073537", + "tt0105399", + "tt0064169", + "tt0089029", + "tt0045848", + "tt5462906", + "tt0050252", + "tt0074383", + "tt0065656", + "tt0062426", + "tt0081494", + "tt1853614", + "tt0079514", + "tt0077525", + "tt4006794", + "tt0053458", + "tt0056219", + "tt0056725", + "tt0076478", + "tt0082257", + "tt0061733", + "tt0078243", + "tt0021025", + "tt0057358", + "tt0063595", + "tt2423422", + "tt0057611", + "tt6888282", + "tt2639336", + "tt1242422", + "tt0055499", + "tt1388371", + "tt0052207", + "tt0092859", + "tt0054346", + "tt8206940", + "tt0928193", + "tt8535848", + "tt2740984", + "tt4933506", + "tt6087048", + "tt9606548", + "tt0114150", + "tt0040478", + "tt0464837", + "tt1311031", + "tt0050847", + "tt6462084", + "tt4109284", + "tt3096810", + "tt3033160", + "tt6301140", + "tt4765338", + "tt5164664", + "tt0484414", + "tt5258194", + "tt4379480", + "tt0079882", + "tt2259968", + "tt0294852", + "tt0113360", + "tt3120274", + "tt3268288", + "tt2527660", + "tt0792947", + "tt4985848", + "tt0110616", + "tt0077233", + "tt0207957", + "tt5700182", + "tt0252227", + "tt0022753", + "tt0057811", + "tt2245279", + "tt7493818", + "tt3486080", + "tt6236780", + "tt7068878", + "tt0106475", + "tt0056112", + "tt0037638", + "tt0043938", + "tt6241768", + "tt6574700", + "tt7912678", + "tt0055024", + "tt9490990", + "tt0254688", + "tt0405963", + "tt0059573", + "tt0848554", + "tt0058091", + "tt0084485", + "tt7935980", + "tt10335986", + "tt0061520", + "tt0197626", + "tt0041822", + "tt0093562", + "tt0054116", + "tt0043827", + "tt0433696", + "tt0061796", + "tt0107894", + "tt0093628", + "tt0078477", + "tt0088689", + "tt0058166", + "tt0032043", + "tt0041871", + "tt9080630", + "tt0244167", + "tt0074633", + "tt6300886", + "tt0045563", + "tt0079709", + "tt4228294", + "tt0037702", + "tt0054731", + "tt5548284", + "tt0052227", + "tt0175205", + "tt0072960", + "tt0057683", + "tt0062207", + "tt0063260", + "tt0072895", + "tt0058745", + "tt0043959", + "tt0051666", + "tt0034251", + "tt1176416", + "tt0055489", + "tt0049523", + "tt0058500", + "tt0046977", + "tt4450396", + "tt0097015", + "tt0082727", + "tt0059124", + "tt0238948", + "tt0228333", + "tt0067229", + "tt0051649", + "tt1708658", + "tt1477835", + "tt0068950", + "tt0021800", + "tt0051436", + "tt0087263", + "tt0026276", + "tt0065037", + "tt0065036", + "tt0040607", + "tt0065591", + "tt0021890", + "tt0069976", + "tt0061014", + "tt0079138", + "tt0059729", + "tt0170266", + "tt0047417", + "tt0045124", + "tt0039152", + "tt3529198", + "tt0043142", + "tt0337741", + "tt2908228", + "tt0058756", + "tt0067350", + "tt0086374", + "tt0080934", + "tt0051429", + "tt0051713", + "tt2171847", + "tt0032383", + "tt0025746", + "tt0102713", + "tt0022698", + "tt0084489", + "tt0043090", + "tt0061204", + "tt0023940", + "tt0057997", + "tt0073502", + "tt0051496", + "tt0120685", + "tt0050296", + "tt8254556", + "tt0058529", + "tt0055992", + "tt0074455", + "tt0064253", + "tt0064949", + "tt0060182", + "tt0089015", + "tt1015474", + "tt3741834", + "tt0024593", + "tt0064622", + "tt0071598", + "tt0068805", + "tt0064437", + "tt0058390", + "tt1773764", + "tt6864046", + "tt0053719", + "tt4917554", + "tt0072732", + "tt9021234", + "tt1701223", + "tt0024471", + "tt0069834", + "tt0066907", + "tt0151239", + "tt2380342", + "tt7069030", + "tt8920490", + "tt8262226", + "tt0431265", + "tt0162030", + "tt1754648", + "tt8065304", + "tt3365084", + "tt3564924", + "tt6912990", + "tt1531697", + "tt1718763", + "tt0160941", + "tt5975068", + "tt0420231", + "tt5812542", + "tt0146671", + "tt3602660", + "tt4910232", + "tt0050490", + "tt8497714", + "tt0397105", + "tt3804774", + "tt5728374", + "tt1392261", + "tt7946586", + "tt0218426", + "tt1447971", + "tt0105347", + "tt0062006", + "tt0104006", + "tt1999811", + "tt0055798", + "tt6562798", + "tt0069897", + "tt0089280", + "tt0045546", + "tt1699114", + "tt0076245", + "tt0106292", + "tt0051406", + "tt1525366", + "tt2486630", + "tt0066730", + "tt0112760", + "tt2828322", + "tt0978759", + "tt0064840", + "tt0363780", + "tt0084329", + "tt10368652", + "tt0421073", + "tt0048347", + "tt0313792", + "tt1043696", + "tt0022286", + "tt0074554", + "tt0032904", + "tt0324519", + "tt0057495", + "tt3307692", + "tt0035979", + "tt0074749", + "tt0063663", + "tt5001094", + "tt0028597", + "tt0065469", + "tt0057251", + "tt1103982", + "tt1512732", + "tt0277941", + "tt0072979", + "tt0204626", + "tt1186373", + "tt7412066", + "tt0465375", + "tt0032155", + "tt0053085", + "tt0969647", + "tt3710944", + "tt0023458", + "tt0071840", + "tt3152486", + "tt1398941", + "tt0063035", + "tt0068931", + "tt5275926", + "tt0455608", + "tt1683043", + "tt0166485", + "tt1869265", + "tt0060371", + "tt5957018", + "tt1975159", + "tt0071746", + "tt0024857", + "tt0084157", + "tt1174686", + "tt0053580", + "tt1977094", + "tt0398712", + "tt0087003", + "tt0091415", + "tt0308499", + "tt0074891", + "tt5815078", + "tt0984227", + "tt9081188", + "tt0365889", + "tt7772580", + "tt1384590", + "tt6231792", + "tt0380160", + "tt0061749", + "tt1937118", + "tt0462036", + "tt4083124", + "tt3538602", + "tt1174730", + "tt0064748", + "tt0099699", + "tt0095119", + "tt1235778", + "tt0082945", + "tt2396200", + "tt0055807", + "tt0028010", + "tt0299071", + "tt0100828", + "tt6360332", + "tt0095895", + "tt0255819", + "tt1914320", + "tt1225831", + "tt2376726", + "tt0168501", + "tt0277371", + "tt0076543", + "tt1368044", + "tt2626102", + "tt2279346", + "tt9169592", + "tt2302150", + "tt3559422", + "tt5375040", + "tt2048854", + "tt0074254", + "tt0071571", + "tt1667897", + "tt4712754", + "tt2531318", + "tt2504022", + "tt1056101", + "tt2284790", + "tt1249415", + "tt2954474", + "tt0439815", + "tt8917752", + "tt0119362", + "tt6098380", + "tt7422552", + "tt10377024", + "tt10136680", + "tt3602422", + "tt7042024", + "tt6157970", + "tt3800894", + "tt7870578", + "tt0374089", + "tt3882074", + "tt0051714", + "tt3922350", + "tt0093872", + "tt4425064", + "tt4135844", + "tt2072230", + "tt0062395", + "tt1596280", + "tt2486682", + "tt0065834", + "tt4701660", + "tt4294052", + "tt1566946", + "tt4074114", + "tt0059015", + "tt0024184", + "tt0128719", + "tt5147214", + "tt0053133", + "tt0427038", + "tt0073773", + "tt0089643", + "tt1403130", + "tt0083641", + "tt0077321", + "tt0070260", + "tt0080646", + "tt3296658", + "tt2668150", + "tt3201572", + "tt0096094", + "tt0048960", + "tt5037684", + "tt1385956", + "tt4960466", + "tt2771506", + "tt1069242", + "tt0074294", + "tt4965146", + "tt4145178", + "tt2050664", + "tt0068817", + "tt0316465", + "tt0112896", + "tt5457244", + "tt3282174", + "tt7224496", + "tt0143428", + "tt2287663", + "tt0071695", + "tt3526706", + "tt0068815", + "tt0119141", + "tt0108071", + "tt2981746", + "tt7052494", + "tt1199779", + "tt2361700", + "tt0096257", + "tt5888384", + "tt1683981", + "tt1277737", + "tt3953420", + "tt3230608", + "tt0096409", + "tt0218505", + "tt2611026", + "tt4964772", + "tt0479884", + "tt1954612", + "tt2445178", + "tt1464539", + "tt0044078", + "tt1405500", + "tt3828116", + "tt0020080", + "tt2414046", + "tt2486678", + "tt4137324", + "tt1305583", + "tt0119062", + "tt1385912", + "tt1477715", + "tt9376172", + "tt6234120", + "tt1846487", + "tt0116030", + "tt4764974", + "tt3188614", + "tt6523594", + "tt1838571", + "tt0107426", + "tt5213534", + "tt5037840", + "tt7291412", + "tt9267624", + "tt0069467", + "tt0322545", + "tt10108358", + "tt0142996", + "tt2822400", + "tt3079016", + "tt6981046", + "tt0233375", + "tt0790723", + "tt0016481", + "tt5598292", + "tt0067227", + "tt0050225", + "tt0289658", + "tt2898904", + "tt5952522", + "tt6534422", + "tt5982216", + "tt5117222", + "tt3823912", + "tt0115495", + "tt3810486", + "tt1571222", + "tt3170504", + "tt2340888", + "tt7006658", + "tt2375255", + "tt2834944", + "tt5174196", + "tt1928144", + "tt5755622", + "tt0977658", + "tt0940909", + "tt0238924", + "tt3062976", + "tt1787127", + "tt3918686", + "tt2409418", + "tt0077714", + "tt7090040", + "tt0116259", + "tt3155734", + "tt0079153", + "tt1396226", + "tt4386242", + "tt0378793", + "tt3312868", + "tt1691924", + "tt3030970", + "tt0828065", + "tt1326283", + "tt0051899", + "tt2463302", + "tt0107504", + "tt6857250", + "tt1807944", + "tt2715556", + "tt1014774", + "tt6237306", + "tt1684548", + "tt7558166", + "tt5090486", + "tt1727300", + "tt4082314", + "tt0093677", + "tt2349142", + "tt4981292", + "tt0096340", + "tt1813609", + "tt2109127", + "tt0102729", + "tt4465538", + "tt2504640", + "tt0321997", + "tt0068457", + "tt0051690", + "tt1592855", + "tt1027862", + "tt0309291", + "tt0414161", + "tt0119167", + "tt2125472", + "tt0327409", + "tt10079698", + "tt3885932", + "tt0151582", + "tt2536124", + "tt2354205", + "tt3072110", + "tt0101615", + "tt2494032", + "tt0062477", + "tt1884438", + "tt2364659", + "tt2608726", + "tt8547366", + "tt0068863", + "tt0085387", + "tt2554714", + "tt1988621", + "tt0862892", + "tt1839590", + "tt1780888", + "tt0482577", + "tt1745740", + "tt0489070", + "tt0056552", + "tt2503358", + "tt3138192", + "tt1003059", + "tt2302969", + "tt3640226", + "tt2622874", + "tt2290553", + "tt7241800", + "tt2167843", + "tt3981112", + "tt2900624", + "tt0329679", + "tt1087828", + "tt2396711", + "tt2830416", + "tt2675318", + "tt1499948", + "tt2290534", + "tt3311900", + "tt0072625", + "tt0102343", + "tt0034465", + "tt0098368", + "tt0051630", + "tt0066871", + "tt2781516", + "tt3254570", + "tt0496375", + "tt0106504", + "tt2401789", + "tt1723799", + "tt0082323", + "tt2090488", + "tt0094695", + "tt0116756", + "tt1833844", + "tt3339624", + "tt0087789", + "tt0089023", + "tt1931601", + "tt0061411", + "tt0086590", + "tt0095400", + "tt1536019", + "tt0226267", + "tt0245522", + "tt0184310", + "tt3718066", + "tt1890375", + "tt2027154", + "tt2070759", + "tt2427836", + "tt0093006", + "tt0168136", + "tt0495861", + "tt1723124", + "tt0084732", + "tt1995400", + "tt0068911", + "tt2446318", + "tt0090860", + "tt0057078", + "tt0052287", + "tt2343585", + "tt0067794", + "tt2119396", + "tt1454099", + "tt3744428", + "tt4046282", + "tt4021190", + "tt0091859", + "tt1645126", + "tt0282659", + "tt3644202", + "tt2946858", + "tt1665744", + "tt4313216", + "tt3551954", + "tt2366131", + "tt1161449", + "tt1711510", + "tt5210376", + "tt0051895", + "tt3511812", + "tt4768764", + "tt1318516", + "tt0092751", + "tt4135076", + "tt0036057", + "tt2279241", + "tt0064137", + "tt5665022", + "tt0088864", + "tt1218503", + "tt0097561", + "tt1014762", + "tt0182996", + "tt3138344", + "tt0078870", + "tt0067085", + "tt0322725", + "tt2571776", + "tt0043015", + "tt2378177", + "tt0066475", + "tt0071626", + "tt2091956", + "tt0429106", + "tt2983922", + "tt8426808", + "tt1314248", + "tt3072376", + "tt1240941", + "tt0060975", + "tt0430677", + "tt2576852", + "tt4110388", + "tt1647446", + "tt0052733", + "tt1984221", + "tt0057642", + "tt8875622", + "tt0167367", + "tt1239257", + "tt8426800", + "tt0102557", + "tt5859038", + "tt6597612", + "tt0402175", + "tt7616710", + "tt4179338", + "tt1483386", + "tt6652828", + "tt5929226", + "tt4299862", + "tt9366716", + "tt6025356", + "tt6085642", + "tt0762072", + "tt0054745", + "tt2009410", + "tt8267604", + "tt0083264", + "tt2125439", + "tt1446113", + "tt0075975", + "tt0119389", + "tt2415174", + "tt2527186", + "tt4255252", + "tt0309600", + "tt0396096", + "tt6096364", + "tt6095002", + "tt0338559", + "tt1194606", + "tt1622988", + "tt0098512", + "tt4272866", + "tt0284929", + "tt0095368", + "tt0102619", + "tt2547332", + "tt0353625", + "tt1000768", + "tt0106366", + "tt0983213", + "tt2446192", + "tt0048426", + "tt2073016", + "tt1831776", + "tt0102293", + "tt3361068", + "tt1734589", + "tt0089740", + "tt0239570", + "tt2112287", + "tt4105970", + "tt0043435", + "tt2722786", + "tt1375754", + "tt2750632", + "tt0050874", + "tt0067384", + "tt5116940", + "tt3748076", + "tt0066561", + "tt4935446", + "tt1476250", + "tt3186838", + "tt0077587", + "tt2101507", + "tt6451260", + "tt0499464", + "tt2404171", + "tt1598172", + "tt0367555", + "tt0026104", + "tt1373403", + "tt0080903", + "tt0032156", + "tt0131335", + "tt0186508", + "tt1025102", + "tt0071760", + "tt1206881", + "tt5371622", + "tt4270878", + "tt0042281", + "tt1308756", + "tt5712474", + "tt2872570", + "tt1792621", + "tt3913550", + "tt0085937", + "tt0338187", + "tt0060463", + "tt5881528", + "tt1312230", + "tt5981616", + "tt0413108", + "tt2062966", + "tt5503824", + "tt4936398", + "tt0202114", + "tt6876170", + "tt7407296", + "tt0049806", + "tt2044729", + "tt1630529", + "tt1315052", + "tt1534394", + "tt0453376", + "tt5351576", + "tt6299592", + "tt0848587", + "tt3340446", + "tt4117094", + "tt1047102", + "tt0075982", + "tt2625948", + "tt2131556", + "tt2785162", + "tt8381492", + "tt7297960", + "tt0073206", + "tt2258545", + "tt1379169", + "tt2471538", + "tt0050873", + "tt0095825", + "tt1212022", + "tt5748998", + "tt0071722", + "tt3901256", + "tt2334350", + "tt1190617", + "tt1928335", + "tt0236693", + "tt2182071", + "tt2466622", + "tt0091957", + "tt1877890", + "tt2081343", + "tt0858436", + "tt2073131", + "tt2151783", + "tt0020025", + "tt9046576", + "tt9670282", + "tt5900870", + "tt0327753", + "tt0110008", + "tt0064443", + "tt2452244", + "tt1687878", + "tt8743064", + "tt5530838", + "tt0120788", + "tt1512274", + "tt7594584", + "tt1702923", + "tt2395183", + "tt0115820", + "tt2296471", + "tt2197561", + "tt0339716", + "tt1686897", + "tt1998392", + "tt4773854", + "tt0080872", + "tt1580426", + "tt2338190", + "tt1572506", + "tt10171746", + "tt3088036", + "tt0066851", + "tt0140137", + "tt0071742", + "tt1158939", + "tt0070001", + "tt1924334", + "tt4059112", + "tt0046422", + "tt0097351", + "tt1698653", + "tt4911288", + "tt2242975", + "tt3727690", + "tt1129404", + "tt1702929", + "tt0315788", + "tt0272790", + "tt2362102", + "tt1305579", + "tt1621418", + "tt2281159", + "tt2290747", + "tt2238758", + "tt0068657", + "tt3799996", + "tt1331112", + "tt2027231", + "tt2071567", + "tt4274656", + "tt3578504", + "tt1592265", + "tt1498858", + "tt3503840", + "tt4539742", + "tt0061557", + "tt2385195", + "tt2936174", + "tt2419284", + "tt4463120", + "tt0374184", + "tt2178256", + "tt4011010", + "tt1588362", + "tt5227660", + "tt2276860", + "tt0899154", + "tt2570390", + "tt2079571", + "tt0071415", + "tt1762233", + "tt0073190", + "tt0206013", + "tt2468638", + "tt5238368", + "tt2296935", + "tt5618870", + "tt0073700", + "tt2040367", + "tt6090588", + "tt1428556", + "tt1591504", + "tt0035432", + "tt1232207", + "tt0117619", + "tt0097954", + "tt3560546", + "tt2346198", + "tt0091229", + "tt0093229", + "tt0307034", + "tt0082530", + "tt2963232", + "tt0814075", + "tt3611112", + "tt0156701", + "tt3978902", + "tt2873214", + "tt0084488", + "tt9032888", + "tt0044476", + "tt0034116", + "tt3013018", + "tt3324702", + "tt0973836", + "tt1525916", + "tt1941645", + "tt1143141", + "tt2505366", + "tt1730300", + "tt0449488", + "tt7317324", + "tt8172466", + "tt1934195", + "tt1726758", + "tt3429014", + "tt3326846", + "tt0070605", + "tt2265651", + "tt1594505", + "tt0239548", + "tt1073656", + "tt1684921", + "tt0332375", + "tt0431447", + "tt8426846", + "tt0428765", + "tt0808409", + "tt2194748", + "tt8426154", + "tt1879078", + "tt1748018", + "tt1414449", + "tt7972040", + "tt3448124", + "tt3214240", + "tt1247681", + "tt0814150", + "tt9306684", + "tt3181400", + "tt6862864", + "tt2246955", + "tt1543493", + "tt1381505", + "tt1760947", + "tt0259741", + "tt0047085", + "tt0083024", + "tt0129023", + "tt0043278", + "tt1029097", + "tt0101490", + "tt0844457", + "tt2122424", + "tt3380104", + "tt3486392", + "tt0860870", + "tt2391622", + "tt1172587", + "tt2170371", + "tt0431074", + "tt2923076", + "tt1961438", + "tt2091423", + "tt0078780", + "tt0069958", + "tt0088184", + "tt1485761", + "tt1377253", + "tt1730760", + "tt0061800", + "tt0799942", + "tt0107108", + "tt4788736", + "tt0291502", + "tt0111185", + "tt1883184", + "tt8742574", + "tt1982882", + "tt1236254", + "tt3924510", + "tt2641704", + "tt0078508", + "tt2622854", + "tt4708346", + "tt4511394", + "tt0038032", + "tt1885281", + "tt1787797", + "tt2345721", + "tt2888068", + "tt4104022", + "tt3097756", + "tt0032993", + "tt0089689", + "tt5963314", + "tt6328046", + "tt0145937", + "tt2901736", + "tt4968782", + "tt0093223", + "tt0077597", + "tt2048819", + "tt4075322", + "tt4534732", + "tt0105114", + "tt2747908", + "tt2404003", + "tt2488586", + "tt7469972", + "tt2006719", + "tt0083072", + "tt0074570", + "tt1270079", + "tt5024894", + "tt7233726", + "tt0367000", + "tt3721630", + "tt4773642", + "tt4205920", + "tt0346811", + "tt2966728", + "tt3717324", + "tt3867396", + "tt0093978", + "tt0078252", + "tt4943934", + "tt6157600", + "tt0039341", + "tt0137458", + "tt4411234", + "tt0055913", + "tt2124908", + "tt2593392", + "tt1781784", + "tt2393799", + "tt0088153", + "tt9128686", + "tt0098213", + "tt3162938", + "tt0085503", + "tt2506386", + "tt3663644", + "tt4527400", + "tt1313121", + "tt0054866", + "tt1379721", + "tt0079082", + "tt1405413", + "tt0102416", + "tt0128165", + "tt1454542", + "tt0064588", + "tt1181840", + "tt2626090", + "tt2149360", + "tt2914838", + "tt3181886", + "tt1648964", + "tt3295482", + "tt5305352", + "tt6547786", + "tt0076517", + "tt3184720", + "tt3405714", + "tt2846292", + "tt1243955", + "tt0051807", + "tt7471884", + "tt9880234", + "tt4919240", + "tt8315092", + "tt2570436", + "tt0070825", + "tt0357894", + "tt2056757", + "tt0056512", + "tt4943594", + "tt2245151", + "tt3148348", + "tt8334236", + "tt1027874", + "tt5216256", + "tt1042896", + "tt2073029", + "tt0107626", + "tt0073114", + "tt0258489", + "tt2166616", + "tt0171356", + "tt4163020", + "tt1742330", + "tt1353810", + "tt1905010", + "tt3521442", + "tt3374816", + "tt0064536", + "tt1401113", + "tt1674197", + "tt0809504", + "tt3453580", + "tt3317874", + "tt0085626", + "tt4337500", + "tt1470020", + "tt2242176", + "tt2517658", + "tt5042436", + "tt9228950", + "tt2547172", + "tt2622672", + "tt2257216", + "tt3304756", + "tt0025913", + "tt0093276", + "tt0085533", + "tt1231593", + "tt3969972", + "tt3610576", + "tt10207850", + "tt0270394", + "tt3242756", + "tt0085695", + "tt2531362", + "tt1071203", + "tt1516009", + "tt5218486", + "tt6006924", + "tt8289524", + "tt0071389", + "tt2565280", + "tt8614742", + "tt3166406", + "tt5269396", + "tt3676370", + "tt2439190", + "tt6755892", + "tt8387464", + "tt3317522", + "tt2481248", + "tt0041786", + "tt3730518", + "tt5273624", + "tt0263215", + "tt0120115", + "tt2321341", + "tt0105652", + "tt2166934", + "tt2513092", + "tt3433170", + "tt0082481", + "tt0104572", + "tt0311041", + "tt1719583", + "tt3898860", + "tt1340761", + "tt1323973", + "tt5481184", + "tt1159721", + "tt3461828", + "tt2368920", + "tt1837584", + "tt3460252", + "tt0098691", + "tt0103935", + "tt1199550", + "tt0099474", + "tt3085500", + "tt2366572", + "tt0083002", + "tt1723129", + "tt0069331", + "tt0104647", + "tt8986842", + "tt1718199", + "tt6461514", + "tt1585257", + "tt0387808", + "tt2272918", + "tt4951834", + "tt0100881", + "tt0790657", + "tt0109066", + "tt4613272", + "tt1941536", + "tt0074589", + "tt7676544", + "tt0068746", + "tt5882704", + "tt0079094", + "tt0074664", + "tt0104765", + "tt8865562", + "tt2151270", + "tt2322415", + "tt0094969", + "tt1799537", + "tt5719748", + "tt1103963", + "tt5758802", + "tt1595388", + "tt3054776", + "tt4892682", + "tt0187499", + "tt4319698", + "tt0430772", + "tt8985014", + "tt0119263", + "tt8906266", + "tt1890559", + "tt2210451", + "tt3788392", + "tt0048558", + "tt1757944", + "tt0465643", + "tt0455976", + "tt3801934", + "tt3175936", + "tt0095937", + "tt2320030", + "tt1071809", + "tt1634058", + "tt5142784", + "tt2908090", + "tt7473036", + "tt1740762", + "tt7441338", + "tt7316358", + "tt0076271", + "tt6096308", + "tt5139800", + "tt3140024", + "tt3765892", + "tt1045673", + "tt1822203", + "tt4360484", + "tt6164254", + "tt1345503", + "tt2113822", + "tt3385704", + "tt5241840", + "tt1152277", + "tt0068425", + "tt2294705", + "tt2981254", + "tt2402127", + "tt0822831", + "tt2366614", + "tt0887161", + "tt1852904", + "tt2832482", + "tt3696086", + "tt2150371", + "tt0138587", + "tt3672840", + "tt0094021", + "tt0080527", + "tt1356392", + "tt0440939", + "tt2350954", + "tt3121442", + "tt1482989", + "tt2765340", + "tt0248415", + "tt9824674", + "tt1523575", + "tt3099300", + "tt3177226", + "tt4060030", + "tt0111174", + "tt9377684", + "tt0106743", + "tt1185242", + "tt2338341", + "tt1349853", + "tt6234132", + "tt9331434", + "tt4535008", + "tt1710394", + "tt5130442", + "tt0118566", + "tt0099426", + "tt4027270", + "tt0101393", + "tt0427954", + "tt0038715", + "tt0071275", + "tt3197766", + "tt4096608", + "tt0389053", + "tt0080179", + "tt2909116", + "tt1653690", + "tt3037632", + "tt0785035", + "tt3125472", + "tt0101678", + "tt3466816", + "tt1124377", + "tt1925518", + "tt0049661", + "tt0368909", + "tt2386353", + "tt0376098", + "tt0134167", + "tt0107156", + "tt2776344", + "tt2363115", + "tt3469910", + "tt0840406", + "tt3449302", + "tt1496009", + "tt2007388", + "tt2256761", + "tt2016168", + "tt1732169", + "tt0047681", + "tt1525359", + "tt1988816", + "tt1320431", + "tt1716743", + "tt8574212", + "tt0072953", + "tt2120051", + "tt1028525", + "tt1801096", + "tt0201484", + "tt5641246", + "tt6054710", + "tt1629755", + "tt1242861", + "tt8155288", + "tt1365048", + "tt8328740", + "tt8169446", + "tt2372429", + "tt4295258", + "tt5667482", + "tt0062742", + "tt2655734", + "tt0820872", + "tt2950996", + "tt2360586", + "tt1587427", + "tt2097333", + "tt1297925", + "tt3697398", + "tt3484796", + "tt2839312", + "tt0051051", + "tt0102158", + "tt3007924", + "tt0293715", + "tt1762358", + "tt0839856", + "tt2188885", + "tt1869671", + "tt0065790", + "tt6185658", + "tt2182241", + "tt0061670", + "tt3703750", + "tt2523426", + "tt1513076", + "tt2257816", + "tt0057497", + "tt1220625", + "tt0849483", + "tt1393003", + "tt0069162", + "tt1521242", + "tt0054371", + "tt7976208", + "tt3038708", + "tt5756052", + "tt1843866", + "tt1809231", + "tt0411477", + "tt5914630", + "tt0476985", + "tt5475734", + "tt7278120", + "tt5912700", + "tt1266149", + "tt0094632", + "tt3498820", + "tt1537314", + "tt5031108", + "tt0069035", + "tt0458339", + "tt1987680", + "tt3695346", + "tt2166880", + "tt2039380", + "tt1857929", + "tt2558022", + "tt4700756", + "tt6050396", + "tt1886680", + "tt4693418", + "tt2218924", + "tt0055391", + "tt2356500", + "tt0031828", + "tt6231588", + "tt2581480", + "tt0096436", + "tt7754222", + "tt0099366", + "tt0070537", + "tt4182064", + "tt0033836", + "tt0073882", + "tt3137732", + "tt6448192", + "tt6131386", + "tt8531044", + "tt3248132", + "tt4820296", + "tt2941396", + "tt6572608", + "tt1764547", + "tt6158494", + "tt0077904", + "tt10149868", + "tt4432804", + "tt0028950", + "tt1770672", + "tt1529558", + "tt8403246", + "tt2128679", + "tt1662295", + "tt4504044", + "tt4363990", + "tt7634968", + "tt4145836", + "tt0790709", + "tt0099749", + "tt0070205", + "tt0061451", + "tt2406468", + "tt5594444", + "tt0078960", + "tt2446746", + "tt0057476", + "tt1648062", + "tt0074885", + "tt0043389", + "tt2532528", + "tt1900920", + "tt3220528", + "tt0068892", + "tt0091012", + "tt0447635", + "tt2267454", + "tt1103274", + "tt0934446", + "tt0068772", + "tt0084825", + "tt1351186", + "tt2393174", + "tt2352892", + "tt0079367", + "tt4527268", + "tt2632308", + "tt1754455", + "tt1698520", + "tt1581336", + "tt2071445", + "tt2385169", + "tt2235876", + "tt1023490", + "tt1844793", + "tt0047463", + "tt2379715", + "tt0088895", + "tt0072937", + "tt2441232", + "tt1610294", + "tt1409798", + "tt3361186", + "tt3733618", + "tt0364955", + "tt1433343", + "tt0066850", + "tt9657764", + "tt0382637", + "tt0975738", + "tt5880296", + "tt3752766", + "tt1212442", + "tt0018051", + "tt0037549", + "tt1518191", + "tt0092149", + "tt10260132", + "tt0041452", + "tt9056818", + "tt0108583", + "tt1678040", + "tt5151716", + "tt6315010", + "tt1615156", + "tt0029284", + "tt10050782", + "tt7095654", + "tt3202708", + "tt8466804", + "tt6955804", + "tt3396114", + "tt5110344", + "tt8194728", + "tt5170710", + "tt4558194", + "tt0088707", + "tt1865333", + "tt3562266", + "tt6397364", + "tt4067684", + "tt4587740", + "tt5123866", + "tt7069196", + "tt3894188", + "tt6294892", + "tt0342172", + "tt4180032", + "tt4480940", + "tt5675936", + "tt5814408", + "tt5574012", + "tt9173364", + "tt8860786", + "tt5853124", + "tt8713370", + "tt1619832", + "tt7010948", + "tt6215212", + "tt5724948", + "tt1477171", + "tt3399078", + "tt6245488", + "tt1235830", + "tt0080933", + "tt3915566", + "tt2118009", + "tt3655682", + "tt0388098", + "tt4887842", + "tt0451751", + "tt2336104", + "tt1602093", + "tt3144266", + "tt3421616", + "tt1646111", + "tt1674086", + "tt3420392", + "tt0084036", + "tt3557440", + "tt4622340", + "tt9174800", + "tt1891923", + "tt3043194", + "tt1980911", + "tt0057183", + "tt4980812", + "tt2326124", + "tt9144756", + "tt1566938", + "tt2071571", + "tt0110998", + "tt4906164", + "tt7549618", + "tt0116059", + "tt0266747", + "tt5372620", + "tt2957558", + "tt0037075", + "tt2106749", + "tt0059709", + "tt4423984", + "tt0049801", + "tt0048696", + "tt4176964", + "tt1117668", + "tt0097081", + "tt4452144", + "tt0078231", + "tt2273575", + "tt9673648", + "tt0072868", + "tt1374996", + "tt0319126", + "tt0780506", + "tt2375037", + "tt3262252", + "tt2689354", + "tt0837795", + "tt0116959", + "tt0221563", + "tt3097876", + "tt2147225", + "tt0903036", + "tt2525156", + "tt7877276", + "tt2273641", + "tt2380301", + "tt2181298", + "tt2571362", + "tt3026830", + "tt7906260", + "tt0100765", + "tt5038776", + "tt1640220", + "tt0188557", + "tt1887923", + "tt1305008", + "tt2015503", + "tt2188913", + "tt1510925", + "tt5096726", + "tt0086381", + "tt1422653", + "tt2459038", + "tt0197857", + "tt1634055", + "tt2175184", + "tt0079822", + "tt4738238", + "tt2791026", + "tt0034801", + "tt3623002", + "tt2784036", + "tt1235433", + "tt2914892", + "tt2345695", + "tt0090293", + "tt1328633", + "tt0972542", + "tt1479398", + "tt0361679", + "tt0066144", + "tt2063804", + "tt2179239", + "tt2396421", + "tt1446675", + "tt1508698", + "tt1740476", + "tt1536421", + "tt0089299", + "tt0080499", + "tt0087068", + "tt0082193", + "tt0444648", + "tt0092580", + "tt4700190", + "tt1702919", + "tt4045894", + "tt3252786", + "tt0071535", + "tt4141368", + "tt3430634", + "tt0065480", + "tt3913244", + "tt0100623", + "tt0049285", + "tt6131450", + "tt1744760", + "tt2354196", + "tt1239462", + "tt2891234", + "tt0062022", + "tt1237961", + "tt0075654", + "tt0264410", + "tt2141761", + "tt0047935", + "tt0068246", + "tt3293356", + "tt0834900", + "tt0049667", + "tt1243972", + "tt1825728", + "tt0045041", + "tt0046712", + "tt0100205", + "tt1698027", + "tt0081415", + "tt9667876", + "tt1661066", + "tt1678042", + "tt2474984", + "tt1975146", + "tt2916324", + "tt5065810", + "tt5220602", + "tt5356670", + "tt0058164", + "tt7085054", + "tt4586136", + "tt3794204", + "tt0096416", + "tt1595833", + "tt8299654", + "tt9694594", + "tt6946580", + "tt0110200", + "tt3798628", + "tt1429382", + "tt0077769", + "tt0057277", + "tt5475710", + "tt1707821", + "tt3558642", + "tt0119782", + "tt5502946", + "tt0401224", + "tt0053630", + "tt1743994", + "tt0057890", + "tt5898034", + "tt3824344", + "tt1753811", + "tt3652964", + "tt4779496", + "tt2395337", + "tt4401006", + "tt3791266", + "tt2178915", + "tt1977822", + "tt0073338", + "tt3398252", + "tt2751140", + "tt0082479", + "tt6536944", + "tt1361838", + "tt1420568", + "tt2121304", + "tt3565904", + "tt3611432", + "tt1987028", + "tt1068774", + "tt8526576", + "tt3402880", + "tt0047542", + "tt7133384", + "tt2431576", + "tt1663696", + "tt4760656", + "tt0026752", + "tt0086141", + "tt2101307", + "tt1784736", + "tt2920330", + "tt0976095", + "tt3226956", + "tt9024378", + "tt1663956", + "tt7688892", + "tt2462708", + "tt2046166", + "tt10144748", + "tt1192384", + "tt1349616", + "tt0278422", + "tt2303112", + "tt1819601", + "tt6379596", + "tt1744768", + "tt6244196", + "tt1704578", + "tt2303074", + "tt0104545", + "tt1031224", + "tt4096750", + "tt7957694", + "tt6429278", + "tt9033534", + "tt0097236", + "tt4296254", + "tt1608285", + "tt0120534", + "tt1142804", + "tt3038734", + "tt0924518", + "tt0068005", + "tt4257950", + "tt0116771", + "tt2024542", + "tt1772292", + "tt1156300", + "tt3133114", + "tt1159198", + "tt0073511", + "tt0081232", + "tt4117510", + "tt1465496", + "tt2401842", + "tt1623772", + "tt1626135", + "tt0345601", + "tt1697878", + "tt2241475", + "tt3407428", + "tt0067839", + "tt3527772", + "tt5581120", + "tt0110885", + "tt1527823", + "tt0840272", + "tt0069086", + "tt0117611", + "tt5304634", + "tt3565066", + "tt6690176", + "tt7275200", + "tt0215557", + "tt4699624", + "tt7275528", + "tt0166322", + "tt7399124", + "tt3149360", + "tt6543048", + "tt2100376", + "tt0404031", + "tt1335992", + "tt5609302", + "tt3849938", + "tt2580658", + "tt2515086", + "tt0095875", + "tt1176933", + "tt5434972", + "tt1591496", + "tt0068673", + "tt0076598", + "tt5617254", + "tt3207160", + "tt5896962", + "tt2415468", + "tt1043839", + "tt5769586", + "tt3132422", + "tt0045654", + "tt4076934", + "tt3231734", + "tt1486799", + "tt3504064", + "tt4020312", + "tt1385591", + "tt2516610", + "tt2645188", + "tt1353014", + "tt0030881", + "tt4379800", + "tt4908764", + "tt1343740", + "tt4280822", + "tt0366555", + "tt5112622", + "tt1785395", + "tt4379728", + "tt3170972", + "tt0129852", + "tt0907625", + "tt0101483", + "tt5127300", + "tt0056796", + "tt4018492", + "tt0114433", + "tt0359398", + "tt0069820", + "tt1849810", + "tt1864492", + "tt4443856", + "tt0265086", + "tt5555554", + "tt1462044", + "tt0068994", + "tt0066940", + "tt2676710", + "tt1251357", + "tt0091462", + "tt3569374", + "tt1756818", + "tt7390102", + "tt3387432", + "tt0069483", + "tt0094325", + "tt3054840", + "tt0074228", + "tt2108605", + "tt0071295", + "tt0236283", + "tt1444258", + "tt0485601", + "tt1822239", + "tt2254364", + "tt1227927", + "tt0051507", + "tt1905059", + "tt0071663", + "tt0062190", + "tt0067219", + "tt2087720", + "tt1050160", + "tt0142634", + "tt3073490", + "tt0060848", + "tt1874649", + "tt6580394", + "tt0457355", + "tt3700456", + "tt5445444", + "tt3352034", + "tt0421237", + "tt2940482", + "tt2798680", + "tt2133302", + "tt4417522", + "tt1715362", + "tt4840096", + "tt7477820", + "tt2503154", + "tt3973814", + "tt0047074", + "tt4444732", + "tt0063591", + "tt1336253", + "tt8879666", + "tt5246902", + "tt6556576", + "tt0071938", + "tt4530832", + "tt3501492", + "tt1845211", + "tt0071318", + "tt5190950", + "tt4287348", + "tt2243260", + "tt8232016", + "tt2002789", + "tt4959440", + "tt8128970", + "tt0052749", + "tt1411762", + "tt2385189", + "tt0478154", + "tt0106636", + "tt2171809", + "tt3921852", + "tt3312936", + "tt2395123", + "tt0240585", + "tt3061100", + "tt0104516", + "tt3369676", + "tt2040295", + "tt0096920", + "tt4015930", + "tt0086262", + "tt0089109", + "tt1400335", + "tt2095713", + "tt3470656", + "tt1858522", + "tt2065877", + "tt3402594", + "tt1042570", + "tt1460639", + "tt0052771", + "tt2425866", + "tt3892384", + "tt1692235", + "tt2948202", + "tt5280806", + "tt0059116", + "tt1131742", + "tt0047590", + "tt10050780", + "tt3950908", + "tt0063765", + "tt5157030", + "tt6473622", + "tt0076747", + "tt5779372", + "tt0084058", + "tt5096920", + "tt0102555", + "tt0090735", + "tt0091898", + "tt2312184", + "tt4926042", + "tt5344752", + "tt3446330", + "tt0964179", + "tt6491178", + "tt6820256", + "tt2723176", + "tt2390283", + "tt0081235", + "tt4242158", + "tt5525504", + "tt3911074", + "tt6769064", + "tt5303930", + "tt0043408", + "tt3594826", + "tt0338769", + "tt0047281", + "tt5474114", + "tt5500308", + "tt0053344", + "tt1829735", + "tt1343103", + "tt0046532", + "tt3469284", + "tt1478804", + "tt9876426", + "tt1861343", + "tt0075393", + "tt4209802", + "tt0061971", + "tt4215332", + "tt3036676", + "tt0473700", + "tt3160230", + "tt2302601", + "tt3917318", + "tt2364975", + "tt0078277", + "tt2418558", + "tt0054823", + "tt2076826", + "tt0069919", + "tt2205589", + "tt1663625", + "tt2866296", + "tt2014198", + "tt2078549", + "tt2306236", + "tt0048992", + "tt2081253", + "tt0281122", + "tt6235850", + "tt3213078", + "tt0045504", + "tt2057931", + "tt1296077", + "tt1604100", + "tt1323917", + "tt2402213", + "tt3377240", + "tt3959690", + "tt2634414", + "tt0088722", + "tt3592904", + "tt0065478", + "tt2306633", + "tt4610244", + "tt2645164", + "tt1197613", + "tt0042629", + "tt3508840", + "tt1389762", + "tt5941692", + "tt1144797", + "tt0099634", + "tt3169770", + "tt2240966", + "tt0082042", + "tt3864758", + "tt3614922", + "tt1129412", + "tt0047562", + "tt1669814", + "tt3181898", + "tt2376246", + "tt5679402", + "tt2543202", + "tt3654680", + "tt1493798", + "tt4289566", + "tt1784600", + "tt1458503", + "tt4293752", + "tt1729674", + "tt3456206", + "tt2175947", + "tt0075137", + "tt4410798", + "tt5725894", + "tt0965375", + "tt4633694", + "tt1710900", + "tt0051629", + "tt0083560", + "tt2735292", + "tt0494228", + "tt2828884", + "tt1825784", + "tt2228902", + "tt2401211", + "tt2946436", + "tt2016872", + "tt7900820", + "tt2326013", + "tt2209626", + "tt4211516", + "tt7575480", + "tt3397992", + "tt4457852", + "tt6892388", + "tt0090727", + "tt3130734", + "tt3996414", + "tt0092006", + "tt0104870", + "tt0096267", + "tt0075086", + "tt0075229", + "tt1869362", + "tt2179027", + "tt5606742", + "tt2938464", + "tt1916749", + "tt3852066", + "tt2247748", + "tt1032749", + "tt0097874", + "tt1753693", + "tt2377414", + "tt0052820", + "tt1721491", + "tt0969322", + "tt3116438", + "tt0067515", + "tt1705125", + "tt1800734", + "tt0410162", + "tt0902337", + "tt1666187", + "tt0081459", + "tt0046294", + "tt0069795", + "tt3526408", + "tt1565441", + "tt0496673", + "tt0104822", + "tt4145108", + "tt4310772", + "tt3792330", + "tt0056350", + "tt1305800", + "tt6610158", + "tt5199588", + "tt1325743", + "tt2676350", + "tt0104823", + "tt2977672", + "tt0111348", + "tt0043075", + "tt0100261", + "tt4483094", + "tt0047449", + "tt3963640", + "tt2149137", + "tt4368098", + "tt0069179", + "tt0080808", + "tt2184207", + "tt4179512", + "tt2070604", + "tt4655630", + "tt0105645", + "tt0053341", + "tt3919322", + "tt8135494", + "tt0488928", + "tt3560742", + "tt1545103", + "tt3946300", + "tt3789946", + "tt0252480", + "tt1355627", + "tt4817640", + "tt1616092", + "tt8426838", + "tt0273907", + "tt6095090", + "tt0867286", + "tt1791500", + "tt0087538", + "tt2075318", + "tt5742568", + "tt2736254", + "tt0085250", + "tt0088395", + "tt0829421", + "tt0347971", + "tt3099940", + "tt3099370", + "tt1913178", + "tt2389162", + "tt3922754", + "tt4122118", + "tt1213012", + "tt1796607", + "tt1523367", + "tt1728638", + "tt3557406", + "tt2151633", + "tt2246907", + "tt0115965", + "tt0069841", + "tt3111728", + "tt1605803", + "tt0066848", + "tt2853182", + "tt2195552", + "tt1219822", + "tt0090322", + "tt1536374", + "tt1867086", + "tt4285960", + "tt4418398", + "tt4185566", + "tt2456594", + "tt0091339", + "tt0111244", + "tt3602106", + "tt1921111", + "tt2321501", + "tt0047904", + "tt0079278", + "tt2094762", + "tt3204254", + "tt0783492", + "tt1298716", + "tt1345488", + "tt3163336", + "tt4196868", + "tt0080485", + "tt0076665", + "tt1442492", + "tt1808304", + "tt1708534", + "tt0080802", + "tt5582876", + "tt0062159", + "tt0080346", + "tt0831285", + "tt1332119", + "tt2386668", + "tt0460777", + "tt5214224", + "tt0846004", + "tt2672180", + "tt0382443", + "tt1792584", + "tt2387589", + "tt2486278", + "tt0289589", + "tt0051150", + "tt0251806", + "tt0104178", + "tt0079176", + "tt1887676", + "tt0098014", + "tt2076871", + "tt0031225", + "tt2172055", + "tt0316900", + "tt1877797", + "tt0052610", + "tt0923653", + "tt2909124", + "tt3288992", + "tt2066070", + "tt2392846", + "tt2351392", + "tt0056957", + "tt3703148", + "tt1540014", + "tt2718314", + "tt0046375", + "tt1866251", + "tt4077656", + "tt3401338", + "tt0095005", + "tt2574576", + "tt2222062", + "tt3263096", + "tt1070886", + "tt8583190", + "tt0121744", + "tt3341832", + "tt6428912", + "tt1866197", + "tt0423474", + "tt3465456", + "tt7137380", + "tt3552642", + "tt2488366", + "tt7220640", + "tt0835775", + "tt0097455", + "tt0081445", + "tt3353138", + "tt3830812", + "tt4216834", + "tt3636090", + "tt0063242", + "tt3579990", + "tt3878196", + "tt2640674", + "tt1185244", + "tt3560762", + "tt0103802", + "tt2387431", + "tt0050371", + "tt3751084", + "tt3246840", + "tt3865238", + "tt0087260", + "tt0061976", + "tt0062808", + "tt0081759", + "tt0892084", + "tt3504824", + "tt1641401", + "tt3469440", + "tt2290567", + "tt3511542", + "tt0058561", + "tt0069922", + "tt0068182", + "tt3919278", + "tt2529272", + "tt3820450", + "tt0125308", + "tt5237980", + "tt2341308", + "tt0098190", + "tt2246831", + "tt3420064", + "tt3414954", + "tt0082841", + "tt2578608", + "tt2645044", + "tt3444184", + "tt1390397", + "tt2427502", + "tt3251306", + "tt2717558", + "tt2992146", + "tt3951190", + "tt0452703", + "tt0100661", + "tt2165735", + "tt6704038", + "tt3922810", + "tt0092147", + "tt0077912", + "tt0445939", + "tt6268536", + "tt4967094", + "tt1490726", + "tt1754912", + "tt4191486", + "tt0086884", + "tt1082599", + "tt0096246", + "tt4313982", + "tt0119288", + "tt5069110", + "tt4418152", + "tt6417256", + "tt7650198", + "tt0071464", + "tt4094144", + "tt2188907", + "tt2147459", + "tt5611404", + "tt1567227", + "tt4897822", + "tt1308169", + "tt1839426", + "tt3709552", + "tt0446027", + "tt2072979", + "tt0127282", + "tt2624220", + "tt3549656", + "tt0042208", + "tt5339418", + "tt5161658", + "tt4268054", + "tt0978800", + "tt6824456", + "tt0380687", + "tt0275434", + "tt1925466", + "tt0089504", + "tt2363309", + "tt1669268", + "tt2818654", + "tt4621016", + "tt1821617", + "tt3477732", + "tt2375278", + "tt0376196", + "tt1545106", + "tt0040872", + "tt6440916", + "tt0189764", + "tt0070061", + "tt2328490", + "tt2085752", + "tt1562918", + "tt1764636", + "tt0056732", + "tt0064881", + "tt3626440", + "tt0053976", + "tt0093674", + "tt0061049", + "tt3305844", + "tt0061780", + "tt0202483", + "tt1196618", + "tt0073363", + "tt0056141", + "tt0053570", + "tt0055151", + "tt0066904", + "tt0046435", + "tt0294909", + "tt3218094", + "tt3731196", + "tt0119196", + "tt1196134", + "tt0090928", + "tt0097456", + "tt0280486", + "tt0061132", + "tt2623946", + "tt0117089", + "tt1830402", + "tt2175675", + "tt3159412", + "tt0068640", + "tt0083976", + "tt1282147", + "tt0961088", + "tt0067030", + "tt0064111", + "tt1823120", + "tt2926810", + "tt0242508", + "tt6290798", + "tt0441627", + "tt2043971", + "tt0064819", + "tt3950078", + "tt2263942", + "tt2259306", + "tt1935896", + "tt1714828", + "tt1847541", + "tt1596753", + "tt2072220", + "tt1205558", + "tt0063141", + "tt0057286", + "tt1964773", + "tt1837613", + "tt9876408", + "tt3341072", + "tt3740242", + "tt2310792", + "tt3259968", + "tt0059282", + "tt1555110", + "tt0119258", + "tt0089539", + "tt0093550", + "tt1603489", + "tt2115325", + "tt0093146", + "tt2375597", + "tt0031968", + "tt3763790", + "tt0013951", + "tt1284485", + "tt1647477", + "tt2421416", + "tt0808261", + "tt0082968", + "tt0040308", + "tt0091603", + "tt2796678", + "tt0928364", + "tt4422796", + "tt0096402", + "tt3148978", + "tt2332579", + "tt0388139", + "tt7033498", + "tt6902510", + "tt4246854", + "tt2112293", + "tt0088979", + "tt0091848", + "tt0097364", + "tt0068661", + "tt0029992", + "tt3832160", + "tt0037991", + "tt1174739", + "tt0493407", + "tt0090350", + "tt0325965", + "tt4572820", + "tt2193167", + "tt0067919", + "tt3231390", + "tt0157894", + "tt0043511", + "tt0077138", + "tt4858474", + "tt1462900", + "tt4086032", + "tt5992138", + "tt6107412", + "tt0083922", + "tt0108633", + "tt0045061", + "tt0083908", + "tt0048341", + "tt2004211", + "tt0095158", + "tt0087472", + "tt0042851", + "tt0368975", + "tt0072239", + "tt2356464", + "tt3210686", + "tt5717960", + "tt1703125", + "tt3010660", + "tt5861630", + "tt1152403", + "tt0829424", + "tt0070634", + "tt1664873", + "tt2151915", + "tt0055805", + "tt1535098", + "tt2904798", + "tt0426556", + "tt1943710", + "tt5311972", + "tt2007430", + "tt3505800", + "tt2421910", + "tt4897156", + "tt1984116", + "tt0090015", + "tt4763340", + "tt5533664", + "tt0109508", + "tt6099400", + "tt0093991", + "tt3568380", + "tt0060491", + "tt0127759", + "tt0105470", + "tt0203940", + "tt0416481", + "tt0095334", + "tt2386175", + "tt2207484", + "tt1718714", + "tt8531560", + "tt0056945", + "tt4773438", + "tt5050328", + "tt2065945", + "tt2876428", + "tt0060545", + "tt0068883", + "tt0051093", + "tt3119416", + "tt3356682", + "tt0051819", + "tt2287214", + "tt4721404", + "tt0374546", + "tt0057400", + "tt4687848", + "tt0350184", + "tt2245171", + "tt1493815", + "tt0065820", + "tt3518012", + "tt0498361", + "tt0070270", + "tt1734429", + "tt0074235", + "tt0060529", + "tt1118519", + "tt1506459", + "tt0070438", + "tt2521404", + "tt3575258", + "tt2415458", + "tt0048158", + "tt0069687", + "tt2663744", + "tt0039745", + "tt1701218", + "tt1928337", + "tt5478700", + "tt4650624", + "tt1211353", + "tt4827558", + "tt3453772", + "tt0083801", + "tt0033873", + "tt9271164", + "tt0161849", + "tt1024746", + "tt2112210", + "tt9005662", + "tt0083185", + "tt0046714", + "tt3912672", + "tt0090774", + "tt0049793", + "tt2320388", + "tt0065482", + "tt0045112", + "tt4827290", + "tt1298643", + "tt0047919", + "tt0067757", + "tt1285217", + "tt2854876", + "tt0111797", + "tt0069414", + "tt4742670", + "tt0043265", + "tt0048254", + "tt0044103", + "tt1064801", + "tt1764355", + "tt0043292", + "tt2300913", + "tt2923936", + "tt0064451", + "tt2191082", + "tt0195234", + "tt0045758", + "tt3386928", + "tt5797164", + "tt10147546", + "tt0048554", + "tt2291284", + "tt0100728", + "tt2318268", + "tt0046766", + "tt5192278", + "tt1828124", + "tt3341084", + "tt0037913", + "tt4945466", + "tt0049646", + "tt2341971", + "tt0067084", + "tt0051947", + "tt0032599", + "tt1949106", + "tt0045251", + "tt0098645", + "tt0416881", + "tt0053146", + "tt0047876", + "tt0093970", + "tt0047119", + "tt0047094", + "tt7816392", + "tt2966760", + "tt1946177", + "tt0463381", + "tt1949546", + "tt0022879", + "tt0049967", + "tt9368628", + "tt1929449", + "tt0939684", + "tt0038477", + "tt1922544", + "tt1344659", + "tt0404977", + "tt0033712", + "tt9810480", + "tt0040806", + "tt8075260", + "tt1995373", + "tt0045283", + "tt1714917", + "tt1417592", + "tt0064405", + "tt0041958", + "tt0039750", + "tt1947969", + "tt0080479", + "tt1942972", + "tt4802214", + "tt0876563", + "tt1943035", + "tt4785440", + "tt0068816", + "tt0037367", + "tt0038409", + "tt0226874", + "tt0041239", + "tt1946148", + "tt0040257", + "tt0041968", + "tt0226873", + "tt0038396", + "tt0038873", + "tt1986953", + "tt0038392", + "tt2700114", + "tt0019421", + "tt4819498", + "tt1948521", + "tt0047958", + "tt0041787", + "tt0015624", + "tt5954284", + "tt0036824", + "tt0037691", + "tt4935282", + "tt3379814", + "tt5843990", + "tt0015400", + "tt1073240", + "tt0068408", + "tt0037756", + "tt0034891", + "tt0040737", + "tt0039266", + "tt9283056", + "tt1571247", + "tt0042039", + "tt0038468", + "tt2670016", + "tt2227830", + "tt0033405", + "tt1643222", + "tt0038363", + "tt0041996", + "tt0113987", + "tt0039834", + "tt6933206", + "tt2345525", + "tt6616364", + "tt0018192", + "tt3719416", + "tt0035169", + "tt3020226", + "tt0040416", + "tt1510983", + "tt3591944", + "tt0381940", + "tt1510985", + "tt0040946", + "tt1691452", + "tt0034012", + "tt9251614", + "tt0040092", + "tt0038733", + "tt0039208", + "tt0039768", + "tt4019426", + "tt0041841", + "tt0039478", + "tt4038966", + "tt0035966", + "tt2391073", + "tt1290475", + "tt1568921", + "tt4519400", + "tt5891150", + "tt4820418", + "tt0072867", + "tt0035916", + "tt6485304", + "tt0039404", + "tt0055871", + "tt2233492", + "tt0034522", + "tt0034091", + "tt0032455", + "tt0047677", + "tt2677894", + "tt2204340", + "tt2275499", + "tt0040160", + "tt1801063", + "tt1859607", + "tt0040221", + "tt0041094", + "tt2878846", + "tt0156887", + "tt0031359", + "tt9423984", + "tt0040614", + "tt2091229", + "tt6479534", + "tt0045828", + "tt7913172", + "tt0090209", + "tt0036969", + "tt6054290", + "tt0038116", + "tt0047033", + "tt0045911", + "tt2903076", + "tt8560130", + "tt2388759", + "tt0073756", + "tt4882930", + "tt7938092", + "tt2126347", + "tt0073755", + "tt0041587", + "tt0073623", + "tt0422779", + "tt4439342", + "tt1366409", + "tt0475860", + "tt1232775", + "tt0095060", + "tt4694594", + "tt5866732", + "tt0756690", + "tt7562564", + "tt5468016", + "tt1705786", + "tt0065210", + "tt5468018", + "tt6241872", + "tt0218553", + "tt5143704", + "tt0072253", + "tt0050100", + "tt0134928", + "tt10025732", + "tt0094794", + "tt0085473", + "tt0264935", + "tt0086345", + "tt3228088", + "tt0065032", + "tt1470022", + "tt8290698", + "tt0049639", + "tt0060865", + "tt0385846", + "tt3323638", + "tt3640272", + "tt4608574", + "tt1047544", + "tt0088818", + "tt0810817", + "tt1558576", + "tt3855546", + "tt2306836", + "tt0091507", + "tt1156447", + "tt0970529", + "tt0081485", + "tt1137455", + "tt3025994", + "tt0047370", + "tt5574372", + "tt2740538", + "tt1571234", + "tt1596565", + "tt0054271", + "tt1728973", + "tt2364006", + "tt0101497", + "tt4932244", + "tt1016024", + "tt0077450", + "tt0071194", + "tt1910615", + "tt1820400", + "tt1584943", + "tt9481862", + "tt0066952", + "tt0069318", + "tt0097971", + "tt0067671", + "tt1582198", + "tt1210071", + "tt1719068", + "tt9014006", + "tt3108584", + "tt0079580", + "tt4333368", + "tt0065981", + "tt4460854", + "tt0071268", + "tt2414212", + "tt0108277", + "tt1854513", + "tt6851966", + "tt0050470", + "tt3398788", + "tt0845463", + "tt2452470", + "tt7222072", + "tt1543807", + "tt1495776", + "tt9914350", + "tt2898306", + "tt1969062", + "tt0076417", + "tt1572502", + "tt2306342", + "tt1690540", + "tt3585004", + "tt1832516", + "tt1772262", + "tt3139212", + "tt1890455", + "tt1714176", + "tt1535472", + "tt0120224", + "tt1995477", + "tt1238302", + "tt3619102", + "tt0043079", + "tt2243621", + "tt1646212", + "tt1667416", + "tt0069530", + "tt1368870", + "tt3096712", + "tt1582213", + "tt3155654", + "tt1499220", + "tt0035489", + "tt3355510", + "tt1296172", + "tt1656171", + "tt1941627", + "tt1830495", + "tt5481984", + "tt1286800", + "tt3009070", + "tt2463154", + "tt0892094", + "tt0403848", + "tt0056526", + "tt0066258", + "tt6236504", + "tt1786742", + "tt6948600", + "tt5770414", + "tt4299300", + "tt0347246", + "tt4572700", + "tt4503324", + "tt0113568", + "tt1492728", + "tt2145540", + "tt7339930", + "tt2320924", + "tt1622991", + "tt9434772", + "tt1848904", + "tt6164854", + "tt0398033", + "tt1847548", + "tt1475135", + "tt0306011", + "tt2690160", + "tt0084704", + "tt0079027", + "tt0402904", + "tt0343531", + "tt0092850", + "tt0089034", + "tt0105526", + "tt0050085", + "tt0169620", + "tt0040652", + "tt0071788", + "tt3432552", + "tt0043288", + "tt1460643", + "tt2132374", + "tt5143700", + "tt0181012", + "tt0062218", + "tt2972058", + "tt0038854", + "tt0079128", + "tt1640116", + "tt0087127", + "tt0122070", + "tt1535608", + "tt0111216", + "tt0089199", + "tt0086340", + "tt0113982", + "tt1946310", + "tt1577883", + "tt0348121", + "tt0080842", + "tt0046026", + "tt2094146", + "tt0066050", + "tt4815204", + "tt0409999", + "tt0441041", + "tt1757831", + "tt0085224", + "tt1810710", + "tt0061696", + "tt4065552", + "tt1468703", + "tt0094625", + "tt1844643", + "tt1947998", + "tt5886046", + "tt0099384", + "tt4704918", + "tt0094929", + "tt0078764", + "tt0071259", + "tt2297108", + "tt2564978", + "tt1261414", + "tt8752474", + "tt5377654", + "tt1824904", + "tt6628394", + "tt4083052", + "tt0067204", + "tt2486490", + "tt1727824", + "tt4883336", + "tt1942798", + "tt9740572", + "tt0070696", + "tt3130560", + "tt5375434", + "tt3417526", + "tt9811870", + "tt5850588", + "tt6519020", + "tt0050997", + "tt6400280", + "tt8529186", + "tt9618280", + "tt8434380", + "tt1337682", + "tt9279172", + "tt1054564", + "tt8201170", + "tt3480446", + "tt8306022", + "tt3699702", + "tt0822389", + "tt1911600", + "tt2091327", + "tt0103303", + "tt0083070", + "tt0100339", + "tt0228891", + "tt0330152", + "tt0770814", + "tt0456912", + "tt1977001", + "tt1742682", + "tt0070653", + "tt1913042", + "tt1185838", + "tt0054290", + "tt1688704", + "tt1641388", + "tt1409734", + "tt3139756", + "tt2509298", + "tt0124770", + "tt2113681", + "tt1935104", + "tt4132190", + "tt1096997", + "tt1189073", + "tt3268790", + "tt2948530", + "tt1691020", + "tt0072610", + "tt0112843", + "tt2577854", + "tt3510718", + "tt0119238", + "tt0079400", + "tt0932661", + "tt0059094", + "tt0069786", + "tt3148552", + "tt0018684", + "tt2722504", + "tt0443448", + "tt0140859", + "tt3326880", + "tt0076706", + "tt0046087", + "tt0052941", + "tt0481494", + "tt1595637", + "tt3312180", + "tt0079806", + "tt1615885", + "tt5758726", + "tt0064310", + "tt0109831", + "tt4883124", + "tt0091508", + "tt0061989", + "tt0074873", + "tt1229236", + "tt1368860", + "tt0048227", + "tt3836530", + "tt0060754", + "tt2040537", + "tt1187046", + "tt1481573", + "tt1453403", + "tt0063067", + "tt1414374", + "tt0422272", + "tt0064695", + "tt0113318", + "tt1484918", + "tt0065962", + "tt3803664", + "tt2386490", + "tt1884312", + "tt7762748", + "tt0064704", + "tt6811018", + "tt1927172", + "tt1702587", + "tt4154916", + "tt0069489", + "tt0119623", + "tt0078748", + "tt1302001", + "tt2199587", + "tt2325491", + "tt2609326", + "tt6443294", + "tt1874434", + "tt4991652", + "tt0078203", + "tt0143016", + "tt1572777", + "tt0058977", + "tt0073241", + "tt0206553", + "tt6136778", + "tt5468022", + "tt3024324", + "tt0048805", + "tt4433646", + "tt4242100", + "tt5468014", + "tt0405615", + "tt1965118", + "tt1199453", + "tt1430132", + "tt0099313", + "tt3640068", + "tt0118980", + "tt6619330", + "tt0118604", + "tt2088980", + "tt2944980", + "tt1828320", + "tt1674058", + "tt3384870", + "tt0098158", + "tt0104710", + "tt1764366", + "tt4076164", + "tt8726116", + "tt0292109", + "tt1847672", + "tt7903530", + "tt1763305", + "tt3468698", + "tt1551641", + "tt2301592", + "tt3550902", + "tt1610394", + "tt2543336", + "tt1337673", + "tt0073784", + "tt0048047", + "tt2328696", + "tt0054358", + "tt0032728", + "tt0077630", + "tt0366860", + "tt2209792", + "tt0099991", + "tt0117883", + "tt0046040", + "tt1986769", + "tt3793230", + "tt1305806", + "tt0066834", + "tt0081073", + "tt1064953", + "tt1702016", + "tt0077952", + "tt1663999", + "tt2414766", + "tt5155486", + "tt0462373", + "tt0078976", + "tt1130980", + "tt4082524", + "tt0066262", + "tt1844811", + "tt0088157", + "tt0087777", + "tt0070921", + "tt4532818", + "tt1675434", + "tt5292240", + "tt5316540", + "tt0870101", + "tt0050506", + "tt0033317", + "tt6680116", + "tt0067381", + "tt0083677", + "tt1733582", + "tt2942196", + "tt1324058", + "tt2559458", + "tt3597732", + "tt2258399", + "tt2449810", + "tt7834022", + "tt0341569", + "tt2263468", + "tt0780516", + "tt0034928", + "tt0057681", + "tt2099556", + "tt6823368", + "tt0074404", + "tt0052205", + "tt1792643", + "tt0048966", + "tt0974536", + "tt2147521", + "tt0068698", + "tt0070488", + "tt3447592", + "tt0095984", + "tt1587685", + "tt0166996", + "tt2140113", + "tt2620490", + "tt0479341", + "tt1288636", + "tt0395119", + "tt0057643", + "tt0064571", + "tt2639514", + "tt0059641", + "tt2909748", + "tt0195185", + "tt1164999", + "tt0069951", + "tt0074437", + "tt1821355", + "tt2275743", + "tt0025301", + "tt1360832", + "tt6251024", + "tt1536051", + "tt2893780", + "tt1753521", + "tt0065850", + "tt1964634", + "tt7275816", + "tt2313896", + "tt0122111", + "tt3779570", + "tt0426931", + "tt0445934", + "tt0079301", + "tt4669788", + "tt2382090", + "tt0070297", + "tt1596783", + "tt0059160", + "tt1735839", + "tt1535101", + "tt1640219", + "tt0073345", + "tt0284851", + "tt0070839", + "tt2232578", + "tt0066445", + "tt2245277", + "tt0066392", + "tt0069004", + "tt0074849", + "tt0056940", + "tt2265565", + "tt0037449", + "tt1893415", + "tt0419692", + "tt0039735", + "tt0781511", + "tt4699130", + "tt2404555", + "tt0073620", + "tt2081367", + "tt2278870", + "tt1865335", + "tt0408236", + "tt0033729", + "tt3718824", + "tt0902982", + "tt0055283", + "tt2390341", + "tt1852977", + "tt0062868", + "tt3626180", + "tt0407536", + "tt1349646", + "tt9556850", + "tt1347280", + "tt1555069", + "tt0403120", + "tt1748016", + "tt0297884", + "tt4002772", + "tt1121986", + "tt2184267", + "tt1587436", + "tt1341335", + "tt5823690", + "tt0046436", + "tt0046896", + "tt0409379", + "tt1355230", + "tt0809533", + "tt0033370", + "tt1790658", + "tt8671116", + "tt0048465", + "tt1183923", + "tt0928124", + "tt0038214", + "tt2371486", + "tt3921858", + "tt0040395", + "tt0092048", + "tt1327709", + "tt0040109", + "tt1586752", + "tt2260254", + "tt1568338", + "tt2041534", + "tt0075670", + "tt1845804", + "tt0051911", + "tt0081595", + "tt2298274", + "tt2484184", + "tt1888509", + "tt1085469", + "tt6162808", + "tt6733368", + "tt0041838", + "tt1429432", + "tt1252616", + "tt0064122", + "tt1069238", + "tt0070183", + "tt9783876", + "tt2679576", + "tt1780762", + "tt2262270", + "tt8554256", + "tt1173745", + "tt1851006", + "tt1646959", + "tt0073806", + "tt3235880", + "tt1647476", + "tt2325993", + "tt1692504", + "tt0045551", + "tt0080491", + "tt1131743", + "tt1993396", + "tt3121562", + "tt4080728", + "tt0077807", + "tt3781616", + "tt6861980", + "tt2328745", + "tt3398268", + "tt1891905", + "tt1883180", + "tt8920938", + "tt0120594", + "tt3266948", + "tt1954701", + "tt2298224", + "tt5828640", + "tt0352625", + "tt2018108", + "tt0058126", + "tt3208802", + "tt5781724", + "tt0201952", + "tt4780842", + "tt0280933", + "tt5623224", + "tt1221972", + "tt0059163", + "tt3102906", + "tt1444252", + "tt7358302", + "tt0075888", + "tt0104688", + "tt2381317", + "tt1744825", + "tt0014636", + "tt0457517", + "tt7297962", + "tt4193216", + "tt0811011", + "tt0904127", + "tt0109747", + "tt0185714", + "tt0081299", + "tt1593643", + "tt0058319", + "tt0349865", + "tt9455066", + "tt6151714", + "tt0270509", + "tt0080563", + "tt5638952", + "tt9454978", + "tt0106642", + "tt0317321", + "tt9457966", + "tt6709826", + "tt4525270", + "tt1447499", + "tt6012750", + "tt4769430", + "tt1930458", + "tt3150966", + "tt6010518", + "tt1514425", + "tt6805328", + "tt0280096", + "tt2252552", + "tt0058402", + "tt9617546", + "tt2303110", + "tt0096030", + "tt0092288", + "tt2186766", + "tt0033029", + "tt0074412", + "tt1308109", + "tt0082159", + "tt1268208", + "tt1156448", + "tt1492842", + "tt2645670", + "tt0087746", + "tt0043392", + "tt2162574", + "tt0069229", + "tt2091455", + "tt0113194", + "tt1234550", + "tt2726270", + "tt0053390", + "tt0106758", + "tt5843838", + "tt1353997", + "tt1027698", + "tt1867566", + "tt2557256", + "tt0347618", + "tt0085398", + "tt0082956", + "tt1650516", + "tt0281364", + "tt1424045", + "tt3806888", + "tt0089477", + "tt2459028", + "tt2584018", + "tt1477109", + "tt1016090", + "tt1055363", + "tt1204966", + "tt4197006", + "tt4218572", + "tt1334456", + "tt0093881", + "tt2106577", + "tt0068415", + "tt0958824", + "tt7078004", + "tt1345772", + "tt0780500", + "tt0831316", + "tt1151309", + "tt2586070", + "tt0487920", + "tt2524674", + "tt1821352", + "tt0113044", + "tt0072735", + "tt0100680", + "tt0398839", + "tt0313608", + "tt0105219", + "tt5207004", + "tt0047873", + "tt0411058", + "tt9914458", + "tt4641776", + "tt0153930", + "tt2412568", + "tt0080116", + "tt1869425", + "tt0030746", + "tt0055139", + "tt2408734", + "tt0067983", + "tt1190910", + "tt7014110", + "tt1949605", + "tt1241018", + "tt1654833", + "tt1492886", + "tt0065720", + "tt0073634", + "tt5586110", + "tt0082425", + "tt0787495", + "tt0068515", + "tt3924782", + "tt6198412", + "tt4480398", + "tt1119178", + "tt0222425", + "tt2414822", + "tt0195192", + "tt0071721", + "tt1229821", + "tt0817910", + "tt1249453", + "tt0036716", + "tt0907681", + "tt0062652", + "tt0072198", + "tt1931551", + "tt4626160", + "tt4147210", + "tt0810895", + "tt0019509", + "tt0243991", + "tt2179087", + "tt1637713", + "tt0312723", + "tt4641730", + "tt0068268", + "tt0047200", + "tt0073343", + "tt1288367", + "tt2988852", + "tt8569610", + "tt2335732", + "tt4518260", + "tt1117386", + "tt0085409", + "tt0160586", + "tt2363181", + "tt1200852", + "tt0324133", + "tt0031455", + "tt1034415", + "tt7616798", + "tt8115282", + "tt0059263", + "tt0041931", + "tt2202569", + "tt0047336", + "tt2258647", + "tt0043338", + "tt0031725", + "tt0031210", + "tt0914363", + "tt1421383", + "tt0854670", + "tt1382655", + "tt0031235", + "tt1341795", + "tt0040559", + "tt0099969", + "tt0050706", + "tt1176453", + "tt0077711", + "tt0075970", + "tt0092646", + "tt1339191", + "tt1455619", + "tt1552423", + "tt1540761", + "tt1337686", + "tt0085809", + "tt1286746", + "tt0055988", + "tt1230380", + "tt0104489", + "tt0039631", + "tt0047478", + "tt0087028", + "tt0040724", + "tt0046478", + "tt0279331", + "tt2186426", + "tt1496884", + "tt0043132", + "tt1217301", + "tt2385001", + "tt1564369", + "tt0061589", + "tt1734586", + "tt1540803", + "tt0034399", + "tt8774622", + "tt0487176", + "tt0056187", + "tt2354437", + "tt6284404", + "tt0490240", + "tt0076845", + "tt3475596", + "tt0035763", + "tt0439848", + "tt0480919", + "tt0025452", + "tt0453560", + "tt1034010", + "tt2071441", + "tt2701772", + "tt0120753", + "tt2153963", + "tt1160907", + "tt1446208", + "tt0044981", + "tt1307858", + "tt1951218", + "tt1508349", + "tt0068734", + "tt1849899", + "tt1977681", + "tt0033152", + "tt2202750", + "tt2147277", + "tt1847713", + "tt0756729", + "tt6832388", + "tt0065007", + "tt0118840", + "tt1087522", + "tt1520399", + "tt4501706", + "tt1648093", + "tt1984153", + "tt0312329", + "tt1874779", + "tt2027128", + "tt0406158", + "tt1330216", + "tt1342115", + "tt1501652", + "tt1619880", + "tt6627192", + "tt1869315", + "tt0033853", + "tt2320087", + "tt1016241", + "tt0050243", + "tt0115509", + "tt0041767", + "tt4835456", + "tt0290057", + "tt1606189", + "tt0878657", + "tt2654124", + "tt2825924", + "tt7242142", + "tt4820312", + "tt0044446", + "tt3678188", + "tt0100065", + "tt3481210", + "tt2056690", + "tt2652476", + "tt2196236", + "tt0094752", + "tt5113086", + "tt0045846", + "tt3298522", + "tt0059624", + "tt3396166", + "tt0059714", + "tt0303021", + "tt1942787", + "tt1228963", + "tt0080016", + "tt0096071", + "tt1848832", + "tt1541664", + "tt6322422", + "tt4475992", + "tt1876446", + "tt3033080", + "tt1489248", + "tt1965136", + "tt2345761", + "tt0071437", + "tt0455961", + "tt2753048", + "tt0067995", + "tt5605470", + "tt0061865", + "tt0206545", + "tt1381413", + "tt0810772", + "tt0165237", + "tt1160374", + "tt2461736", + "tt0475323", + "tt2403883", + "tt1329404", + "tt0756632", + "tt4086116", + "tt3816614", + "tt0081515", + "tt0181611", + "tt4065340", + "tt0070190", + "tt8332772", + "tt3975510", + "tt2402619", + "tt1887748", + "tt0060288", + "tt2216212", + "tt0073200", + "tt0054724", + "tt1544578", + "tt5495040", + "tt4907174", + "tt0067491", + "tt1461249", + "tt0060091", + "tt0044896", + "tt0985695", + "tt5490470", + "tt0053810", + "tt0105719", + "tt0068739", + "tt1865545", + "tt3358328", + "tt3421124", + "tt0104115", + "tt1971558", + "tt2945892", + "tt9378850", + "tt2475846", + "tt1876283", + "tt3993802", + "tt1523485", + "tt0069952", + "tt1129415", + "tt8386710", + "tt4519312", + "tt0066564", + "tt0087578", + "tt0062859", + "tt0062844", + "tt0808508", + "tt0054295", + "tt2490004", + "tt1376168", + "tt7048676", + "tt1449379", + "tt3280264", + "tt2006181", + "tt0079855", + "tt4405860", + "tt0073107", + "tt0092674", + "tt2909476", + "tt0042265", + "tt2180543", + "tt1117636", + "tt1307926", + "tt1659253", + "tt0023938", + "tt1566637", + "tt6591520", + "tt1562563", + "tt4820224", + "tt0066863", + "tt7549452", + "tt0110668", + "tt0049871", + "tt3289724", + "tt6857958", + "tt1255919", + "tt1715223", + "tt1577065", + "tt0304584", + "tt0091707", + "tt9301884", + "tt2984576", + "tt1179258", + "tt0097263", + "tt9015764", + "tt3913194", + "tt0053334", + "tt0372921", + "tt0078919", + "tt2064905", + "tt2657138", + "tt1082064", + "tt2292182", + "tt0080895", + "tt0064555", + "tt0100139", + "tt1931466", + "tt5822160", + "tt3030354", + "tt0083755", + "tt0052148", + "tt3336368", + "tt8396188", + "tt2396224", + "tt2015261", + "tt1877707", + "tt0077429", + "tt0075617", + "tt0029192", + "tt4949290", + "tt2925768", + "tt5262450", + "tt3219604", + "tt0385639", + "tt0065737", + "tt6729000", + "tt3233972", + "tt0275067", + "tt0828103", + "tt0081031", + "tt0951333", + "tt2072164", + "tt4603210", + "tt0093843", + "tt0043503", + "tt0113241", + "tt0105395", + "tt7232928", + "tt0056405", + "tt0099817", + "tt10068994", + "tt0445409", + "tt1567233", + "tt0048336", + "tt0084287", + "tt6984534", + "tt0298856", + "tt0117108", + "tt0113234", + "tt4557998", + "tt7893992", + "tt2719868", + "tt0086459", + "tt0065182", + "tt0113858", + "tt4595882", + "tt1063111", + "tt0083805", + "tt0059803", + "tt3033948", + "tt1007950", + "tt0065451", + "tt0050208", + "tt2889716", + "tt0079843", + "tt1130983", + "tt0099701", + "tt3735554", + "tt0055797", + "tt2320073", + "tt1727795", + "tt2108535", + "tt1946381", + "tt0049407", + "tt0057168", + "tt0049013", + "tt4578050", + "tt0492881", + "tt0109098", + "tt9685652", + "tt0104879", + "tt1753786", + "tt1151911", + "tt4447108", + "tt0034027", + "tt0046076", + "tt6471628", + "tt1512310", + "tt1242516", + "tt4059702", + "tt0892051", + "tt0071161", + "tt1645916", + "tt1118693", + "tt0084796", + "tt1209361", + "tt3261302", + "tt0043540", + "tt2481554", + "tt0102674", + "tt0076099", + "tt4951982", + "tt2171901", + "tt0070287", + "tt0059470", + "tt0048976", + "tt5470222", + "tt0865560", + "tt0040761", + "tt8075192", + "tt4505830", + "tt0067520", + "tt3198698", + "tt0023825", + "tt1425252", + "tt0103078", + "tt0880570", + "tt4226970", + "tt1679248", + "tt0076888", + "tt1710573", + "tt0370754", + "tt1621426", + "tt0053849", + "tt0057371", + "tt0099606", + "tt0059560", + "tt0915463", + "tt2006801", + "tt2179226", + "tt0040974", + "tt1705790", + "tt1864494", + "tt2331880", + "tt2290709", + "tt0381348", + "tt4644382", + "tt1667439", + "tt0110044", + "tt2053423", + "tt2133333", + "tt1090646", + "tt0419663", + "tt0414344", + "tt4314716", + "tt3034594", + "tt0083619", + "tt4771704", + "tt0243736", + "tt0038395", + "tt0117533", + "tt3481550", + "tt0048260", + "tt0068577", + "tt0097498", + "tt0056585", + "tt0363768", + "tt0103316", + "tt4711762", + "tt0070312", + "tt0100791", + "tt4636022", + "tt0454932", + "tt3699692", + "tt0070184", + "tt2497808", + "tt5072350", + "tt0115851", + "tt4614936", + "tt0174480", + "tt4616250", + "tt0120157", + "tt1716759", + "tt0067535", + "tt0468965", + "tt3236976", + "tt5634960", + "tt2176722", + "tt2312262", + "tt1636629", + "tt0071478", + "tt0083715", + "tt0463960", + "tt4065212", + "tt1249311", + "tt4805816", + "tt2397521", + "tt0056346", + "tt1800671", + "tt0049405", + "tt0082596", + "tt1245735", + "tt2277932", + "tt2822578", + "tt0082279", + "tt4508542", + "tt1797487", + "tt0094899", + "tt1235200", + "tt0816616", + "tt1970077", + "tt2073121", + "tt7077210", + "tt8746914", + "tt4261326", + "tt7112154", + "tt0847526", + "tt6857956", + "tt0041223", + "tt0053577", + "tt9855990", + "tt0056626", + "tt6266538", + "tt2010976", + "tt0478210", + "tt3343868", + "tt0287733", + "tt7959026", + "tt0068271", + "tt0095719", + "tt6682134", + "tt1887703", + "tt0115701", + "tt0067975", + "tt1300155", + "tt1763288", + "tt2215366", + "tt1754506", + "tt1220627", + "tt2510268", + "tt0098333", + "tt0100975", + "tt5373786", + "tt8684556", + "tt0090310", + "tt3564200", + "tt0114272", + "tt1754736", + "tt9493030", + "tt0028784", + "tt0049125", + "tt0063348", + "tt0046035", + "tt1488594", + "tt3187378", + "tt0089665", + "tt1436034", + "tt1229370", + "tt2396495", + "tt4677938", + "tt0082537", + "tt0105871", + "tt0060877", + "tt1502417", + "tt0094850", + "tt0095626", + "tt3382842", + "tt0086886", + "tt0073172", + "tt3488056", + "tt0107384", + "tt1331323", + "tt0062618", + "tt5537228", + "tt5543678", + "tt0045699", + "tt0079173", + "tt0193364", + "tt4701182", + "tt0883391", + "tt9759918", + "tt0070835", + "tt3454574", + "tt0080645", + "tt4431326", + "tt5954892", + "tt2739338", + "tt3685818", + "tt0374584", + "tt0084112", + "tt4636252", + "tt4423778", + "tt0140914", + "tt0068542", + "tt3893038", + "tt2243469", + "tt4935110", + "tt4614940", + "tt3730510", + "tt5612156", + "tt0091035", + "tt0977663", + "tt9109306", + "tt6433832", + "tt1754228", + "tt0074920", + "tt2273657", + "tt1665418", + "tt0098084", + "tt1745958", + "tt3977428", + "tt0235712", + "tt3520714", + "tt0110168", + "tt1650413", + "tt3732950", + "tt0046789", + "tt0092848", + "tt4269238", + "tt4673790", + "tt1790669", + "tt0827735", + "tt0078989", + "tt0315327", + "tt0073234", + "tt5732530", + "tt0055429", + "tt0084191", + "tt0050162", + "tt3657684", + "tt0071167", + "tt1883269", + "tt3215826", + "tt1899285", + "tt7138894", + "tt5584756", + "tt0089835", + "tt0113492", + "tt0046928", + "tt0085868", + "tt0089436", + "tt0178868", + "tt0092690", + "tt0091601", + "tt1321509", + "tt6150184", + "tt2124180", + "tt2239824", + "tt1038011", + "tt1039900", + "tt7478112", + "tt1852036", + "tt7297336", + "tt6734754", + "tt0069890", + "tt0059764", + "tt0303732", + "tt0239510", + "tt2094787", + "tt1880418", + "tt1723123", + "tt3819610", + "tt0014900", + "tt3198000", + "tt8782974", + "tt5822140", + "tt1860238", + "tt0068282", + "tt5985052", + "tt5514674", + "tt1210344", + "tt2477218", + "tt4419596", + "tt0996958", + "tt4703676", + "tt2204315", + "tt1893371", + "tt7913478", + "tt5559586", + "tt3684500", + "tt0067511", + "tt0075035", + "tt3400980", + "tt0120323", + "tt0831280", + "tt0051845", + "tt5543604", + "tt7730102", + "tt1984110", + "tt0968311", + "tt0082084", + "tt3058618", + "tt0379725", + "tt4123430", + "tt8223844", + "tt4119054", + "tt4558396", + "tt1857718", + "tt2062622", + "tt5492906", + "tt0107091", + "tt6095616", + "tt0081662", + "tt2419986", + "tt0094320", + "tt4636254", + "tt0057239", + "tt3303730", + "tt4497338", + "tt4636298", + "tt1429313", + "tt5432712", + "tt4075458", + "tt0102422", + "tt0075999", + "tt1827372", + "tt4912452", + "tt1624996", + "tt0787485", + "tt3059816", + "tt0809432", + "tt3892620", + "tt0085514", + "tt3734678", + "tt1384925", + "tt0024951", + "tt0034965", + "tt3520290", + "tt1815746", + "tt0118163", + "tt7867360", + "tt3393070", + "tt7651078", + "tt2922590", + "tt2901962", + "tt6917242", + "tt2126357", + "tt1761005", + "tt3385524", + "tt4404296", + "tt1618432", + "tt4940780", + "tt1562849", + "tt1989593", + "tt0056315", + "tt4766604", + "tt0058307", + "tt4567486", + "tt4696222", + "tt2180587", + "tt1008010", + "tt6731636", + "tt1361828", + "tt0166314", + "tt5907748", + "tt0043733", + "tt3127698", + "tt0087616", + "tt0095649", + "tt0071507", + "tt7224824", + "tt4478526", + "tt5848714", + "tt5651338", + "tt3479208", + "tt2530392", + "tt0062851", + "tt2405182", + "tt4441422", + "tt0049601", + "tt1692084", + "tt0110805", + "tt0119842", + "tt0078435", + "tt0062852", + "tt6069264", + "tt2250282", + "tt1421378", + "tt1525915", + "tt2338846", + "tt0062853", + "tt3306858", + "tt4227282", + "tt0065968", + "tt3400932", + "tt1319709", + "tt0020686", + "tt0034277", + "tt3697418", + "tt5947416", + "tt7579788", + "tt1504319", + "tt0066827", + "tt3320500", + "tt2916416", + "tt2402179", + "tt0058238", + "tt0071203", + "tt4480494", + "tt3375286", + "tt3298600", + "tt3698118", + "tt4173478", + "tt5161376", + "tt0070957", + "tt1772261", + "tt5032492", + "tt5994894", + "tt1038915", + "tt0066773", + "tt0258766", + "tt4671274", + "tt0307453", + "tt0060429", + "tt0113305", + "tt0048124", + "tt0101831", + "tt0098486", + "tt0048790", + "tt0067017", + "tt0108101", + "tt0062155", + "tt0089562", + "tt2847438", + "tt4621630", + "tt1331329", + "tt1928329", + "tt0097814", + "tt1545985", + "tt6589464", + "tt1566501", + "tt1998204", + "tt5286432", + "tt4511566", + "tt2401181", + "tt1833888", + "tt0051381", + "tt0013496", + "tt1653913", + "tt3003800", + "tt4859034", + "tt1895321", + "tt3952900", + "tt0310357", + "tt1706470", + "tt0050271", + "tt0064074", + "tt0036443", + "tt1203517", + "tt1334536", + "tt0062870", + "tt1618372", + "tt2035670", + "tt0399295", + "tt0119698", + "tt3569970", + "tt0102749", + "tt2790236", + "tt0114296", + "tt0811128", + "tt5991410", + "tt1558575", + "tt0069738", + "tt5369484", + "tt0067176", + "tt1865503", + "tt1656170", + "tt0078975", + "tt6523720", + "tt2041331", + "tt0081467", + "tt1260365", + "tt2215457", + "tt3697946", + "tt5136064", + "tt0050294", + "tt4510398", + "tt2061869", + "tt0017448", + "tt0082094", + "tt1780856", + "tt1422674", + "tt0370244", + "tt0066104", + "tt1935940", + "tt0045814", + "tt1954352", + "tt0326965", + "tt2039399", + "tt0057363", + "tt4010918", + "tt4076058", + "tt0032206", + "tt0071950", + "tt3809308", + "tt3054798", + "tt1734582", + "tt0365658", + "tt1282153", + "tt0066053", + "tt5543600", + "tt0104350", + "tt0051848", + "tt0041969", + "tt0079759", + "tt0033226", + "tt0113376", + "tt4699534", + "tt2474932", + "tt1454505", + "tt0040444", + "tt2887322", + "tt2761578", + "tt0080503", + "tt1425922", + "tt2184227", + "tt2883352", + "tt6412864", + "tt7125860", + "tt3900206", + "tt2848324", + "tt3254796", + "tt5693136", + "tt0057523", + "tt1529235", + "tt4060866", + "tt0069048", + "tt0059678", + "tt0064904", + "tt0048291", + "tt5651840", + "tt2337576", + "tt4806012", + "tt3896100", + "tt1571409", + "tt3685668", + "tt4693464", + "tt0039349", + "tt1467273", + "tt2906276", + "tt5112692", + "tt0113820", + "tt0084935", + "tt1371081", + "tt1756415", + "tt0439771", + "tt1042497", + "tt0073817", + "tt9075656", + "tt0054452", + "tt0050267", + "tt0071521", + "tt3501416", + "tt3531578", + "tt1441373", + "tt1159922", + "tt0120303", + "tt2299248", + "tt0099026", + "tt0055571", + "tt4126394", + "tt0081248", + "tt0120108", + "tt0473364", + "tt0113824", + "tt0012494", + "tt0369903", + "tt2013293", + "tt0104652", + "tt2042447", + "tt0064395", + "tt8490686", + "tt2014319", + "tt1937269", + "tt0061489", + "tt0057986", + "tt1483756", + "tt0092067", + "tt0488962", + "tt0347149", + "tt7874348", + "tt7583152", + "tt2326574", + "tt0115033", + "tt3283556", + "tt0051047", + "tt0079833", + "tt0079858", + "tt0065079", + "tt5788136", + "tt3582020", + "tt1185834", + "tt0096283", + "tt9747392", + "tt5804314", + "tt6174226", + "tt4922692", + "tt0067738", + "tt5929754", + "tt5923962", + "tt5269038", + "tt0066436", + "tt0060893", + "tt0040491", + "tt3305388", + "tt0062792", + "tt4203788", + "tt2194826", + "tt1227183", + "tt0071200", + "tt0057560", + "tt0093820", + "tt1716753", + "tt0959306", + "tt1341340", + "tt0071994", + "tt1288376", + "tt2828954", + "tt4211044", + "tt0079788", + "tt3893280", + "tt2381046", + "tt0047889", + "tt0058335", + "tt0903627", + "tt1411232", + "tt3343784", + "tt0222368", + "tt0035262", + "tt1350512", + "tt2433040", + "tt6086718", + "tt0031260", + "tt0240419", + "tt0089591", + "tt1606390", + "tt8760550", + "tt0041847", + "tt0034946", + "tt0035309", + "tt0090693", + "tt2241676", + "tt3746298", + "tt0280609", + "tt0086232", + "tt6704776", + "tt3183630", + "tt0066892", + "tt6235786", + "tt0089816", + "tt0061429", + "tt0051437", + "tt0459102", + "tt0166843", + "tt6330052", + "tt2106671", + "tt0807028", + "tt2325518", + "tt0047880", + "tt1464191", + "tt3778010", + "tt0085496", + "tt6628102", + "tt0064775", + "tt3702996", + "tt0084684", + "tt0090798", + "tt2113659", + "tt0053220", + "tt2987732", + "tt0034398", + "tt0111002", + "tt0029605", + "tt2238470", + "tt0092910", + "tt0093468", + "tt0067727", + "tt2402985", + "tt0045464", + "tt0110296", + "tt0081613", + "tt0470982", + "tt0082970", + "tt4030442", + "tt0082764", + "tt0076240", + "tt0790612", + "tt5325604", + "tt0092615", + "tt7083826", + "tt2133239", + "tt1185837", + "tt0048593", + "tt1133995", + "tt2992552", + "tt1289419", + "tt2543702", + "tt0088355", + "tt4118606", + "tt4189494", + "tt0120514", + "tt0048087", + "tt0076625", + "tt1684927", + "tt2262161", + "tt0073008", + "tt9149982", + "tt9192942", + "tt0120536", + "tt3513054", + "tt0084740", + "tt4167720", + "tt1321869", + "tt0328007", + "tt0893406", + "tt2837336", + "tt4556370", + "tt0106436", + "tt0048233", + "tt0098725", + "tt0155350", + "tt0302436", + "tt1836987", + "tt0103002", + "tt1562568", + "tt1758575", + "tt3526286", + "tt0371853", + "tt3952108", + "tt0120428", + "tt1482393", + "tt1699147", + "tt0107286", + "tt8515802", + "tt0062790", + "tt0860454", + "tt6985448", + "tt0078259", + "tt0109302", + "tt1361843", + "tt3509114", + "tt8883456", + "tt5265898", + "tt0094008", + "tt3339680", + "tt5028340", + "tt0052876", + "tt0064652", + "tt9409854", + "tt1621046", + "tt0108451", + "tt1273221", + "tt0470993", + "tt0102655", + "tt1298594", + "tt2654572", + "tt2910508", + "tt4074364", + "tt1135968", + "tt4587366", + "tt1650042", + "tt0049452", + "tt3424690", + "tt0056556", + "tt0175790", + "tt7025294", + "tt4871980", + "tt0473102", + "tt1780983", + "tt0036260", + "tt4276752", + "tt2349460", + "tt4537896", + "tt0052911", + "tt0029947", + "tt9815588", + "tt0075330", + "tt0057076", + "tt0357139", + "tt9811332", + "tt1319722", + "tt5276332", + "tt0092549", + "tt5953854", + "tt0094594", + "tt4614612", + "tt7241654", + "tt0411269", + "tt3800796", + "tt2191888", + "tt2325002", + "tt2322517", + "tt0059800", + "tt4661798", + "tt2497980", + "tt5011626", + "tt0058150", + "tt8171080", + "tt4392770", + "tt5160928", + "tt0064757", + "tt0055928", + "tt5241578", + "tt1186788", + "tt0100873", + "tt1324055", + "tt1396523", + "tt0073043", + "tt0015863", + "tt0247303", + "tt0081400", + "tt2815030", + "tt9596638", + "tt1262990", + "tt0165982", + "tt0312004", + "tt0101564", + "tt9282616", + "tt0424095", + "tt1623742", + "tt0067333", + "tt0150090", + "tt6660238", + "tt2364949", + "tt0099240", + "tt0098692", + "tt6905696", + "tt0185371", + "tt2036376", + "tt5222768", + "tt0183704", + "tt0339736", + "tt1587156", + "tt0227197", + "tt0076752", + "tt0073714", + "tt0099399", + "tt0196100", + "tt5540194", + "tt6900448", + "tt0094933", + "tt0094995", + "tt9581760", + "tt2268573", + "tt0079574", + "tt0070672", + "tt0081062", + "tt0981224", + "tt2968804", + "tt5294198", + "tt0082398", + "tt0478125", + "tt8587730", + "tt0093638", + "tt1951095", + "tt0070022", + "tt1230215", + "tt0091814", + "tt0475417", + "tt0110588", + "tt3029476", + "tt0082558", + "tt3687186", + "tt2345613", + "tt3165630", + "tt2078552", + "tt0069822", + "tt0119908", + "tt2402603", + "tt2443822", + "tt3138376", + "tt0102898", + "tt2386285", + "tt0093091", + "tt0093428", + "tt0106466", + "tt0076028", + "tt6592296", + "tt0808285", + "tt0072912", + "tt0094315", + "tt1920945", + "tt5822154", + "tt0073880", + "tt0143145", + "tt0120347", + "tt0097880", + "tt1790834", + "tt2107861", + "tt0113189", + "tt0246460", + "tt2378884", + "tt1776900", + "tt0286306", + "tt6572190", + "tt6591584", + "tt1241316", + "tt2190838", + "tt0255605", + "tt0070895", + "tt7958614", + "tt1064744", + "tt0242998", + "tt2488778", + "tt0105156", + "tt0055963", + "tt2396721", + "tt1699755", + "tt0059712", + "tt0995851", + "tt7019808", + "tt6904272", + "tt0023581", + "tt0096117", + "tt0042209", + "tt0092906", + "tt0115994", + "tt0075620", + "tt0085823", + "tt1496005", + "tt1610525", + "tt0081809", + "tt0289889", + "tt0120383", + "tt2552394", + "tt0083144", + "tt0800027", + "tt3687398", + "tt3261114", + "tt0499570", + "tt0469318", + "tt4796122", + "tt4608402", + "tt3995348", + "tt6060874", + "tt2072193", + "tt0070909", + "tt4837328", + "tt8361196", + "tt2022528", + "tt7627790", + "tt0067630", + "tt0100802", + "tt1234721", + "tt0831387", + "tt0199753", + "tt0338013", + "tt1441395", + "tt0119177", + "tt0074559", + "tt0090948", + "tt3381610", + "tt3905764", + "tt0183523", + "tt0107840", + "tt0120738", + "tt1631867", + "tt2179136", + "tt0307479", + "tt0499549", + "tt8925540", + "tt0181689", + "tt3186318", + "tt0094731", + "tt1242447", + "tt3831810", + "tt0070565", + "tt0109417", + "tt0120402", + "tt3397160", + "tt1034306", + "tt0091166", + "tt5818818", + "tt0086356", + "tt2510028", + "tt3397754", + "tt3433074", + "tt1227177", + "tt0234748", + "tt0118001", + "tt1401631", + "tt0081163", + "tt0117102", + "tt0910885", + "tt0120723", + "tt0047574", + "tt6966692", + "tt1688649", + "tt0056048", + "tt1568343", + "tt0101694", + "tt5182856", + "tt0101902", + "tt0091653", + "tt3499048", + "tt0053270", + "tt0085450", + "tt0493402", + "tt0385017", + "tt2395199", + "tt0206634", + "tt1540767", + "tt0083107", + "tt2723240", + "tt0123755", + "tt0047945", + "tt0050407", + "tt2980708", + "tt0865297", + "tt0077975", + "tt0087592", + "tt0142316", + "tt1735862", + "tt5061814", + "tt2560102", + "tt1143896", + "tt1707391", + "tt0104808", + "tt1577052", + "tt0060588", + "tt1462901", + "tt0102395", + "tt0116414", + "tt3993894", + "tt4077118", + "tt3824412", + "tt2057445", + "tt1579232", + "tt9287206", + "tt1605777", + "tt0099018", + "tt0138703", + "tt1498870", + "tt2996684", + "tt2402085", + "tt4056738", + "tt1629295", + "tt0787523", + "tt4131496", + "tt0058649", + "tt0104139", + "tt1242618", + "tt3093546", + "tt0114745", + "tt2338424", + "tt0023622", + "tt0462329", + "tt0884726", + "tt0084565", + "tt0057609", + "tt9584192", + "tt0047036", + "tt0032670", + "tt0023042", + "tt2233979", + "tt2035630", + "tt0888693", + "tt0054127", + "tt0097757", + "tt0025371", + "tt0023241", + "tt0083232", + "tt0088936", + "tt2948840", + "tt0433349", + "tt1967614", + "tt0113375", + "tt2066176", + "tt5295774", + "tt0099575", + "tt0093737", + "tt0058886", + "tt1470171", + "tt2369396", + "tt0057518", + "tt0088930", + "tt2714380", + "tt0054594", + "tt0094750", + "tt2465140", + "tt5842890", + "tt6081670", + "tt0375604", + "tt0405163", + "tt1807610", + "tt2199238", + "tt3236120", + "tt0097763", + "tt0198871", + "tt4981636", + "tt0368323", + "tt2089750", + "tt0058499", + "tt0116442", + "tt0963965", + "tt4003440", + "tt0052611", + "tt0053141", + "tt0165662", + "tt7966920", + "tt5463162", + "tt0038958", + "tt0046807", + "tt1613062", + "tt1825918", + "tt9759926", + "tt3203620", + "tt2667918", + "tt3442990", + "tt0082467", + "tt3318750", + "tt1483324", + "tt8262592", + "tt8243908", + "tt0177625", + "tt0081568", + "tt1657510", + "tt5464234", + "tt0082776", + "tt0100143", + "tt0068435", + "tt2893490", + "tt0418586", + "tt2474958", + "tt0096454", + "tt0250468", + "tt4054654", + "tt3614530", + "tt1649780", + "tt1878942", + "tt2350892", + "tt0118900", + "tt0090270", + "tt1290135", + "tt0985025", + "tt8671138", + "tt0050556", + "tt0212132", + "tt0262432", + "tt2380331", + "tt0106557", + "tt8065796", + "tt5834760", + "tt7715202", + "tt1242843", + "tt6097798", + "tt7683350", + "tt1242599", + "tt0057490", + "tt0115862", + "tt0063829", + "tt0089122", + "tt1930546", + "tt2126362", + "tt0079826", + "tt0150111", + "tt2034176", + "tt2461520", + "tt1047011", + "tt0087428", + "tt8574252", + "tt0772168", + "tt0065446", + "tt0083336", + "tt2081437", + "tt0052365", + "tt0070791", + "tt1925435", + "tt1930294", + "tt1853643", + "tt0116861", + "tt0490166", + "tt0209095", + "tt1945062", + "tt0110329", + "tt8308174", + "tt0339294", + "tt0066214", + "tt0202677", + "tt5999530", + "tt0113636", + "tt0087727", + "tt4902266", + "tt0094919", + "tt0089604", + "tt0101846", + "tt0089118", + "tt0054195", + "tt0086859", + "tt0068240", + "tt0120907", + "tt3862750", + "tt0083851", + "tt1629705", + "tt0266391", + "tt0425458", + "tt0120112", + "tt5960374", + "tt0088146", + "tt0058092", + "tt0093940", + "tt1837562", + "tt2658428", + "tt1259573", + "tt0134630", + "tt1155076", + "tt2187884", + "tt0060232", + "tt0093036", + "tt1260581", + "tt0102960", + "tt0049456", + "tt0086978", + "tt8108230", + "tt2180994", + "tt1700845", + "tt5072852", + "tt0109279", + "tt1259574", + "tt1274586", + "tt3164256", + "tt0979434", + "tt0092804", + "tt0098621", + "tt1411238", + "tt0096219", + "tt0059797", + "tt0116282", + "tt0090927", + "tt0395125", + "tt0037932", + "tt6360872", + "tt0039694", + "tt0074258", + "tt0181151", + "tt0171768", + "tt6932818", + "tt6343314", + "tt5304996", + "tt0210382", + "tt2318527", + "tt0063323", + "tt6927152", + "tt0104938", + "tt8046144", + "tt1687281", + "tt0093582", + "tt0107927", + "tt0456020", + "tt6893370", + "tt7545524", + "tt0050766", + "tt0356618", + "tt0047437", + "tt0133059", + "tt0937237", + "tt0089961", + "tt0301171", + "tt0057590", + "tt7401588", + "tt0053793", + "tt3714720", + "tt2582500", + "tt2815966", + "tt0119311", + "tt0082361", + "tt1741243", + "tt0052295", + "tt3082898", + "tt0094118", + "tt0061770", + "tt0119227", + "tt6433456", + "tt0101587", + "tt2101570", + "tt6973866", + "tt3263614", + "tt1540741", + "tt3322892", + "tt0113347", + "tt6258766", + "tt0132910", + "tt5465970", + "tt1054580", + "tt0062794", + "tt0051337", + "tt5501104", + "tt1645131", + "tt0063013", + "tt2883434", + "tt3534602", + "tt0151568", + "tt0093278", + "tt2752688", + "tt0175526", + "tt4501454", + "tt0105130", + "tt0120831", + "tt5083738", + "tt1756851", + "tt3167458", + "tt0058333", + "tt0091875", + "tt0279889", + "tt0106941", + "tt2077851", + "tt1575694", + "tt0060424", + "tt1196956", + "tt1658801", + "tt1757742", + "tt7295450", + "tt2091478", + "tt2274752", + "tt0132512", + "tt0097328", + "tt0086619", + "tt1990181", + "tt0051369", + "tt0250323", + "tt2304426", + "tt0476958", + "tt0052918", + "tt1212974", + "tt1838603", + "tt0058213", + "tt3628584", + "tt4854820", + "tt2679552", + "tt8750664", + "tt2234261", + "tt8594624", + "tt0204137", + "tt2093991", + "tt0053318", + "tt0111400", + "tt0099012", + "tt0080388", + "tt1536048", + "tt5540622", + "tt0289635", + "tt1029120", + "tt0102316", + "tt0098575", + "tt2465146", + "tt3707104", + "tt0044399", + "tt1179794", + "tt1770734", + "tt1552224", + "tt1570989", + "tt0051994", + "tt0109936", + "tt0082334", + "tt1781827", + "tt9168816", + "tt1049402", + "tt0054743", + "tt0059017", + "tt0066728", + "tt9381998", + "tt0057920", + "tt0088117", + "tt3991412", + "tt0844671", + "tt9695612", + "tt0107983", + "tt6805366", + "tt0331952", + "tt2265534", + "tt0096945", + "tt0058576", + "tt0203297", + "tt1361318", + "tt0106664", + "tt0056560", + "tt0850253", + "tt1998213", + "tt1698648", + "tt5204020", + "tt2007421", + "tt1316622", + "tt0067277", + "tt0065088", + "tt0091445", + "tt0072226", + "tt0059037", + "tt4712076", + "tt0324296", + "tt5789310", + "tt0246544", + "tt0080474", + "tt3748440", + "tt7343732", + "tt0079240", + "tt2345112", + "tt0088272", + "tt0091983", + "tt0067549", + "tt0122541", + "tt1839593", + "tt1935902", + "tt1152850", + "tt0112966", + "tt2094064", + "tt2063781", + "tt0117128", + "tt1758595", + "tt1594913", + "tt1573483", + "tt0147004", + "tt5848272", + "tt0455323", + "tt3859076", + "tt0803061", + "tt0299117", + "tt2328900", + "tt1498569", + "tt0083169", + "tt0095593", + "tt0098309", + "tt0074899", + "tt4692242", + "tt0065832", + "tt2258345", + "tt1286151", + "tt4645330", + "tt7476116", + "tt2245003", + "tt3844962", + "tt0059243", + "tt4682708", + "tt3284178", + "tt0048261", + "tt1588334", + "tt3141498", + "tt0098987", + "tt0166276", + "tt0057312", + "tt0490075", + "tt5918028", + "tt2980472", + "tt5770430", + "tt0338706", + "tt2917388", + "tt0068154", + "tt0067355", + "tt2325977", + "tt0371572", + "tt4447090", + "tt0210616", + "tt7920024", + "tt0115744", + "tt4692234", + "tt2279339", + "tt0108185", + "tt0118760", + "tt3234672", + "tt2390237", + "tt5442308", + "tt1401656", + "tt1985019", + "tt3766394", + "tt5734576", + "tt1433822", + "tt0857190", + "tt5187886", + "tt9135854", + "tt2195548", + "tt0373283", + "tt1535970", + "tt0122459", + "tt1810683", + "tt6116682", + "tt5030004", + "tt0785006", + "tt1296898", + "tt0112688", + "tt0110265", + "tt8066972", + "tt0057831", + "tt3672640", + "tt0060097", + "tt2513074", + "tt0092666", + "tt0107151", + "tt0100519", + "tt0076112", + "tt3623726", + "tt0457495", + "tt0199626", + "tt0775440", + "tt0107387", + "tt4658324", + "tt3106464", + "tt6476140", + "tt0118158", + "tt2309021", + "tt3685622", + "tt1235796", + "tt0134619", + "tt3345206", + "tt1621039", + "tt0084298", + "tt0084028", + "tt1294970", + "tt1016205", + "tt0067445", + "tt0486674", + "tt0404978", + "tt0078251", + "tt2040560", + "tt1160368", + "tt3642618", + "tt1151359", + "tt0437179", + "tt3106120", + "tt5698568", + "tt0118531", + "tt2167202", + "tt2317524", + "tt0053946", + "tt0072251", + "tt0278823", + "tt3177316", + "tt0310281", + "tt0116999", + "tt0092622", + "tt0281373", + "tt0303361", + "tt0111127", + "tt1288403", + "tt0087945", + "tt0457572", + "tt0404163", + "tt0970468", + "tt1252507", + "tt1566486", + "tt3618822", + "tt0105415", + "tt0388230", + "tt0083033", + "tt1742044", + "tt0083296", + "tt2343793", + "tt0113409", + "tt0166396", + "tt0073820", + "tt0094701", + "tt1772288", + "tt0038975", + "tt0100994", + "tt0200027", + "tt2402105", + "tt0085918", + "tt0267913", + "tt0083590", + "tt0096794", + "tt0267891", + "tt0097499", + "tt1082886", + "tt3442006", + "tt0104613", + "tt0120255", + "tt2567712", + "tt0086636", + "tt1481572", + "tt0318155", + "tt0099517", + "tt0079869", + "tt0096889", + "tt0099085", + "tt0047969", + "tt1837703", + "tt0427229", + "tt2450186", + "tt0114151", + "tt2358925", + "tt0113986", + "tt1967545", + "tt0104389", + "tt0113303", + "tt1311071", + "tt0076723", + "tt6769508", + "tt5177088", + "tt0171433", + "tt0060574", + "tt0162677", + "tt0999913", + "tt0106582", + "tt1480295", + "tt1440345", + "tt0107507", + "tt0012752", + "tt0129280", + "tt5135532", + "tt1694020", + "tt1265990", + "tt0272207", + "tt0814335", + "tt0060665", + "tt0462335", + "tt0108330", + "tt1872818", + "tt9552488", + "tt3319920", + "tt2103254", + "tt1175491", + "tt0765476", + "tt5994166", + "tt1366344", + "tt0977668", + "tt0356634", + "tt0498399", + "tt0280030", + "tt0114473", + "tt1078188", + "tt0313769", + "tt0120832", + "tt1647668", + "tt0131369", + "tt1535438", + "tt0414480", + "tt2404425", + "tt0164318", + "tt1124215", + "tt0977680", + "tt7652452", + "tt0071803", + "tt1135939", + "tt0371246", + "tt0870122", + "tt0048028", + "tt0104057", + "tt1126590", + "tt0322589", + "tt0298228", + "tt1667310", + "tt1698641", + "tt1661382", + "tt2664880", + "tt1881002", + "tt0093966", + "tt0113957", + "tt1430612", + "tt1195478", + "tt0954544", + "tt1219342", + "tt0814022", + "tt1321860", + "tt2265398", + "tt0935075", + "tt0071483", + "tt6777170", + "tt2205697", + "tt1616195", + "tt6516314", + "tt0419704", + "tt0119664", + "tt1462041", + "tt4643844", + "tt4530422", + "tt1438254", + "tt0083767", + "tt2637276", + "tt0138304", + "tt0044121", + "tt6017926", + "tt2364841", + "tt4357170", + "tt8633296", + "tt2734566", + "tt6263618", + "tt0105622", + "tt4899406", + "tt0163787", + "tt0238038", + "tt0109127", + "tt3485166", + "tt0058525", + "tt2147708", + "tt1766175", + "tt3588588", + "tt0118618", + "tt0061636", + "tt0065597", + "tt4532826", + "tt0017048", + "tt0091024", + "tt0110524", + "tt0416220", + "tt0059112", + "tt5591666", + "tt3077060", + "tt0762107", + "tt3345474", + "tt0052106", + "tt1571401", + "tt2090537", + "tt4213806", + "tt3345472", + "tt6085362", + "tt0089038", + "tt0049964", + "tt0284815", + "tt1219828", + "tt1612782", + "tt1430077", + "tt6857040", + "tt0053244", + "tt0451201", + "tt0066412", + "tt0065553", + "tt5815944", + "tt1313244", + "tt9048826", + "tt0057180", + "tt7776050", + "tt0065943", + "tt2972482", + "tt0360139", + "tt0074686", + "tt0085124", + "tt0091799", + "tt3465916", + "tt0120075", + "tt0102050", + "tt3655972", + "tt0222344", + "tt1833878", + "tt0063291", + "tt1403214", + "tt0085297", + "tt2526846", + "tt4721400", + "tt0086154", + "tt0019415", + "tt1996346", + "tt2548396", + "tt1977953", + "tt2371834", + "tt0116320", + "tt1571402", + "tt3445580", + "tt7422506", + "tt1820451", + "tt0113026", + "tt0188527", + "tt0116587", + "tt0090145", + "tt6938828", + "tt2371824", + "tt1270797", + "tt5990066", + "tt0052654", + "tt6675400", + "tt8632844", + "tt1498878", + "tt1655460", + "tt8359848", + "tt0082580", + "tt4439120", + "tt3958014", + "tt7074886", + "tt0048789", + "tt1273222", + "tt1236371", + "tt0058100", + "tt0084424", + "tt0068767", + "tt0089104", + "tt6155194", + "tt2994646", + "tt3466778", + "tt1562872", + "tt0038123", + "tt6268594", + "tt7694738", + "tt1985187", + "tt9679608", + "tt3112572", + "tt0036723", + "tt6493286", + "tt0976247", + "tt0046414", + "tt0081433", + "tt1074643", + "tt0071569", + "tt2964360", + "tt7012864", + "tt0053298", + "tt0053825", + "tt1093355", + "tt1516577", + "tt2363213", + "tt2710614", + "tt1002561", + "tt0053912", + "tt7149192", + "tt1234546", + "tt3263996", + "tt0053877", + "tt0055233", + "tt3815430", + "tt9618532", + "tt9602544", + "tt0073152", + "tt0929742", + "tt0030550", + "tt3697566", + "tt5265960", + "tt1978524", + "tt0285005", + "tt0091214", + "tt3510480", + "tt0365957", + "tt0221111", + "tt4273886", + "tt1230385", + "tt6918674", + "tt6175802", + "tt0080889", + "tt5066556", + "tt1907639", + "tt0082671", + "tt8164012", + "tt4932154", + "tt0053115", + "tt6471264", + "tt0085970", + "tt0053114", + "tt4685940", + "tt0075040", + "tt2563562", + "tt0043469", + "tt1363109", + "tt0330686", + "tt0036244", + "tt3438354", + "tt1919207", + "tt3354222", + "tt3740778", + "tt0103882", + "tt8738964", + "tt0047956", + "tt1224519", + "tt0875696", + "tt2353767", + "tt4416518", + "tt0086443", + "tt2514338", + "tt1817805", + "tt6460308", + "tt0022958", + "tt0071141", + "tt2852376", + "tt1699518", + "tt0048947", + "tt4584800", + "tt1819551", + "tt2241605", + "tt0079495", + "tt0116692", + "tt4939066", + "tt0024852", + "tt1979172", + "tt0039536", + "tt1235800", + "tt2058710", + "tt3775202", + "tt1206488", + "tt3444206", + "tt6233596", + "tt3652098", + "tt1954798", + "tt2771800", + "tt9377760", + "tt3856188", + "tt5614612", + "tt1715324", + "tt7091300", + "tt0080539", + "tt3455740", + "tt0109442", + "tt2951396", + "tt3259178", + "tt0492890", + "tt2404463", + "tt0906016", + "tt0203139", + "tt0770739", + "tt0138749", + "tt0167758", + "tt1587828", + "tt0042593", + "tt0035567", + "tt0029162", + "tt1480658", + "tt0055830", + "tt1196124", + "tt8122018", + "tt6823890", + "tt0082527", + "tt3116548", + "tt0111742", + "tt4298958", + "tt0062736", + "tt1438251", + "tt0082498", + "tt0029310", + "tt2547942", + "tt0220827", + "tt0041361", + "tt0074252", + "tt3147312", + "tt1504443", + "tt0052549", + "tt1564368", + "tt0043882", + "tt0073019", + "tt0092516", + "tt3013610", + "tt1708135", + "tt1540005", + "tt0326429", + "tt0014341", + "tt0085935", + "tt0058405", + "tt0038823", + "tt0067801", + "tt3606756", + "tt2219210", + "tt0076716", + "tt4547076", + "tt7738450", + "tt0052617", + "tt0090130", + "tt0203343", + "tt0277986", + "tt4664244", + "tt4065066", + "tt0117381", + "tt3732280", + "tt0165623", + "tt0073082", + "tt5662550", + "tt2034009", + "tt0076630", + "tt3202202", + "tt0963194", + "tt2369600", + "tt2905772", + "tt0085549", + "tt2457138", + "tt4914580", + "tt0079351", + "tt0062292", + "tt2640474", + "tt7104984", + "tt0084083", + "tt0108432", + "tt3885508", + "tt0057880", + "tt3484324", + "tt6186232", + "tt6803974", + "tt2359417", + "tt0095389", + "tt8116428", + "tt6742252", + "tt6354108", + "tt6053472", + "tt0119744", + "tt2278878", + "tt0075151", + "tt0060453", + "tt2292326", + "tt0828054", + "tt0091042", + "tt0115571", + "tt2741564", + "tt3756788", + "tt0094888", + "tt3253930", + "tt0074148", + "tt0071412", + "tt0105179", + "tt0104083", + "tt2409302", + "tt5221584", + "tt4911940", + "tt5290524", + "tt2006753", + "tt4621872", + "tt3108604", + "tt0088461", + "tt1782440", + "tt5044656", + "tt1979319", + "tt0363226", + "tt3480886", + "tt0021156", + "tt0059635", + "tt4375438", + "tt3384350", + "tt0085601", + "tt1298554", + "tt2425486", + "tt0087796", + "tt0084777", + "tt2650978", + "tt0085404", + "tt0083946", + "tt0056906", + "tt0057379", + "tt6746304", + "tt0114367", + "tt0131636", + "tt0130377", + "tt7475540", + "tt0059942", + "tt0087798", + "tt0057714", + "tt0085764", + "tt1391116", + "tt2691734", + "tt0123334", + "tt1648216", + "tt0057715", + "tt3595848", + "tt0143012", + "tt0199905", + "tt0200309", + "tt0057503", + "tt1555149", + "tt0837800", + "tt0861739", + "tt0092795", + "tt1477855", + "tt1797504", + "tt3532278", + "tt0164984", + "tt0213689", + "tt0123335", + "tt1401236", + "tt0103077", + "tt1260572", + "tt1193507", + "tt0056714", + "tt3796936", + "tt0058001", + "tt2070649", + "tt1541123", + "tt0041735", + "tt0094889", + "tt2394018", + "tt1520956", + "tt3723790", + "tt0191664", + "tt1492959", + "tt0202154", + "tt1572194", + "tt0435434", + "tt6340500", + "tt0049012", + "tt4247682", + "tt1023347", + "tt2215673", + "tt4768656", + "tt2978716", + "tt0076868", + "tt1838475", + "tt2724236", + "tt1743922", + "tt8097306", + "tt1436372", + "tt0090037", + "tt2201251", + "tt0478329", + "tt1981637", + "tt3427772", + "tt0825279", + "tt1748122", + "tt0061882", + "tt0937373", + "tt3701714", + "tt0086102", + "tt3487994", + "tt2375605", + "tt0037514", + "tt3297792", + "tt1287878", + "tt0046359", + "tt0057697", + "tt0817225", + "tt0073589", + "tt9323966", + "tt0456470", + "tt2348394", + "tt0048820", + "tt3404140", + "tt0087464", + "tt0024034", + "tt0058262", + "tt0841150", + "tt0084899", + "tt0041716", + "tt0104770", + "tt0020629", + "tt4374286", + "tt0063173", + "tt2872750", + "tt0045591", + "tt0038824", + "tt0969269", + "tt0098635", + "tt0104771", + "tt0037101", + "tt1449283", + "tt0045537", + "tt2299842", + "tt0028021", + "tt0058715", + "tt0041113", + "tt0164982", + "tt7183578", + "tt3663718", + "tt0038787", + "tt7399158", + "tt0186725", + "tt3424722", + "tt0039689", + "tt0029811", + "tt0045793", + "tt0038669", + "tt0046303", + "tt0032143", + "tt0042788", + "tt0037988", + "tt0039420", + "tt8226904", + "tt0047030", + "tt0164983", + "tt0038890", + "tt0202153", + "tt0042276", + "tt0072439", + "tt0034240", + "tt0201922", + "tt0054749", + "tt0063835", + "tt0054248", + "tt0065778", + "tt0039417", + "tt0102587", + "tt0069704", + "tt0056801", + "tt0040636", + "tt0066603", + "tt0063834", + "tt4457344", + "tt8543788", + "tt2368254", + "tt4189260", + "tt5251438", + "tt0054130", + "tt1606384", + "tt7914416", + "tt0034445", + "tt6411590", + "tt0062518", + "tt2465238", + "tt0913968", + "tt0066602", + "tt0076085", + "tt0373074", + "tt0053134", + "tt0122136", + "tt0110081", + "tt1416336", + "tt0060537", + "tt0053619", + "tt4278962", + "tt1422020", + "tt0346336", + "tt0416044", + "tt0414426", + "tt4482572", + "tt0059459", + "tt0465580", + "tt0460778", + "tt1900893", + "tt3417334", + "tt0039725", + "tt0097074", + "tt1128075", + "tt0053856", + "tt6237268", + "tt1640218", + "tt0070472", + "tt0058279", + "tt1846589", + "tt6118340", + "tt0096152", + "tt5523010", + "tt0110877", + "tt0078801", + "tt0074441", + "tt3530830", + "tt6921996", + "tt7252852", + "tt1916763", + "tt6500934", + "tt1323044", + "tt0061811", + "tt1727252", + "tt2139851", + "tt7167686", + "tt5361064", + "tt0143348", + "tt0047528", + "tt0072157", + "tt0066390", + "tt0091810", + "tt0317248", + "tt0064616", + "tt5612702", + "tt1533117", + "tt3779028", + "tt3205394", + "tt1437357", + "tt0116767", + "tt6127326", + "tt0037508", + "tt2872810", + "tt1811371", + "tt0071358", + "tt1743724", + "tt1079968", + "tt0031507", + "tt0039243", + "tt0282599", + "tt0053062", + "tt0292907", + "tt0023634", + "tt1843840", + "tt1650453", + "tt0053179", + "tt0032842", + "tt0045935", + "tt1876261", + "tt1306964", + "tt0054766", + "tt0387353", + "tt0210587", + "tt0079086", + "tt2756412", + "tt0056010", + "tt1333643", + "tt9059862", + "tt2379386", + "tt0083053", + "tt2131698", + "tt1655441", + "tt0266075", + "tt0370082", + "tt0470967", + "tt0241073", + "tt9556756", + "tt0075276", + "tt1565058", + "tt0301167", + "tt0104376", + "tt0140825", + "tt0080380", + "tt0063198", + "tt0278815", + "tt0034182", + "tt0082700", + "tt3754940", + "tt0054286", + "tt1650407", + "tt1156454", + "tt0418657", + "tt3042800", + "tt0089060", + "tt0478188", + "tt1123894", + "tt4902904", + "tt0037767", + "tt0067327", + "tt0135790", + "tt1773467", + "tt3792452", + "tt2717318", + "tt2622826", + "tt3315380", + "tt0093073", + "tt0074442", + "tt5345298", + "tt3102206", + "tt1065073", + "tt0225535", + "tt8305690", + "tt2465578", + "tt0790604", + "tt0375920", + "tt0038965", + "tt6342062", + "tt9341628", + "tt1111890", + "tt0090887", + "tt0120620", + "tt0093412", + "tt5222918", + "tt0113083", + "tt1588886", + "tt2240312", + "tt4964788", + "tt0066922", + "tt0050803", + "tt0107315", + "tt4411504", + "tt0445336", + "tt3825638", + "tt6098696", + "tt6313378", + "tt2552498", + "tt2188717", + "tt0098360", + "tt6012244", + "tt4025514", + "tt0061176", + "tt0066563", + "tt0079815", + "tt0081001", + "tt0365675", + "tt0083909", + "tt0972857", + "tt4262980", + "tt3849692", + "tt7162416", + "tt1808477", + "tt0100347", + "tt2388705", + "tt0091209", + "tt1547090", + "tt0037280", + "tt3746250", + "tt0071691", + "tt5017936", + "tt1499666", + "tt1203523", + "tt5451118", + "tt0071276", + "tt4285496", + "tt0040766", + "tt0447461", + "tt0037558", + "tt0187696", + "tt2404738", + "tt0312358", + "tt0056606", + "tt8562100", + "tt1291652", + "tt0192757", + "tt6004864", + "tt0307213", + "tt0415679", + "tt1373120", + "tt1535566", + "tt2617828", + "tt0129461", + "tt0286751", + "tt2764784", + "tt0120263", + "tt0108188", + "tt0060135", + "tt5121816", + "tt2178941", + "tt0080436", + "tt0045631", + "tt1588342", + "tt7751192", + "tt0272360", + "tt1719071", + "tt0199683", + "tt0122987", + "tt0079074", + "tt0103704", + "tt0114508", + "tt0058625", + "tt0018455", + "tt0106936", + "tt0049710", + "tt0821442", + "tt0025316", + "tt0050986", + "tt0017925", + "tt0032551", + "tt0109688", + "tt0048579", + "tt0033870", + "tt0047444", + "tt0015324", + "tt3750872", + "tt0881200", + "tt0044741", + "tt7891470", + "tt0196472", + "tt0109592", + "tt4326444", + "tt4971344", + "tt5215952", + "tt0091670", + "tt0084021", + "tt0082176", + "tt0405094", + "tt6730898", + "tt3841424", + "tt1226837", + "tt0055601", + "tt0060637", + "tt0078875", + "tt0308379", + "tt2675914", + "tt4176826", + "tt0108211", + "tt2832470", + "tt0031679", + "tt0042192", + "tt0064513", + "tt0017136", + "tt0095675", + "tt0100998", + "tt5723272", + "tt0951318", + "tt3616916", + "tt1029235", + "tt0095327", + "tt6045466", + "tt0073650", + "tt0063036", + "tt0012349", + "tt0088275", + "tt6020428", + "tt0026029", + "tt0065198", + "tt0032553", + "tt4048272", + "tt0047469", + "tt0046438", + "tt0123648", + "tt0045274", + "tt4682136", + "tt0031650", + "tt0050613", + "tt0050976", + "tt0036112", + "tt0035446", + "tt0093191", + "tt5789976", + "tt0014429", + "tt0040725", + "tt7147540", + "tt5689632", + "tt0065780", + "tt0058652", + "tt7095482", + "tt8601916", + "tt8107464", + "tt0104029", + "tt0053779", + "tt0073076", + "tt0423866", + "tt1740707", + "tt0022100", + "tt0091003", + "tt0093225", + "tt0480669", + "tt0031885", + "tt4494718", + "tt0041154", + "tt0097550", + "tt0347048", + "tt0021810", + "tt5096846", + "tt0365376", + "tt0038762", + "tt0468492", + "tt0097372", + "tt3685870", + "tt3244446", + "tt6869538", + "tt0039192", + "tt0057261", + "tt0083666", + "tt7525514", + "tt0089606", + "tt0034881", + "tt0059895", + "tt0875140", + "tt6409782", + "tt3086442", + "tt0049010", + "tt2078599", + "tt1614989", + "tt0021309", + "tt3011894", + "tt0056709", + "tt0034461", + "tt0056736", + "tt4226388", + "tt6768578", + "tt0024188", + "tt0213847", + "tt0064689", + "tt0961066", + "tt0071129", + "tt1232776", + "tt4834220", + "tt9217772", + "tt0087359", + "tt1153100", + "tt1777612", + "tt2538128", + "tt2140429", + "tt0324572", + "tt9272928", + "tt0063775", + "tt3110770", + "tt2081438", + "tt1376460", + "tt0074776", + "tt2186783", + "tt3920782", + "tt3301196", + "tt0099691", + "tt0093974", + "tt9217732", + "tt1213641", + "tt0874289", + "tt0244283", + "tt0756707", + "tt0067976", + "tt1516002", + "tt2369041", + "tt0087537", + "tt0063678", + "tt1957938", + "tt1663222", + "tt0071566", + "tt1965162", + "tt0787515", + "tt0072886", + "tt1811315", + "tt1577055", + "tt0902967", + "tt1876349", + "tt4472596", + "tt4439102", + "tt1170391", + "tt0085862", + "tt3384904", + "tt1391579", + "tt0087229", + "tt0126848", + "tt2551510", + "tt0128484", + "tt1543459", + "tt0048204", + "tt2381962", + "tt0113429", + "tt4215810", + "tt3743126", + "tt1687889", + "tt0058620", + "tt1716767", + "tt0118799", + "tt7736536", + "tt0084422", + "tt0036940", + "tt0084509", + "tt1807018", + "tt0081344", + "tt5503368", + "tt0082648", + "tt0430239", + "tt0028284", + "tt1175709", + "tt0027166", + "tt9287408", + "tt7546096", + "tt0418879", + "tt6512428", + "tt1531911", + "tt0473393", + "tt7008872", + "tt0903606", + "tt0063808", + "tt1472195", + "tt0265987", + "tt0388473", + "tt1331335", + "tt0083726", + "tt2495104", + "tt0063210", + "tt6223806", + "tt1618445", + "tt0086352", + "tt0353357", + "tt0079727", + "tt0327084", + "tt0062649", + "tt0035153", + "tt5258128", + "tt1368443", + "tt0119592", + "tt0079144", + "tt0038417", + "tt0475286", + "tt6848736", + "tt6162892", + "tt0061094", + "tt0264734", + "tt1562567", + "tt0497432", + "tt0052002", + "tt0082114", + "tt3620762", + "tt1664664", + "tt1550524", + "tt0086050", + "tt5720450", + "tt3221698", + "tt0070337", + "tt5157326", + "tt5580266", + "tt4145324", + "tt0099747", + "tt1686042", + "tt5981304", + "tt2439946", + "tt2784134", + "tt0055230", + "tt2630992", + "tt2437548", + "tt1592576", + "tt0090771", + "tt0056993", + "tt2304517", + "tt2518848", + "tt3477752", + "tt0085248", + "tt2850304", + "tt4000870", + "tt2291606", + "tt1823051", + "tt5664636", + "tt2121377", + "tt0091724", + "tt0270919", + "tt1345734", + "tt3877296", + "tt0071216", + "tt1667418", + "tt0991174", + "tt4028134", + "tt0029030", + "tt0078330", + "tt0301357", + "tt3910814", + "tt3067274", + "tt0108342", + "tt1693679", + "tt2088923", + "tt0070292", + "tt0075913", + "tt3837820", + "tt0417745", + "tt0077421", + "tt2948712", + "tt0098375", + "tt0065224", + "tt0255589", + "tt0068273", + "tt3038142", + "tt2361184", + "tt0087386", + "tt1129427", + "tt1648208", + "tt2797106", + "tt3041550", + "tt0060726", + "tt7689906", + "tt0032080", + "tt0095924", + "tt0053126", + "tt9409846", + "tt4368496", + "tt0114432", + "tt0437072", + "tt0045177", + "tt1453409", + "tt3307774", + "tt0794338", + "tt3698558", + "tt1793223", + "tt0047365", + "tt2825230", + "tt2967578", + "tt1351784", + "tt1835955", + "tt1568139", + "tt3462696", + "tt0085236", + "tt0479773", + "tt1693843", + "tt1307989", + "tt0247613", + "tt0072317", + "tt0084854", + "tt3844876", + "tt3013160", + "tt0780002", + "tt0086113", + "tt0050306", + "tt2088012", + "tt5340882", + "tt1836099", + "tt0029844", + "tt0071935", + "tt0070628", + "tt0120026", + "tt0017668", + "tt1385543", + "tt5736592", + "tt0061420", + "tt0495138", + "tt5502816", + "tt0039294", + "tt3401748", + "tt1640718", + "tt5537686", + "tt0379865", + "tt0080846", + "tt0066212", + "tt0073330", + "tt7073710", + "tt7323600", + "tt5639446", + "tt1544572", + "tt2431332", + "tt0411951", + "tt1072754", + "tt3013528", + "tt0075754", + "tt0053841", + "tt9534518", + "tt1522846", + "tt5095510", + "tt2104837", + "tt1145154", + "tt3307726", + "tt5131906", + "tt0061758", + "tt9105950", + "tt1608368", + "tt0040682", + "tt0101751", + "tt4175888", + "tt1509788", + "tt0046272", + "tt1857842", + "tt4180576", + "tt2991516", + "tt4184252", + "tt6101602", + "tt0061647", + "tt0943326", + "tt0034409", + "tt0037761", + "tt1637728", + "tt2753288", + "tt5782152", + "tt1436432", + "tt0906778", + "tt0039041", + "tt1684555", + "tt6999052", + "tt1366338", + "tt0024727", + "tt0492835", + "tt0053882", + "tt1209378", + "tt1227789", + "tt0097270", + "tt1314652", + "tt7277350", + "tt0047679", + "tt0116447", + "tt4296026", + "tt2217458", + "tt5851014", + "tt0092203", + "tt2308725", + "tt2556114", + "tt1054631", + "tt1937506", + "tt1870527", + "tt0079368", + "tt0043778", + "tt6763252", + "tt0031602", + "tt1626139", + "tt5158522", + "tt0892769", + "tt0064888", + "tt0940642", + "tt1680123", + "tt0475783", + "tt0077617", + "tt2486792", + "tt2123884", + "tt1326238", + "tt0051755", + "tt1733125", + "tt0091990", + "tt2182019", + "tt0075627", + "tt1702429", + "tt1032763", + "tt3598222", + "tt3121332", + "tt1297298", + "tt2518926", + "tt2468774", + "tt0057952", + "tt0083001", + "tt6684884", + "tt3480556", + "tt0120502", + "tt0060708", + "tt0074553", + "tt0081178", + "tt0118117", + "tt0361748", + "tt0105466", + "tt6829180", + "tt1462757", + "tt0062479", + "tt0144239", + "tt0063469", + "tt1447479", + "tt1773020", + "tt4998772", + "tt7875464", + "tt0045465", + "tt2446502", + "tt0082379", + "tt2994948", + "tt0475289", + "tt0082640", + "tt0117193", + "tt0069372", + "tt0034384", + "tt3886076", + "tt0046004", + "tt2199251", + "tt0055200", + "tt0469913", + "tt6543652", + "tt0088402", + "tt0071361", + "tt3069954", + "tt0071198", + "tt5946974", + "tt6346314", + "tt1837574", + "tt2272336", + "tt3032282", + "tt4715356", + "tt1548628", + "tt0066093", + "tt1535565", + "tt2151543", + "tt3044562", + "tt4685096", + "tt1132193", + "tt0050722", + "tt5344794", + "tt0114917", + "tt1419950", + "tt1683970", + "tt0120275", + "tt1846492", + "tt9145818", + "tt0060307", + "tt0057259", + "tt0057608", + "tt1893269", + "tt1478325", + "tt6769280", + "tt0079437", + "tt1844203", + "tt7210348", + "tt0059297", + "tt1694118", + "tt0052896", + "tt1831806", + "tt9029324", + "tt5917576", + "tt1235142", + "tt0115921", + "tt0074226", + "tt0057401", + "tt1619016", + "tt1262413", + "tt0469683", + "tt3399484", + "tt3270108", + "tt3139538", + "tt0120619", + "tt9000560", + "tt6462564", + "tt0119819", + "tt0056478", + "tt0072325", + "tt0090678", + "tt1043844", + "tt4051850", + "tt0084867", + "tt0081764", + "tt0058953", + "tt0996934", + "tt2529918", + "tt9287492", + "tt0058935", + "tt9129734", + "tt0075214", + "tt5890000", + "tt0078490", + "tt0073760", + "tt1993391", + "tt0079227", + "tt0096087", + "tt0089276", + "tt2201532", + "tt3135556", + "tt0075406", + "tt0070694", + "tt0120443", + "tt0113952", + "tt4116030", + "tt0089838", + "tt6502956", + "tt4729754", + "tt7132578", + "tt3279176", + "tt0078067", + "tt3102458", + "tt4973112", + "tt1789810", + "tt1473150", + "tt3977898", + "tt7736144", + "tt0081114", + "tt6417014", + "tt1165293", + "tt2034060", + "tt1764141", + "tt0098373", + "tt0065836", + "tt5950980", + "tt0061913", + "tt0036983", + "tt5048406", + "tt0093235", + "tt2915662", + "tt4576652", + "tt1236471", + "tt0099656", + "tt1934458", + "tt0054938", + "tt4437640", + "tt0094056", + "tt0058384", + "tt0062863", + "tt1448762", + "tt0493076", + "tt1740725", + "tt4146622", + "tt0095022", + "tt6217608", + "tt0044487", + "tt5179598", + "tt0102848", + "tt0092891", + "tt0102212", + "tt4483220", + "tt0088678", + "tt0067388", + "tt0906788", + "tt0098328", + "tt6749318", + "tt0056347", + "tt0068935", + "tt2772092", + "tt1022883", + "tt1827354", + "tt0080100", + "tt3157224", + "tt0105322", + "tt0095990", + "tt2403558", + "tt3663040", + "tt0094834", + "tt0100430", + "tt0098126", + "tt0110777", + "tt0098156", + "tt1533058", + "tt2905674", + "tt1884318", + "tt1540400", + "tt0077594", + "tt0102860", + "tt0084354", + "tt0067824", + "tt7886442", + "tt1679180", + "tt7822178", + "tt4035898", + "tt4269746", + "tt3072732", + "tt0054988", + "tt1934234", + "tt1647483", + "tt7752454", + "tt9547802", + "tt0183306", + "tt3136112", + "tt0068341", + "tt0092809", + "tt0095312", + "tt1756427", + "tt0111218", + "tt0085385", + "tt0040695", + "tt1999890", + "tt3171764", + "tt0079631", + "tt2558318", + "tt8942908", + "tt0780645", + "tt0473075", + "tt1733578", + "tt0102500", + "tt6776106", + "tt1885299", + "tt0685628", + "tt7759626", + "tt0042541", + "tt0093585", + "tt2378191", + "tt2381931", + "tt0089642", + "tt6134274", + "tt5338222", + "tt0092585", + "tt5091014", + "tt1355683", + "tt3622592", + "tt0052564", + "tt1290400", + "tt6993174", + "tt0040834", + "tt0050720", + "tt3125220", + "tt0425743", + "tt0071396", + "tt0043859", + "tt5076792", + "tt0089283", + "tt0033436", + "tt1052040", + "tt4073890", + "tt0037248", + "tt1727885", + "tt0111173", + "tt4060576", + "tt0037166", + "tt0844666", + "tt0039881", + "tt2993848", + "tt0019412", + "tt1124388", + "tt0097670", + "tt1912982", + "tt5255524", + "tt0038492", + "tt1254322", + "tt0046889", + "tt0970926", + "tt0078239", + "tt0114489", + "tt0095877", + "tt0070165", + "tt0097136", + "tt8395220", + "tt0087385", + "tt7690670", + "tt0044533", + "tt8351278", + "tt0012675", + "tt0090729", + "tt0388377", + "tt0048182", + "tt2160105", + "tt1071880", + "tt9033628", + "tt0056279", + "tt1860357", + "tt3774114", + "tt0048667", + "tt1972591", + "tt0491175", + "tt1959563", + "tt0049516", + "tt0100087", + "tt2226597", + "tt6108178", + "tt5439796", + "tt4925292", + "tt4815122", + "tt5109784", + "tt1615160", + "tt2406566", + "tt4547194", + "tt1981128", + "tt1219827", + "tt3640424", + "tt2140479", + "tt3799694", + "tt0101627", + "tt1172998", + "tt2719848", + "tt1853728", + "tt0064747", + "tt0454879", + "tt0101628", + "tt1663202", + "tt0041487", + "tt1386697", + "tt3505712", + "tt3783958", + "tt1355644", + "tt5649108", + "tt3290276", + "tt4975722", + "tt7250206", + "tt1328875", + "tt0060218", + "tt1198408", + "tt1451423", + "tt2992524", + "tt0491046", + "tt2872724", + "tt0082346", + "tt3230660", + "tt0048340", + "tt2395339", + "tt0075783", + "tt0090605", + "tt1446714", + "tt0119116", + "tt0038107", + "tt0093773", + "tt0091173", + "tt0100403", + "tt1473801", + "tt1479847", + "tt0082338", + "tt2600742", + "tt0118583", + "tt0103644", + "tt0370263", + "tt0758730", + "tt1424381", + "tt1468829", + "tt0048216", + "tt0059362", + "tt0936471", + "tt0053290", + "tt0097911", + "tt0060120", + "tt1694508", + "tt1764647", + "tt9182676", + "tt0481390", + "tt0093011", + "tt0085693", + "tt0090881", + "tt0049414", + "tt0104522", + "tt4938050", + "tt0083941", + "tt1127221", + "tt3328716", + "tt0094962", + "tt0063456", + "tt0765487", + "tt0032983", + "tt0088333", + "tt5843670", + "tt1119123", + "tt2638662", + "tt1164647", + "tt3532216", + "tt0110689", + "tt1459013", + "tt5776858", + "tt5362988", + "tt7137846", + "tt1413492", + "tt2239822", + "tt5478478", + "tt1389072", + "tt1961175", + "tt3780500", + "tt2345759", + "tt0847520", + "tt3894312", + "tt4686844", + "tt7784604", + "tt0034162", + "tt5613484", + "tt0988083", + "tt6421110", + "tt7969042", + "tt5164432", + "tt1692098", + "tt4209788", + "tt0081607", + "tt0094801", + "tt2543472", + "tt1881060", + "tt1705134", + "tt0031121", + "tt7786540", + "tt4555426", + "tt2800050", + "tt1365519", + "tt3195742", + "tt1840309", + "tt0070072", + "tt2908446", + "tt6499752", + "tt2704998", + "tt1951264", + "tt3410834", + "tt3263904", + "tt2854926", + "tt5834262", + "tt1951266", + "tt1951265", + "tt1392170", + "tt3411444", + "tt2709768", + "tt1343097", + "tt0803096", + "tt2802144", + "tt0090342", + "tt1216487", + "tt1772341", + "tt2094766", + "tt0089177", + "tt2980516", + "tt2404435", + "tt1132620", + "tt1568346", + "tt4649466", + "tt5052474", + "tt0085980", + "tt3521126", + "tt4500922", + "tt0076809", + "tt3731562", + "tt3397884", + "tt2119532", + "tt5726616", + "tt2740710", + "tt0069792", + "tt0039757", + "tt3602128", + "tt2051894", + "tt0064952", + "tt0115832", + "tt0093029", + "tt1828959", + "tt0082818", + "tt2307002", + "tt0048064", + "tt5686132", + "tt1104126", + "tt0052293", + "tt0083629", + "tt3153582", + "tt0120755", + "tt1545315", + "tt1384927", + "tt1229238", + "tt3076658", + "tt0117060", + "tt1172060", + "tt4630444", + "tt0107290", + "tt0163025", + "tt0119567", + "tt0317919", + "tt4566574", + "tt5758778", + "tt0369610", + "tt3766354", + "tt0455944", + "tt2380307", + "tt2381249", + "tt0038455", + "tt1825683", + "tt5164214", + "tt3152098", + "tt1686018", + "tt0023049", + "tt1510686", + "tt4912910", + "tt1781840", + "tt3183660", + "tt3018070", + "tt0107978", + "tt0070622", + "tt0066450", + "tt1136684", + "tt0258463", + "tt4881806", + "tt0372183", + "tt1194173", + "tt1071875", + "tt0100502", + "tt1663662", + "tt2557478", + "tt0259324", + "tt0967945", + "tt0440963", + "tt0408961", + "tt0475298", + "tt2378453", + "tt0084445", + "tt2290739", + "tt0063557", + "tt1714866", + "tt8851036", + "tt9083646", + "tt0166370", + "tt0376994", + "tt0339334", + "tt8805150", + "tt1709652", + "tt0092133", + "tt0020691", + "tt1327788", + "tt0047795", + "tt3499458", + "tt0181852", + "tt0029808", + "tt1877832", + "tt1270798", + "tt0290334", + "tt0120903", + "tt0037024", + "tt0045094", + "tt0458525", + "tt6615240", + "tt0088247", + "tt0450314", + "tt0031334", + "tt0107606", + "tt0454839", + "tt5709188", + "tt0103064", + "tt1340138", + "tt3680410", + "tt0978764", + "tt0187738", + "tt0120611", + "tt0359013", + "tt0330793", + "tt0401792", + "tt0033028", + "tt0458481", + "tt0800080", + "tt0346156", + "tt0086203", + "tt0097001", + "tt0077235", + "tt0067633", + "tt1241329", + "tt1054478", + "tt1981140", + "tt0100201", + "tt0075147", + "tt0463027", + "tt0029725", + "tt0045205", + "tt0095330", + "tt0341376", + "tt0044905", + "tt0023303", + "tt0113808", + "tt0044744", + "tt0029929", + "tt0070928", + "tt0056016", + "tt3315342", + "tt3333870", + "tt3491962", + "tt5095030", + "tt0040427", + "tt0028980", + "tt0031252", + "tt2341664", + "tt1396484", + "tt0102522", + "tt2544734", + "tt3501632", + "tt0089006", + "tt0068458", + "tt3896198", + "tt1074214", + "tt3627704", + "tt0039776", + "tt1431191", + "tt0320661", + "tt0332452", + "tt0407304", + "tt0187393", + "tt0325710", + "tt0095738", + "tt0021814", + "tt0120201", + "tt3393786", + "tt0816711", + "tt1276104", + "tt0848228", + "tt4154756", + "tt0790724", + "tt1371111", + "tt1785669", + "tt2395427", + "tt0101273", + "tt1483013", + "tt0171410", + "tt0037793", + "tt2713180", + "tt1535108", + "tt0215750", + "tt0369339", + "tt1253863", + "tt0061787", + "tt0343818", + "tt0075860", + "tt0416449", + "tt8367080", + "tt5039088", + "tt0040558", + "tt6708116", + "tt0338097", + "tt0031322", + "tt0090585", + "tt0044789", + "tt0093608", + "tt0497030", + "tt0090644", + "tt0079501", + "tt0451279", + "tt2231461", + "tt3890160", + "tt5580036", + "tt0217869", + "tt5580390", + "tt4972582", + "tt9168416", + "tt0082694", + "tt5027774", + "tt0974015", + "tt1375666", + "tt2283362", + "tt1509787", + "tt5013056", + "tt0089530", + "tt1677720", + "tt0993846", + "tt0046899", + "tt1706620", + "tt1827579", + "tt0095296", + "tt8862524", + "tt1884495", + "tt3271700", + "tt3659388", + "tt1935089", + "tt0059410", + "tt1542482", + "tt0114746", + "tt1454468", + "tt0470752", + "tt2507280", + "tt1136608", + "tt1392190", + "tt2081194", + "tt0816692", + "tt0083658", + "tt3694790", + "tt1477859", + "tt4264426", + "tt0082948", + "tt2798920", + "tt2543164", + "tt2782844", + "tt0127919", + "tt0067921", + "tt1856101", + "tt0876233", + "tt3661298", + "tt0901481", + "tt0075359", + "tt1191971", + "tt0073349", + "tt0092842", + "tt1637976", + "tt0114788", + "tt3541080", + "tt0088044", + "tt1730687", + "tt9413164", + "tt5862902", + "tt2184287", + "tt0100666", + "tt0301924", + "tt0105481", + "tt0092117", + "tt0108592", + "tt0043118", + "tt2284766", + "tt2911674", + "tt0817228", + "tt0067991", + "tt0056368", + "tt0874271", + "tt0050095", + "tt2572632", + "tt0092669", + "tt0074540", + "tt9202096", + "tt1120945", + "tt0354595", + "tt8420670", + "tt5434870", + "tt0026781", + "tt0030944", + "tt9168384", + "tt9217716", + "tt0068264", + "tt0027414", + "tt0110857", + "tt0059956", + "tt0089822", + "tt0110622", + "tt0102510", + "tt1886644", + "tt1285010", + "tt0087928", + "tt0093756", + "tt1829744", + "tt9021374", + "tt1235807", + "tt0446722", + "tt0098105", + "tt0095882", + "tt0091777", + "tt4911996", + "tt0095705", + "tt0073011", + "tt0126029", + "tt0298148", + "tt0268380", + "tt0438097", + "tt1080016", + "tt1667889", + "tt5951164", + "tt0892791", + "tt0413267", + "tt0092860", + "tt0084745", + "tt4048668", + "tt0099128", + "tt1270114", + "tt1991031", + "tt5156910", + "tt0092085", + "tt0109906", + "tt1220706", + "tt0105483", + "tt7040874", + "tt7521990", + "tt2557276", + "tt0084737", + "tt0061398", + "tt1989485", + "tt1673645", + "tt9315426", + "tt3727824", + "tt0078346", + "tt0081573", + "tt0092007", + "tt0102975", + "tt3923388", + "tt0074593", + "tt3904278", + "tt0111280", + "tt0086946", + "tt0348150", + "tt0098382", + "tt0086393", + "tt0084827", + "tt0094074", + "tt0079945", + "tt0088170", + "tt0120844", + "tt0253754", + "tt0084726", + "tt2315596", + "tt0340110", + "tt0796366", + "tt1661220", + "tt0812352", + "tt2364842", + "tt0117731", + "tt8561672", + "tt1408101", + "tt0099578", + "tt7690762", + "tt0082935", + "tt6069668", + "tt1699180", + "tt1819603", + "tt0332344", + "tt4446472", + "tt3278224", + "tt4795546", + "tt4895668", + "tt0839938", + "tt0385705", + "tt2660888", + "tt1821427", + "tt0082350", + "tt3014284", + "tt0105839", + "tt0770828", + "tt0066927", + "tt2226519", + "tt1680138", + "tt0054038", + "tt0477347", + "tt4550420", + "tt0064928", + "tt2758904", + "tt1078912", + "tt2692250", + "tt4116284", + "tt2881698", + "tt1490017", + "tt2082415", + "tt0108339", + "tt0076227", + "tt1788383", + "tt4158624", + "tt0092156", + "tt1376195", + "tt4859032", + "tt0103285", + "tt0091604", + "tt0076915", + "tt0098193", + "tt3208026", + "tt0119723", + "tt0100797", + "tt0329737", + "tt3922816", + "tt0050972", + "tt0060200", + "tt0115530", + "tt3411432", + "tt0316654", + "tt0232500", + "tt1872181", + "tt0413300", + "tt9033640", + "tt0463985", + "tt1485749", + "tt0322259", + "tt0104418", + "tt6182908", + "tt0948470", + "tt1930463", + "tt0056331", + "tt3244992", + "tt4630562", + "tt0084408", + "tt2250912", + "tt0145487", + "tt0102690", + "tt0116033", + "tt0790627", + "tt1399103", + "tt0318374", + "tt0120912", + "tt0800226", + "tt4119278", + "tt3317208", + "tt2109248", + "tt0119654", + "tt0418279", + "tt0378194", + "tt3371366", + "tt1055369", + "tt1480285", + "tt1409024", + "tt0266697", + "tt0134847", + "tt0296572", + "tt1411250", + "tt0101625", + "tt0856778", + "tt0068909", + "tt1489167", + "tt0064916", + "tt1139319", + "tt0075774", + "tt7586752", + "tt3530978", + "tt2448584", + "tt0089629", + "tt0018394", + "tt2991296", + "tt0107594", + "tt6257174", + "tt0097458", + "tt0016373", + "tt1300159", + "tt0446463", + "tt0042210", + "tt2885628", + "tt0172156", + "tt1659216", + "tt5314190", + "tt0065163", + "tt0066745", + "tt0071562", + "tt0940580", + "tt0795361", + "tt0112442", + "tt8632862", + "tt0099674", + "tt1032817", + "tt4238858", + "tt2198956", + "tt5989220", + "tt0107863", + "tt0068646", + "tt0067672", + "tt0077914", + "tt1048159", + "tt2173024", + "tt0491162", + "tt0098090", + "tt9424594", + "tt2573858", + "tt1937339", + "tt1718158", + "tt0093828", + "tt0080130", + "tt5702446", + "tt2226495", + "tt1753496", + "tt1541995", + "tt0100369", + "tt5776208", + "tt3482378", + "tt0280490", + "tt9059806", + "tt1174954", + "tt5834588", + "tt0082971", + "tt0097576", + "tt0031345", + "tt0109443", + "tt1065106", + "tt0087469", + "tt0144142", + "tt1986857", + "tt0367882", + "tt0025922", + "tt0024773", + "tt0025029", + "tt0058743", + "tt0952640", + "tt0025842", + "tt0067570", + "tt0027031", + "tt0068370", + "tt0024162", + "tt0027397", + "tt0026102", + "tt0026111", + "tt0024534", + "tt0027782", + "tt0026037", + "tt0025071", + "tt0028119", + "tt0027448", + "tt0024461", + "tt0064002", + "tt0094293", + "tt0059377", + "tt0079268", + "tt0892109", + "tt0074573", + "tt0072824", + "tt0076342", + "tt0070444", + "tt0071096", + "tt0088242", + "tt1753968", + "tt1712578", + "tt0088763", + "tt0069006", + "tt0091981", + "tt9225108", + "tt0083000", + "tt9344200", + "tt0328031", + "tt1790809", + "tt0099088", + "tt0238414", + "tt0424279", + "tt0107920", + "tt8273258", + "tt1988781", + "tt2071491", + "tt0096874", + "tt0064107", + "tt5302848", + "tt6608138", + "tt0133093", + "tt3836512", + "tt5989218", + "tt5829040", + "tt0234215", + "tt0069289", + "tt5359422", + "tt0242653", + "tt0903624", + "tt2527336", + "tt3311988", + "tt1170358", + "tt0081186", + "tt3778644", + "tt1693872", + "tt8108198", + "tt2310332", + "tt6280608", + "tt6892218", + "tt6390580", + "tt7785090", + "tt8164806", + "tt1013542", + "tt0039589", + "tt4733536", + "tt2565938", + "tt0067952", + "tt3766424", + "tt0040064", + "tt0071824", + "tt0038908", + "tt1220220", + "tt0082332", + "tt0101988", + "tt8830236", + "tt8497680", + "tt2340678", + "tt2616880", + "tt1183733", + "tt9028856", + "tt3608646", + "tt5937770", + "tt0115885", + "tt2321502", + "tt0061405", + "tt0045152", + "tt0051433", + "tt0051786", + "tt0457939", + "tt0809931", + "tt0790663", + "tt2396436", + "tt4254584", + "tt0087805", + "tt9028866", + "tt0120663", + "tt1424003", + "tt1027820", + "tt1615075", + "tt2421662", + "tt0374248", + "tt1781812", + "tt5973626", + "tt4163668", + "tt0138487", + "tt0069121", + "tt0049471", + "tt2967008", + "tt1790869", + "tt1296869", + "tt0116827", + "tt1486670", + "tt7945822", + "tt6228942", + "tt0086192", + "tt3560148", + "tt5815492", + "tt1675161", + "tt0133745", + "tt3824386", + "tt0060214", + "tt3755844", + "tt0027767", + "tt3116154", + "tt8942494", + "tt0165819", + "tt3138558", + "tt0031209", + "tt0036206", + "tt0185578", + "tt0026497", + "tt0033146", + "tt0220558", + "tt0228406", + "tt0031910", + "tt0242535", + "tt1038685", + "tt0243319", + "tt0061791", + "tt0452660", + "tt0076191", + "tt9028872", + "tt0108052", + "tt1562899", + "tt6042392", + "tt2328549", + "tt1259998", + "tt0075194", + "tt0038119", + "tt0082353", + "tt0054476", + "tt1124040", + "tt2141773", + "tt3829266", + "tt0215090", + "tt2119543", + "tt0112438", + "tt0049875", + "tt0075989", + "tt2996648", + "tt4207196", + "tt3478232", + "tt2055709", + "tt2751310", + "tt1135500", + "tt7981492", + "tt1487931", + "tt9179182", + "tt1117646", + "tt9101480", + "tt0486321", + "tt0091575", + "tt9058902", + "tt2041488", + "tt5456798", + "tt0102849", + "tt0054152", + "tt7905466", + "tt3405434", + "tt6859762", + "tt3700804", + "tt2091325", + "tt2268419", + "tt1858481", + "tt3300572", + "tt0097910", + "tt0059125", + "tt1136683", + "tt0022397", + "tt1219836", + "tt1958043", + "tt0036431", + "tt7999950", + "tt0094033", + "tt1376213", + "tt3148834", + "tt0044672", + "tt0114108", + "tt7605066", + "tt0036696", + "tt0094669", + "tt0025318", + "tt0036230", + "tt0023507", + "tt0400771", + "tt0042825", + "tt0995845", + "tt0021840", + "tt0115610", + "tt7833914", + "tt0044320", + "tt1754109", + "tt2404437", + "tt0074937", + "tt0077272", + "tt0095037", + "tt9102152", + "tt3719896", + "tt7872704", + "tt0063592", + "tt0160620", + "tt0036241", + "tt0050839", + "tt4743226", + "tt2814362", + "tt0102603", + "tt0319829", + "tt1323605", + "tt6852872", + "tt6997426", + "tt4074928", + "tt1368858", + "tt0093894", + "tt6205872", + "tt4971408", + "tt0048215", + "tt1014801", + "tt1265998", + "tt0077247", + "tt6337994", + "tt0465940", + "tt2781832", + "tt1906329", + "tt0369918", + "tt6040662", + "tt0056255", + "tt0065593", + "tt0447854", + "tt0054777", + "tt1714833", + "tt0416243", + "tt0053559", + "tt1844770", + "tt1651323", + "tt9059048", + "tt2663812", + "tt0462219", + "tt0149723", + "tt2093977", + "tt0076210", + "tt0102411", + "tt0970462", + "tt3397918", + "tt0076704", + "tt0311110", + "tt0080057", + "tt0072705", + "tt0240219", + "tt0371823", + "tt0257778", + "tt0050084", + "tt1068953", + "tt0349889", + "tt1160317", + "tt1060255", + "tt0095532", + "tt1992258", + "tt0085678", + "tt6592124", + "tt1014806", + "tt1094198", + "tt0477072", + "tt2617456", + "tt0082226", + "tt8382192", + "tt0330691", + "tt0059221", + "tt0046683", + "tt2352802", + "tt0910865", + "tt3128900", + "tt0425253", + "tt4560436", + "tt0307920", + "tt0903135", + "tt1340161", + "tt2394029", + "tt0419724", + "tt0083015", + "tt2043993", + "tt8990334", + "tt0220099", + "tt0097243", + "tt0117057", + "tt8359636", + "tt0035320", + "tt1586261", + "tt0462477", + "tt0063060", + "tt0055152", + "tt1772271", + "tt6595908", + "tt0096324", + "tt0291082", + "tt2111392", + "tt0075704", + "tt7339792", + "tt0958860", + "tt2521436", + "tt3642508", + "tt0381601", + "tt0107212", + "tt1673734", + "tt0783515", + "tt5437928", + "tt0114070", + "tt9033308", + "tt5160938", + "tt0050622", + "tt0996967", + "tt6905442", + "tt5691670", + "tt6850820", + "tt5843780", + "tt2904626", + "tt1711018", + "tt0076535", + "tt4106376", + "tt0111194", + "tt1135095", + "tt1935065", + "tt1799508", + "tt2577172", + "tt1107816", + "tt0119114", + "tt0130236", + "tt1216515", + "tt4191702", + "tt3110960", + "tt0106579", + "tt0071233", + "tt0080771", + "tt0096046", + "tt9028942", + "tt1414361", + "tt1418712", + "tt9067272", + "tt0458438", + "tt2241403", + "tt0070030", + "tt7222304", + "tt0097579", + "tt0086998", + "tt0059821", + "tt1959409", + "tt3791496", + "tt0073260", + "tt7701808", + "tt0071508", + "tt0095489", + "tt0061810", + "tt0049030", + "tt0095215", + "tt0452692", + "tt2306786", + "tt1682246", + "tt4381236", + "tt2767266", + "tt1876547", + "tt0112637", + "tt7460806", + "tt1663187", + "tt2708254", + "tt0051758", + "tt1230213", + "tt1945044", + "tt0092576", + "tt1576440", + "tt1639826", + "tt0028070", + "tt0029747", + "tt8765496", + "tt5814060", + "tt2904608", + "tt1458915", + "tt0096054", + "tt0023613", + "tt0023858", + "tt0109219", + "tt0020643", + "tt0024601", + "tt0057128", + "tt0119095", + "tt4649416", + "tt0022251", + "tt0114609", + "tt4662420", + "tt0029923", + "tt0091472", + "tt0403692", + "tt1568341", + "tt0104779", + "tt1214983", + "tt1129428", + "tt2396333", + "tt0079489", + "tt1707380", + "tt0783608", + "tt0243017", + "tt1347521", + "tt1087578", + "tt0076221", + "tt0108149", + "tt0013427", + "tt0110638", + "tt1827487", + "tt0461795", + "tt0094964", + "tt1029134", + "tt0102800", + "tt2191612", + "tt0116654", + "tt0115658", + "tt3659786", + "tt0071454", + "tt0097987", + "tt0073298", + "tt0060597", + "tt0138414", + "tt0118623", + "tt0173498", + "tt3499424", + "tt2387408", + "tt1587807", + "tt2027136", + "tt1085507", + "tt3923662", + "tt1773753", + "tt0088850", + "tt1615091", + "tt0098068", + "tt2555426", + "tt4281724", + "tt0058530", + "tt0051978", + "tt0057225", + "tt0091055", + "tt1488181", + "tt0193560", + "tt0097883", + "tt1629242", + "tt4061010", + "tt0340331", + "tt1563719", + "tt0046198", + "tt6603812", + "tt2130270", + "tt0086999", + "tt8092252", + "tt0104053", + "tt6302160", + "tt5979872", + "tt0083591", + "tt0974583", + "tt0083564", + "tt0109348", + "tt3399896", + "tt0283503", + "tt0448564", + "tt1830713", + "tt0395571", + "tt0084945", + "tt0846308", + "tt1176161", + "tt0197467", + "tt1465505", + "tt0383353", + "tt1270286", + "tt0085863", + "tt6921076", + "tt7057496", + "tt0061439", + "tt3733678", + "tt0052646", + "tt0092105", + "tt0422783", + "tt2474972", + "tt6747420", + "tt1781781", + "tt1865346", + "tt1568337", + "tt4034452", + "tt0100469", + "tt0094961", + "tt0055207", + "tt1029241", + "tt0077248", + "tt0760187", + "tt1650535", + "tt2845578", + "tt0089981", + "tt0974554", + "tt0075462", + "tt0857295", + "tt0091110", + "tt2824852", + "tt1711458", + "tt1658797", + "tt8088944", + "tt1764625", + "tt1879012", + "tt0089385", + "tt0078350", + "tt6859352", + "tt0643110", + "tt1001562", + "tt1512240", + "tt1738387", + "tt1233192", + "tt0076644", + "tt2140671", + "tt1753422", + "tt1121786", + "tt6690310", + "tt0091178", + "tt0062185", + "tt0484831", + "tt0397853", + "tt1147684", + "tt3273644", + "tt0489244", + "tt3107070", + "tt0643102", + "tt1270291", + "tt0643107", + "tt0084096", + "tt2215267", + "tt2948078", + "tt0433963", + "tt2295564", + "tt1403862", + "tt0094135", + "tt5307272", + "tt1018723", + "tt4771896", + "tt7014382", + "tt0102984", + "tt0087197", + "tt0080180", + "tt6680312", + "tt1582271", + "tt2229511", + "tt1783285", + "tt0090366", + "tt1244658", + "tt4265508", + "tt5457454", + "tt1100053", + "tt1003034", + "tt2463512", + "tt0053363", + "tt7188948", + "tt0446719", + "tt2043757", + "tt0094357", + "tt4547120", + "tt0070531", + "tt4155144", + "tt9033636", + "tt8655708", + "tt0068649", + "tt3514532", + "tt1446072", + "tt0289944", + "tt1880399", + "tt2224004", + "tt0252444", + "tt0109306", + "tt0100211", + "tt0086423", + "tt0085475", + "tt0791303", + "tt0829176", + "tt2097331", + "tt0095177", + "tt3339674", + "tt0065491", + "tt1258137", + "tt0896529", + "tt1142798", + "tt3114132", + "tt3576728", + "tt0060782", + "tt1817676", + "tt1235837", + "tt0071866", + "tt7365604", + "tt0287535", + "tt0094048", + "tt2011276", + "tt0419358", + "tt0062430", + "tt0029322", + "tt2165859", + "tt2392326", + "tt0116671", + "tt0082146", + "tt2962726", + "tt1510906", + "tt2395417", + "tt4176928", + "tt6848114", + "tt0088001", + "tt1694021", + "tt0434215", + "tt6725014", + "tt0074292", + "tt0386588", + "tt0082801", + "tt0051365", + "tt1183911", + "tt1268809", + "tt6470762", + "tt7880466", + "tt0110357", + "tt0985058", + "tt0106873", + "tt0110667", + "tt0060635", + "tt3254930", + "tt5017060", + "tt3330764", + "tt2544472", + "tt1086216", + "tt0914837", + "tt5325452", + "tt0046345", + "tt0060827", + "tt8564902", + "tt2395385", + "tt3703908", + "tt0041827", + "tt6686358", + "tt5275884", + "tt0080421", + "tt0075931", + "tt0075809", + "tt0977214", + "tt9053906", + "tt2386278", + "tt0758781", + "tt0056891", + "tt0031790", + "tt0093072", + "tt3451984", + "tt1661099", + "tt0077215", + "tt5240090", + "tt3525168", + "tt0050439", + "tt0101701", + "tt1667355", + "tt5740866", + "tt7250466", + "tt0053418", + "tt0091276", + "tt1838520", + "tt0052870", + "tt7784788", + "tt0118692", + "tt0104299", + "tt0099091", + "tt4552524", + "tt1837636", + "tt3978720", + "tt0098453", + "tt1697064", + "tt3671542", + "tt0893532", + "tt0076683", + "tt7830888", + "tt3688406", + "tt0417395", + "tt1169809", + "tt0091757", + "tt0119906", + "tt2093270", + "tt0058085", + "tt2272350", + "tt0108442", + "tt0870211", + "tt7736104", + "tt2483208", + "tt0060472", + "tt6987770", + "tt1381767", + "tt0466731", + "tt3533916", + "tt6591652", + "tt2978462", + "tt1071812", + "tt2314824", + "tt2141751", + "tt0948547", + "tt5012394", + "tt2025667", + "tt3816458", + "tt6444140", + "tt7117354", + "tt1986994", + "tt0100973", + "tt7649320", + "tt0066826", + "tt4129870", + "tt2279922", + "tt5481404", + "tt7160176", + "tt5940342", + "tt0079672", + "tt4651410", + "tt3774802", + "tt0102900", + "tt0064615", + "tt0048491", + "tt7473032", + "tt3208936", + "tt8586880", + "tt1792647", + "tt0119484", + "tt0103295", + "tt1555093", + "tt6190348", + "tt0059711", + "tt0063056", + "tt5259598", + "tt6622902", + "tt0090849", + "tt0062909", + "tt0190861", + "tt7393746", + "tt1132130", + "tt0059127", + "tt0064110", + "tt9058820", + "tt0068309", + "tt0938305", + "tt1507563", + "tt1034325", + "tt0063991", + "tt0073896", + "tt0426627", + "tt0064117", + "tt8443810", + "tt0432289", + "tt0105655", + "tt0065073", + "tt0086058", + "tt2088893", + "tt5433884", + "tt0082096", + "tt0082951", + "tt2182972", + "tt1588170", + "tt0768222", + "tt8235660", + "tt1436045", + "tt0363163", + "tt0075132", + "tt4258698", + "tt0090738", + "tt0470000", + "tt0066184", + "tt1133993", + "tt2933474", + "tt0038348", + "tt0110916", + "tt0120610", + "tt4961380", + "tt0047167", + "tt0063759", + "tt3280916", + "tt0063611", + "tt0043048", + "tt0095927", + "tt0094799", + "tt0048641", + "tt0053772", + "tt0044811", + "tt4083572", + "tt7220696", + "tt0073822", + "tt0044060", + "tt7599050", + "tt1645089", + "tt0164052", + "tt0064793", + "tt2330322", + "tt9028802", + "tt8805246", + "tt0087193", + "tt0076686", + "tt8694374", + "tt0076299", + "tt9033632", + "tt0066049", + "tt8734822", + "tt1504467", + "tt0098143", + "tt0050280", + "tt2170427", + "tt0085542", + "tt7543904", + "tt0092746", + "tt1726661", + "tt6728096", + "tt9178222", + "tt0071519", + "tt0804552", + "tt0107818", + "tt0100639", + "tt0099611", + "tt1560970", + "tt8638638", + "tt1418754", + "tt0077889", + "tt0120757", + "tt0102460", + "tt1707392", + "tt0047647", + "tt0107004", + "tt0314676", + "tt0458455", + "tt0093996", + "tt0065738", + "tt5946128", + "tt0097889", + "tt1138489", + "tt0984200", + "tt0067541", + "tt0280707", + "tt3878542", + "tt2885364", + "tt1220628", + "tt0116015", + "tt7286916", + "tt0067334", + "tt0158493", + "tt0071282", + "tt0075261", + "tt1976989", + "tt2554270", + "tt2972362", + "tt0082340", + "tt0408268", + "tt3104988", + "tt1786668", + "tt0070284", + "tt0097967", + "tt2659414", + "tt2106670", + "tt0139151", + "tt9033646", + "tt2224455", + "tt3300980", + "tt0090837", + "tt0109369", + "tt0106500", + "tt0040229", + "tt1083845", + "tt1929308", + "tt0098057", + "tt1977895", + "tt0091772", + "tt2049543", + "tt0052905", + "tt0074157", + "tt7668870", + "tt0086863", + "tt0098519", + "tt2390253", + "tt8031554", + "tt2132405", + "tt0294929", + "tt0052017", + "tt2168910", + "tt1319704", + "tt0080923", + "tt3289712", + "tt4419364", + "tt0107529", + "tt0048272", + "tt3451230", + "tt0103747", + "tt0082242", + "tt0243255", + "tt1541874", + "tt0804507", + "tt2357377", + "tt1718903", + "tt0029087", + "tt1104083", + "tt4144190", + "tt0032699", + "tt6017942", + "tt2343617", + "tt2458106", + "tt0299478", + "tt0116684", + "tt0109552", + "tt4375268", + "tt7681824", + "tt6915100", + "tt5153288", + "tt8755316", + "tt1703048", + "tt1817771", + "tt0084814", + "tt4982870", + "tt0384814", + "tt2315152", + "tt1436559", + "tt0050396", + "tt1020543", + "tt0058124", + "tt6315800", + "tt6556890", + "tt1294969", + "tt9372544", + "tt0435653", + "tt0080397", + "tt0143010", + "tt0416499", + "tt5931802", + "tt0118744", + "tt0117177", + "tt3008014", + "tt0085346", + "tt0030589", + "tt0083987", + "tt6751670", + "tt0123328", + "tt0158489", + "tt0082031", + "tt0030786", + "tt0028325", + "tt0080913", + "tt0094678", + "tt0804505", + "tt0051362", + "tt7535288", + "tt0102303", + "tt6760562", + "tt3908142", + "tt2351310", + "tt0044426", + "tt0088393", + "tt0028389", + "tt2969458", + "tt0031398", + "tt0075148", + "tt7468056", + "tt0105636", + "tt0090065", + "tt0053291", + "tt2962876", + "tt0119324", + "tt7545566", + "tt0117803", + "tt0079700", + "tt0088322", + "tt4065842", + "tt8544568", + "tt3233418", + "tt0119642", + "tt5934564", + "tt2576522", + "tt0104926", + "tt5847286", + "tt0113269", + "tt4935372", + "tt0061613", + "tt3477554", + "tt0116005", + "tt0104530", + "tt0116322", + "tt0054279", + "tt2290840", + "tt0063694", + "tt0099768", + "tt9033634", + "tt0072813", + "tt9103602", + "tt2625030", + "tt1832381", + "tt4591840", + "tt8022676", + "tt0092925", + "tt0096426", + "tt1632547", + "tt0254455", + "tt2828840", + "tt0098967", + "tt0095765", + "tt0097239", + "tt0140581", + "tt3411034", + "tt1031254", + "tt0385004", + "tt0367188", + "tt5990474", + "tt0048937", + "tt0065492", + "tt0100442", + "tt0033582", + "tt0104321", + "tt4578910", + "tt0109424", + "tt2948790", + "tt3551840", + "tt2526514", + "tt0113613", + "tt0058430", + "tt1278340", + "tt0041374", + "tt0455805", + "tt0030192", + "tt0044541", + "tt0119250", + "tt2944198", + "tt0066830", + "tt0260991", + "tt0478024", + "tt0462395", + "tt0445935", + "tt1308728", + "tt0365885", + "tt0120520", + "tt0992911", + "tt0094035", + "tt1038043", + "tt6145612", + "tt0368658", + "tt0819787", + "tt6014166", + "tt0400525", + "tt0085125", + "tt0112702", + "tt0086450", + "tt1267379", + "tt1231287", + "tt0457275", + "tt0105459", + "tt0068786", + "tt4324302", + "tt0075925", + "tt0428251", + "tt1188113", + "tt1059925", + "tt0080513", + "tt2429074", + "tt2215285", + "tt0082806", + "tt2483260", + "tt0290212", + "tt0110647", + "tt1756489", + "tt4930228", + "tt6890836", + "tt0085154", + "tt0490076", + "tt0100029", + "tt0117364", + "tt0097390", + "tt7561086", + "tt7133648", + "tt1220214", + "tt1430626", + "tt0087759", + "tt6957966", + "tt3120408", + "tt0093624", + "tt6224502", + "tt0034303", + "tt3956336", + "tt1185266", + "tt1216516", + "tt1390535", + "tt0086176", + "tt0438859", + "tt0106761", + "tt1932745", + "tt1535612", + "tt1071358", + "tt0088024", + "tt0195968", + "tt1777034", + "tt0455612", + "tt0081506", + "tt1578882", + "tt1258157", + "tt1247662", + "tt2234429", + "tt0070698", + "tt1989511", + "tt0089153", + "tt0086973", + "tt0119272", + "tt0076929", + "tt0066301", + "tt0094138", + "tt0108526", + "tt6085174", + "tt1045655", + "tt0806027", + "tt0974014", + "tt1097013", + "tt3216348", + "tt0119214", + "tt0497323", + "tt2032572", + "tt0093565", + "tt3774790", + "tt4009278", + "tt0081974", + "tt0102351", + "tt1016075", + "tt4244998", + "tt1514041", + "tt0472071", + "tt0395251", + "tt0482603", + "tt2282016", + "tt2903900", + "tt1845806", + "tt1133991", + "tt1981107", + "tt7476494", + "tt0497972", + "tt0246464", + "tt0050192", + "tt7668724", + "tt1097643", + "tt4779682", + "tt1452628", + "tt0275230", + "tt0083630", + "tt4461960", + "tt3387648", + "tt0865559", + "tt0489282", + "tt0295289", + "tt3552620", + "tt0960890", + "tt0492650", + "tt0780607", + "tt0211465", + "tt5761646", + "tt2039345", + "tt1427298", + "tt1175506", + "tt0086617", + "tt2773246", + "tt0409345", + "tt4193394", + "tt1161418", + "tt1646876", + "tt0081777", + "tt0775552", + "tt0763840", + "tt0094739", + "tt2403029", + "tt0061809", + "tt0070294", + "tt0902290", + "tt1142800", + "tt5690360", + "tt2106361", + "tt0892767", + "tt0961728", + "tt1046997", + "tt0095740", + "tt0084809", + "tt0099512", + "tt0053925", + "tt0893402", + "tt1483025", + "tt0092974", + "tt0156812", + "tt0090568", + "tt0783532", + "tt0466856", + "tt4019560", + "tt7057306", + "tt0780534", + "tt0111481", + "tt0274711", + "tt0112750", + "tt0111001", + "tt0389328", + "tt0054850", + "tt1757746", + "tt0829188", + "tt0054462", + "tt7068942", + "tt1407084", + "tt2494376", + "tt7969140", + "tt0144168", + "tt0112483", + "tt1581835", + "tt0285861", + "tt0455362", + "tt0093135", + "tt0106393", + "tt0462229", + "tt0060862", + "tt0080310", + "tt0092534", + "tt0196857", + "tt0105217", + "tt1634136", + "tt0452643", + "tt3181776", + "tt0072448", + "tt1331307", + "tt0309820", + "tt0338512", + "tt0130370", + "tt0066141", + "tt0243278", + "tt0337656", + "tt0089421", + "tt0110137", + "tt0906108", + "tt0087231", + "tt0213149", + "tt0099762", + "tt0235686", + "tt5607096", + "tt6640390", + "tt9243038", + "tt1146438", + "tt0086984", + "tt2667380", + "tt6193454", + "tt0054847", + "tt0471030", + "tt6013156", + "tt0046344", + "tt0418832", + "tt0046374", + "tt0096913", + "tt0038213", + "tt0088708", + "tt0028167", + "tt0038338", + "tt0479647", + "tt0031020", + "tt0412915", + "tt0132451", + "tt0092605", + "tt0092548", + "tt0098622", + "tt0101326", + "tt2474976", + "tt0250934", + "tt1640711", + "tt1391137", + "tt2124787", + "tt0475937", + "tt0111419", + "tt0830681", + "tt0096804", + "tt0089695", + "tt0238552", + "tt6027344", + "tt0400426", + "tt0120741", + "tt3705412", + "tt0060934", + "tt0059742", + "tt1836944", + "tt0106627", + "tt0068421", + "tt0096073", + "tt0964185", + "tt1604171", + "tt0283632", + "tt0110907", + "tt3003996", + "tt0455596", + "tt0098320", + "tt3784652", + "tt1841642", + "tt3391782", + "tt0157171", + "tt0762138", + "tt1609479", + "tt0076953", + "tt0080342", + "tt0057514", + "tt0055308", + "tt0099108", + "tt1482167", + "tt5609734", + "tt0061720", + "tt0082625", + "tt0193431", + "tt2082152", + "tt0473188", + "tt0090583", + "tt0297162", + "tt2172935", + "tt2960930", + "tt0206917", + "tt3327624", + "tt4198186", + "tt0047522", + "tt3043594", + "tt1141261", + "tt0117826", + "tt0103907", + "tt0094860", + "tt0109360", + "tt0048140", + "tt0108517", + "tt0074256", + "tt9233904", + "tt4934990", + "tt0072196", + "tt6566624", + "tt0071186", + "tt0363473", + "tt0083944", + "tt3565668", + "tt0306474", + "tt6021960", + "tt3135424", + "tt0105242", + "tt0462244", + "tt0094383", + "tt0107953", + "tt0906665", + "tt2558556", + "tt3619070", + "tt0110678", + "tt1087853", + "tt0106450", + "tt2268458", + "tt0089880", + "tt0050539", + "tt0105414", + "tt0111345", + "tt1073510", + "tt7349662", + "tt5692390", + "tt0095956", + "tt0103773", + "tt5053508", + "tt0092112", + "tt0103805", + "tt0111143", + "tt0069019", + "tt0102216", + "tt0031983", + "tt0074434", + "tt0039370", + "tt3083008", + "tt2226440", + "tt0040802", + "tt0027630", + "tt2319781", + "tt0037055", + "tt0033098", + "tt1737090", + "tt2244743", + "tt5667696", + "tt1927012", + "tt0139421", + "tt0120860", + "tt0466893", + "tt0780608", + "tt2386404", + "tt0106452", + "tt2535470", + "tt0120695", + "tt0100485", + "tt0093777", + "tt0907678", + "tt0082817", + "tt0386741", + "tt1457765", + "tt0389957", + "tt3137630", + "tt0095655", + "tt0095897", + "tt0095800", + "tt0204175", + "tt0413015", + "tt0059106", + "tt6333070", + "tt0118571", + "tt2345567", + "tt0088194", + "tt1197624", + "tt0064541", + "tt1821641", + "tt2784512", + "tt2965412", + "tt0045347", + "tt1194417", + "tt8579840", + "tt0099385", + "tt1067106", + "tt1018785", + "tt1610996", + "tt0166175", + "tt0049513", + "tt6046314", + "tt0037193", + "tt0025228", + "tt1027747", + "tt2212008", + "tt0025164", + "tt2389182", + "tt8320402", + "tt0041415", + "tt6010628", + "tt0109890", + "tt2249221", + "tt0319061", + "tt9239778", + "tt0051201", + "tt2923316", + "tt5956006", + "tt2238839", + "tt0088851", + "tt0074812", + "tt0042049", + "tt0023198", + "tt0057598", + "tt0046791", + "tt5093026", + "tt0492486", + "tt5254610", + "tt7177754", + "tt0091630", + "tt0024831", + "tt0089489", + "tt0091579", + "tt1711456", + "tt0335563", + "tt4847246", + "tt0083722", + "tt0056085", + "tt0397430", + "tt0068022", + "tt4575576", + "tt0102005", + "tt1054486", + "tt0402057", + "tt0119791", + "tt0824758", + "tt1430615", + "tt1362058", + "tt0896534", + "tt0077742", + "tt5193784", + "tt0060315", + "tt0184791", + "tt0051658", + "tt0435680", + "tt1217616", + "tt0796375", + "tt0353324", + "tt1183665", + "tt1536410", + "tt1867093", + "tt1220888", + "tt5479446", + "tt0467110", + "tt0096256", + "tt0430770", + "tt0115986", + "tt1269706", + "tt0045161", + "tt3297330", + "tt0064072", + "tt1340773", + "tt4870838", + "tt1054487", + "tt0077294", + "tt0110169", + "tt0080716", + "tt0760311", + "tt3993532", + "tt0790623", + "tt8587650", + "tt0318081", + "tt1742650", + "tt2473602", + "tt1780798", + "tt2490326", + "tt1349451", + "tt1263750", + "tt1217070", + "tt0157583", + "tt1573109", + "tt1316037", + "tt1829012", + "tt1928340", + "tt0118589", + "tt0029546", + "tt0314063", + "tt4324274", + "tt0991178", + "tt3139072", + "tt0486051", + "tt0044386", + "tt0057197", + "tt0104850", + "tt0951335", + "tt1487118", + "tt1305591", + "tt2515030", + "tt0042981", + "tt0043030", + "tt0037462", + "tt0443559", + "tt0956038", + "tt1012804", + "tt2355495", + "tt1071804", + "tt0097737", + "tt0806165", + "tt3503406", + "tt0042372", + "tt0222851", + "tt0089841", + "tt0758799", + "tt0462338", + "tt0929629", + "tt1554091", + "tt0397044", + "tt0069002", + "tt0093779", + "tt2018069", + "tt1116184", + "tt1673430", + "tt0055516", + "tt1403988", + "tt0942903", + "tt0041644", + "tt0022834", + "tt0060434", + "tt6116856", + "tt0241025", + "tt1194263", + "tt3204392", + "tt5741304", + "tt0051444", + "tt0872230", + "tt0090986", + "tt1274300", + "tt0881320", + "tt6340090", + "tt1633356", + "tt0097278", + "tt0085198", + "tt4372240", + "tt6169694", + "tt0469641", + "tt0107007", + "tt8461918", + "tt6936350", + "tt5545622", + "tt0101329", + "tt0074119", + "tt0059044", + "tt1978532", + "tt1524170", + "tt3043176", + "tt1538534", + "tt2330458", + "tt1808452", + "tt0086967", + "tt0092632", + "tt0484740", + "tt0770806", + "tt0075930", + "tt1097015", + "tt0093090", + "tt0096453", + "tt2569236", + "tt2301900", + "tt0319970", + "tt1421049", + "tt3450134", + "tt1091751", + "tt0038166", + "tt0099669", + "tt0173771", + "tt0297780", + "tt0077801", + "tt0068716", + "tt1436046", + "tt0099266", + "tt0036326", + "tt0082696", + "tt1763316", + "tt0079482", + "tt5688868", + "tt1339098", + "tt6571636", + "tt2435514", + "tt2204379", + "tt1294213", + "tt0052077", + "tt0094963", + "tt0355473", + "tt5938084", + "tt0073195", + "tt0326905", + "tt0058694", + "tt0091203", + "tt0088066", + "tt0066999", + "tt0081617", + "tt8425332", + "tt0068615", + "tt6254874", + "tt6538402", + "tt0095652", + "tt2106440", + "tt0070868", + "tt7210264", + "tt2064968", + "tt3961394", + "tt4386596", + "tt0073692", + "tt0031851", + "tt0083261", + "tt0086449", + "tt0056056", + "tt5637514", + "tt0120744", + "tt0072225", + "tt0046353", + "tt7532178", + "tt0094761", + "tt0092240", + "tt0024914", + "tt0084556", + "tt0080790", + "tt0051418", + "tt0071627", + "tt0097557", + "tt2168854", + "tt0857265", + "tt0830558", + "tt3608654", + "tt7424200", + "tt0108577", + "tt0844866", + "tt6547170", + "tt3343136", + "tt1204883", + "tt2014264", + "tt0023125", + "tt0080464", + "tt0059792", + "tt0884224", + "tt0900357", + "tt0493405", + "tt1293561", + "tt1885423", + "tt0023761", + "tt0086525", + "tt0985060", + "tt0090203", + "tt0222812", + "tt0080120", + "tt0056875", + "tt0103919", + "tt0055353", + "tt3823098", + "tt5028598", + "tt7338690", + "tt5086308", + "tt0082559", + "tt2955304", + "tt0357507", + "tt3721110", + "tt1716760", + "tt0090327", + "tt6617656", + "tt8031422", + "tt2140403", + "tt0110116", + "tt4086018", + "tt0084573", + "tt0079285", + "tt1767372", + "tt1742336", + "tt3439114", + "tt1603314", + "tt0062622", + "tt2713642", + "tt0082378", + "tt0945580", + "tt1702926", + "tt0111048", + "tt0089730", + "tt2556874", + "tt1766094", + "tt0063696", + "tt2251281", + "tt2401807", + "tt0758766", + "tt3279124", + "tt1691920", + "tt2101383", + "tt0785007", + "tt1085779", + "tt0481141", + "tt0482572", + "tt1606657", + "tt0858486", + "tt0049870", + "tt5613056", + "tt0067446", + "tt1523264", + "tt0469263", + "tt1396221", + "tt0465502", + "tt0331632", + "tt0041923", + "tt0082371", + "tt0108171", + "tt0063654", + "tt1630061", + "tt0489325", + "tt3606888", + "tt1603257", + "tt5765144", + "tt0849470", + "tt4092686", + "tt0372594", + "tt0078831", + "tt0486640", + "tt1787777", + "tt0416185", + "tt1175713", + "tt5867226", + "tt1797469", + "tt6107516", + "tt0072685", + "tt6343058", + "tt0399221", + "tt2928840", + "tt2396489", + "tt6586892", + "tt2139555", + "tt0067224", + "tt0140381", + "tt0074187", + "tt1148200", + "tt6518270", + "tt1131748", + "tt0117473", + "tt0366780", + "tt2785032", + "tt3276924", + "tt0067490", + "tt0374563", + "tt0084237", + "tt0050281", + "tt0116329", + "tt0105488", + "tt0120004", + "tt0107843", + "tt0155776", + "tt2452200", + "tt1255916", + "tt1713476", + "tt4073790", + "tt0140379", + "tt1423894", + "tt6663582", + "tt4453756", + "tt0060959", + "tt0074588", + "tt0455782", + "tt5180888", + "tt1129445", + "tt1640548", + "tt0905372", + "tt4410000", + "tt5581752", + "tt0107952", + "tt0186151", + "tt0489235", + "tt4105584", + "tt0332047", + "tt6179746", + "tt4435082", + "tt1073105", + "tt6793280", + "tt0191915", + "tt0450278", + "tt1015976", + "tt0435625", + "tt0473444", + "tt1564349", + "tt0074768", + "tt0110612", + "tt0455407", + "tt0498353", + "tt0488508", + "tt0454970", + "tt0070215", + "tt1016268", + "tt2332831", + "tt0103976", + "tt0071150", + "tt0058050", + "tt1615918", + "tt1602617", + "tt0321359", + "tt1613023", + "tt1068641", + "tt1682181", + "tt0463034", + "tt1604231", + "tt0055972", + "tt0096119", + "tt0416654", + "tt0359517", + "tt0120184", + "tt0463998", + "tt3450900", + "tt5451690", + "tt0079871", + "tt1258998", + "tt6510332", + "tt0081383", + "tt3499176", + "tt3225318", + "tt2974918", + "tt0380389", + "tt0308508", + "tt0345950", + "tt0101316", + "tt0892318", + "tt2004432", + "tt0247196", + "tt1777608", + "tt0036323", + "tt4779344", + "tt1630603", + "tt0090859", + "tt0064296", + "tt0758053", + "tt0085933", + "tt0089881", + "tt1155053", + "tt1099212", + "tt1167638", + "tt1291580", + "tt0075909", + "tt1708427", + "tt0422401", + "tt0052619", + "tt0059465", + "tt2162709", + "tt6469826", + "tt1104679", + "tt0042707", + "tt1179855", + "tt1727261", + "tt0057480", + "tt1091992", + "tt6072502", + "tt1083456", + "tt1734203", + "tt0065669", + "tt0457433", + "tt2094890", + "tt0074751", + "tt2113075", + "tt0083869", + "tt6764122", + "tt4125206", + "tt0433771", + "tt3173594", + "tt3829920", + "tt2165765", + "tt0105792", + "tt0034902", + "tt1910498", + "tt3532608", + "tt1907779", + "tt1329177", + "tt0066578", + "tt6998518", + "tt1565069", + "tt0036959", + "tt1107812", + "tt6911608", + "tt3004746", + "tt3638012", + "tt0062298", + "tt2372251", + "tt1417032", + "tt0367085", + "tt0082243", + "tt5672286", + "tt1618435", + "tt0070544", + "tt1996264", + "tt0254872", + "tt0163187", + "tt3892434", + "tt0055464", + "tt0079450", + "tt0080440", + "tt0104670", + "tt1003052", + "tt1407061", + "tt0264508", + "tt0063501", + "tt0149367", + "tt1754811", + "tt0156182", + "tt0062883", + "tt0079366", + "tt3458254", + "tt0068522", + "tt0082592", + "tt0120776", + "tt1686782", + "tt1706598", + "tt0057993", + "tt1403075", + "tt0106660", + "tt1704614", + "tt0075950", + "tt0097211", + "tt0093995", + "tt0055073", + "tt6241352", + "tt0071408", + "tt8989870", + "tt5113250", + "tt0227005", + "tt0254871", + "tt0120524", + "tt0067716", + "tt4075804", + "tt0964539", + "tt2235542", + "tt0053848", + "tt6053938", + "tt0466839", + "tt0482546", + "tt1794790", + "tt0762105", + "tt0970472", + "tt0076137", + "tt0051336", + "tt1413489", + "tt0829459", + "tt0117218", + "tt0067927", + "tt7515456", + "tt5427122", + "tt0082348", + "tt5897636", + "tt1486190", + "tt0437405", + "tt0380599", + "tt1426363", + "tt0492389", + "tt2628316", + "tt0438315", + "tt0119485", + "tt0071607", + "tt1334102", + "tt0120458", + "tt0043255", + "tt1278379", + "tt2908856", + "tt7216256", + "tt2171867", + "tt0032637", + "tt0130827", + "tt0032635", + "tt6147512", + "tt3567288", + "tt0262240", + "tt4895740", + "tt0480687", + "tt0227850", + "tt0107193", + "tt0308343", + "tt0884328", + "tt0120577", + "tt1598642", + "tt0780485", + "tt3286052", + "tt2494362", + "tt0424774", + "tt0104409", + "tt1320239", + "tt0842929", + "tt0050105", + "tt2473510", + "tt2412746", + "tt1852770", + "tt1536044", + "tt2072933", + "tt2400463", + "tt0274546", + "tt1623288", + "tt3120944", + "tt0115683", + "tt4062536", + "tt0337636", + "tt1569923", + "tt1778304", + "tt4052882", + "tt1311699", + "tt2473682", + "tt1179933", + "tt2166834", + "tt0057623", + "tt1716747", + "tt5112578", + "tt0446687", + "tt4695012", + "tt0354623", + "tt2409634", + "tt2109184", + "tt3812730", + "tt2359381", + "tt5308322", + "tt4547056", + "tt0451957", + "tt7153766", + "tt0118564", + "tt1285009", + "tt1034385", + "tt1179904", + "tt5628792", + "tt0338094", + "tt0327597", + "tt7055592", + "tt6441072", + "tt0469623", + "tt0101670", + "tt0229440", + "tt2820466", + "tt5886440", + "tt0270980", + "tt0408985", + "tt2238050", + "tt1690455", + "tt1072748", + "tt5091548", + "tt3139086", + "tt0897361", + "tt2313197", + "tt0250347", + "tt0368578", + "tt2114461", + "tt8403680", + "tt4151320", + "tt0116514", + "tt0032641", + "tt0954947", + "tt4853102", + "tt4714782", + "tt0064760", + "tt6104760", + "tt0455957", + "tt1645155", + "tt3060952", + "tt0114852", + "tt0902272", + "tt3504048", + "tt0110527", + "tt0099939", + "tt1127896", + "tt0177876", + "tt0813980", + "tt4280430", + "tt1494772", + "tt0096244", + "tt1750698", + "tt2071550", + "tt0490181", + "tt0479528", + "tt3416744", + "tt0093936", + "tt0488604", + "tt0120008", + "tt2101569", + "tt1232783", + "tt1431181", + "tt0120609", + "tt0067525", + "tt1411704", + "tt3845232", + "tt0093148", + "tt1630626", + "tt0365967", + "tt0087755", + "tt0046672", + "tt0071334", + "tt1411697", + "tt2281587", + "tt0109361", + "tt2498024", + "tt0029222", + "tt4177742", + "tt0160009", + "tt1951261", + "tt1119646", + "tt0074653", + "tt1684226", + "tt6685596", + "tt0460745", + "tt0308383", + "tt2103267", + "tt0346631", + "tt0899106", + "tt0085121", + "tt0485985", + "tt0117331", + "tt9135870", + "tt2403021", + "tt2317225", + "tt0158811", + "tt0257516", + "tt0086014", + "tt0114887", + "tt0117468", + "tt2221648", + "tt2181953", + "tt5783382", + "tt0118747", + "tt0300532", + "tt0076363", + "tt4434688", + "tt5688932", + "tt4568370", + "tt0097637", + "tt3616934", + "tt0120587", + "tt3181822", + "tt2404639", + "tt0091621", + "tt0303929", + "tt0094142", + "tt6364638", + "tt1179069", + "tt0087247", + "tt6710826", + "tt4610748", + "tt0219653", + "tt0118715", + "tt0838247", + "tt2006295", + "tt0213965", + "tt0775489", + "tt0104692", + "tt0449487", + "tt0045578", + "tt0336325", + "tt1937264", + "tt0112691", + "tt0337579", + "tt0115639", + "tt0292644", + "tt0470705", + "tt0410764", + "tt6753206", + "tt0444653", + "tt0402901", + "tt0430912", + "tt2720680", + "tt1316536", + "tt0410377", + "tt2870708", + "tt0100404", + "tt2275946", + "tt5390066", + "tt1251757", + "tt0119535", + "tt0191255", + "tt0116287", + "tt0482527", + "tt0104437", + "tt0808331", + "tt2103217", + "tt0091635", + "tt0065854", + "tt4761916", + "tt0065709", + "tt2420876", + "tt8360902", + "tt0115697", + "tt0098273", + "tt7476438", + "tt2398241", + "tt0094792", + "tt0101473", + "tt0068669", + "tt1172994", + "tt0129332", + "tt0124819", + "tt1112782", + "tt0808510", + "tt2091935", + "tt0090022", + "tt0116191", + "tt0455499", + "tt0115783", + "tt0257756", + "tt0896798", + "tt0184858", + "tt0146291", + "tt0027073", + "tt1118511", + "tt0024782", + "tt2017020", + "tt0062803", + "tt0145809", + "tt0106307", + "tt0191896", + "tt0024721", + "tt0132480", + "tt3203992", + "tt0031964", + "tt0086129", + "tt5910344", + "tt0082677", + "tt0013626", + "tt0425430", + "tt1935929", + "tt0084522", + "tt0113845", + "tt0089826", + "tt0405336", + "tt2515034", + "tt3262342", + "tt6775942", + "tt0112453", + "tt0316732", + "tt0091217", + "tt2140629", + "tt2994190", + "tt1285309", + "tt0288045", + "tt0072308", + "tt1477837", + "tt1031969", + "tt2918436", + "tt4729896", + "tt0421206", + "tt0303714", + "tt8526506", + "tt0455960", + "tt1233301", + "tt1529572", + "tt1067774", + "tt0107969", + "tt1464580", + "tt0123865", + "tt0189998", + "tt0838232", + "tt0454824", + "tt1244754", + "tt2404583", + "tt0436339", + "tt1369706", + "tt0090056", + "tt0139699", + "tt0102307", + "tt2452042", + "tt1055292", + "tt0331811", + "tt0053917", + "tt5607028", + "tt1596346", + "tt0871426", + "tt0073341", + "tt0269347", + "tt0314431", + "tt1130080", + "tt1656186", + "tt0074977", + "tt0450405", + "tt1470023", + "tt0160797", + "tt1850397", + "tt1480656", + "tt0086244", + "tt5539924", + "tt0109045", + "tt0385726", + "tt0073802", + "tt0032884", + "tt0430304", + "tt0102945", + "tt0054953", + "tt1606392", + "tt0364751", + "tt0419677", + "tt0312528", + "tt0098627", + "tt0365485", + "tt0095174", + "tt0089370", + "tt5774450", + "tt1767354", + "tt0475944", + "tt1531663", + "tt1225822", + "tt0116277", + "tt0115857", + "tt0089155", + "tt1441326", + "tt1212436", + "tt5771710", + "tt2382396", + "tt0437863", + "tt0112883", + "tt0804522", + "tt0443536", + "tt0069776", + "tt0281686", + "tt1287468", + "tt0108002", + "tt0120731", + "tt0977855", + "tt0406759", + "tt4547938", + "tt0765120", + "tt0443632", + "tt0062765", + "tt0092691", + "tt0460829", + "tt1176740", + "tt0105435", + "tt0844993", + "tt0355702", + "tt0075784", + "tt0452598", + "tt1578275", + "tt0294870", + "tt0810922", + "tt8457394", + "tt0266489", + "tt0112722", + "tt1414382", + "tt0862467", + "tt0758762", + "tt0360201", + "tt0827782", + "tt0402894", + "tt0271027", + "tt1270262", + "tt0179626", + "tt0375154", + "tt0401997", + "tt0239395", + "tt0491152", + "tt3807900", + "tt0462200", + "tt0988047", + "tt0476964", + "tt0107302", + "tt0111255", + "tt0120693", + "tt0206275", + "tt0427470", + "tt0037445", + "tt1093357", + "tt1687901", + "tt3962984", + "tt0132347", + "tt1222817", + "tt0385267", + "tt2357291", + "tt0116409", + "tt5459382", + "tt1197628", + "tt0039600", + "tt0051744", + "tt0445990", + "tt1038919", + "tt0146309", + "tt0397313", + "tt8989874", + "tt0758794", + "tt0071677", + "tt0039627", + "tt1428538", + "tt0069007", + "tt0465624", + "tt0084173", + "tt4602554", + "tt6723494", + "tt5687040", + "tt1075747", + "tt6522982", + "tt5959952", + "tt0053221", + "tt0421082", + "tt0102057", + "tt0865554", + "tt0450345", + "tt0054086", + "tt0110005", + "tt0089469", + "tt0780583", + "tt0219699", + "tt1130884", + "tt0453556", + "tt1467304", + "tt1210042", + "tt5220122", + "tt0838283", + "tt0027125", + "tt0116908", + "tt0396752", + "tt8541440", + "tt0102940", + "tt0486551", + "tt1323045", + "tt6241390", + "tt0421054", + "tt0119925", + "tt0329575", + "tt0478134", + "tt0035103", + "tt3007512", + "tt0049672", + "tt1883367", + "tt0963794", + "tt1415283", + "tt3312830", + "tt6288124", + "tt0477051", + "tt0110932", + "tt3605418", + "tt7014006", + "tt0175536", + "tt0107822", + "tt0114694", + "tt1095217", + "tt0804461", + "tt5743816", + "tt0120461", + "tt0433387", + "tt1530509", + "tt0083511", + "tt1152398", + "tt0462465", + "tt0209475", + "tt0065214", + "tt0181316", + "tt1294226", + "tt0181536", + "tt0120780", + "tt4938374", + "tt1126591", + "tt0117802", + "tt6532374", + "tt6464360", + "tt0368226", + "tt0455967", + "tt1107365", + "tt0265349", + "tt0328832", + "tt0120794", + "tt1103153", + "tt0398017", + "tt0069754", + "tt0127536", + "tt0068583", + "tt2377132", + "tt1440292", + "tt5648036", + "tt0099582", + "tt1051904", + "tt5988966", + "tt0049730", + "tt1985949", + "tt0137363", + "tt1020558", + "tt0810913", + "tt0185183", + "tt0378109", + "tt3917210", + "tt0335119", + "tt0770752", + "tt1674768", + "tt1216492", + "tt1540133", + "tt0406375", + "tt5595168", + "tt0364045", + "tt5371168", + "tt1646926", + "tt0395699", + "tt0455760", + "tt2170593", + "tt1230414", + "tt0408839", + "tt0267804", + "tt0298814", + "tt1564585", + "tt1532503", + "tt0406816", + "tt0400717", + "tt1297919", + "tt0348333", + "tt1116186", + "tt0120434", + "tt0370032", + "tt1289406", + "tt1229822", + "tt6370614", + "tt0173840", + "tt0457513", + "tt0085995", + "tt0248667", + "tt0061418", + "tt1131734", + "tt1657507", + "tt0430357", + "tt1800741", + "tt0109327", + "tt0116136", + "tt3860916", + "tt1017460", + "tt0422720", + "tt5201246", + "tt1431133", + "tt0795368", + "tt0171804", + "tt7664504", + "tt1034314", + "tt7317494", + "tt1053424", + "tt0080487", + "tt0433383", + "tt0043461", + "tt1924396", + "tt0790686", + "tt0929632", + "tt1478964", + "tt1656190", + "tt0019186", + "tt1172570", + "tt4505670", + "tt1615147", + "tt1509767", + "tt1023481", + "tt8589788", + "tt6133466", + "tt0462590", + "tt0918927", + "tt0443649", + "tt0386117", + "tt1131729", + "tt2180411", + "tt0286499", + "tt0125664", + "tt1234548", + "tt0113627", + "tt1067583", + "tt2561572", + "tt2626350", + "tt0817230", + "tt2096672", + "tt1019452", + "tt2305051", + "tt8780234", + "tt0040723", + "tt1114277", + "tt0453451", + "tt0048473", + "tt6100122", + "tt1462058", + "tt0134033", + "tt0269743", + "tt0052572", + "tt0048956", + "tt0340855", + "tt0167331", + "tt0035462", + "tt0086510", + "tt0056919", + "tt2243123", + "tt0042792", + "tt6624126", + "tt0159365", + "tt0177789", + "tt4974778", + "tt3316960", + "tt5136686", + "tt0099141", + "tt1267297", + "tt0829150", + "tt0947810", + "tt0120657", + "tt0108358", + "tt1192628", + "tt0093822", + "tt4052050", + "tt0112508", + "tt0261392", + "tt1621429", + "tt0398808", + "tt1298649", + "tt0815236", + "tt5397194", + "tt0387131", + "tt0443274", + "tt0079417", + "tt0090184", + "tt0469916", + "tt0111282", + "tt0073018", + "tt5813366", + "tt0081975", + "tt1229340", + "tt1507571", + "tt7334528", + "tt0066080", + "tt0277027", + "tt0324941", + "tt6401004", + "tt5685006", + "tt0029971", + "tt0758752", + "tt0142688", + "tt0115798", + "tt0415306", + "tt1174732", + "tt6055450", + "tt0443680", + "tt0488120", + "tt0257076", + "tt0430105", + "tt0408790", + "tt3892172", + "tt0825232", + "tt0070735", + "tt0442933", + "tt0067116", + "tt0374900", + "tt0413099", + "tt2273648", + "tt0986263", + "tt1013753", + "tt0082533", + "tt0814255", + "tt0183790", + "tt0311429", + "tt0104452", + "tt7681902", + "tt0177971", + "tt5735582", + "tt1564367", + "tt0092890", + "tt0072890", + "tt0097322", + "tt0092297", + "tt5041296", + "tt0462322", + "tt1120985", + "tt1059786", + "tt0064115", + "tt7946836", + "tt1148204", + "tt1458175", + "tt0431308", + "tt0183505", + "tt0289043", + "tt0758774", + "tt0338096", + "tt1313139", + "tt1985966", + "tt0055382", + "tt1243957", + "tt1672723", + "tt0486822", + "tt0080678", + "tt0315733", + "tt0463854", + "tt1436562", + "tt2293640", + "tt0142257", + "tt0050629", + "tt0111257", + "tt0044388", + "tt0478087", + "tt8045978", + "tt1723121", + "tt0063219", + "tt5198796", + "tt0075249", + "tt0328107", + "tt1596350", + "tt1028576", + "tt0421715", + "tt5719232", + "tt0212346", + "tt0114906", + "tt0081259", + "tt6968542", + "tt0380623", + "tt0844471", + "tt0150216", + "tt0175880", + "tt1092026", + "tt0320691", + "tt1033575", + "tt0829482", + "tt0401855", + "tt0947798", + "tt1232829", + "tt0257044", + "tt0396171", + "tt0106977", + "tt0111161", + "tt1605783", + "tt0414387", + "tt0450259", + "tt0093780", + "tt0834001", + "tt0060174", + "tt0405422", + "tt1496025", + "tt0458352", + "tt0079470", + "tt0758758", + "tt0060891", + "tt6558114", + "tt5932800", + "tt0389860", + "tt0343660", + "tt0477348", + "tt0253474", + "tt1951216", + "tt2246549", + "tt0059229", + "tt1641385", + "tt3625352", + "tt1810697", + "tt5654710", + "tt0284262", + "tt1068242", + "tt1754367", + "tt1880209", + "tt1924394", + "tt1684925", + "tt2920540", + "tt2147365", + "tt1683526", + "tt0105411", + "tt1966604", + "tt1185371", + "tt1598873", + "tt0059633", + "tt8912318", + "tt0081184", + "tt1641252", + "tt1329232", + "tt2586120", + "tt0085303", + "tt4117850", + "tt4268850", + "tt2769184", + "tt2509850", + "tt3265262", + "tt2945796", + "tt0057521", + "tt1645074", + "tt0111454", + "tt0067003", + "tt3699684", + "tt1702009", + "tt0055399", + "tt0459327", + "tt6878882", + "tt1673697", + "tt0087451", + "tt3263520", + "tt0093990", + "tt4080956", + "tt1785353", + "tt1883168", + "tt0180999", + "tt0086610", + "tt0073697", + "tt2393827", + "tt0075097", + "tt7158430", + "tt2758890", + "tt2943068", + "tt0085672", + "tt3149640", + "tt2626964", + "tt0125510", + "tt4050596", + "tt0089271", + "tt0022685", + "tt8595574", + "tt6069620", + "tt1605798", + "tt0069495", + "tt0099949", + "tt6043842", + "tt0124014", + "tt0276818", + "tt0297462", + "tt0283534", + "tt0087072", + "tt0098502", + "tt0086248", + "tt0131543", + "tt0098503", + "tt0105150", + "tt0478304", + "tt0212879", + "tt8128866", + "tt6566400", + "tt0083973", + "tt5931388", + "tt0095989", + "tt0110722", + "tt0439630", + "tt1210801", + "tt0094712", + "tt0067357", + "tt0084921", + "tt0079135", + "tt5727282", + "tt8119752", + "tt0094910", + "tt2580382", + "tt0072236", + "tt0109702", + "tt0078749", + "tt0080520", + "tt1389781", + "tt0103116", + "tt3496372", + "tt0805526", + "tt0105632", + "tt0070913", + "tt0057443", + "tt8074486", + "tt1817081", + "tt1879032", + "tt2113792", + "tt2043931", + "tt7944094", + "tt1861279", + "tt1848902", + "tt1545328", + "tt2024506", + "tt1989475", + "tt1020055", + "tt1887814", + "tt7164066", + "tt2347497", + "tt0835418", + "tt1142988", + "tt0234886", + "tt1438173", + "tt0061333", + "tt1684564", + "tt2999390", + "tt0058208", + "tt6774786", + "tt1187041", + "tt3845960", + "tt2005164", + "tt2587198", + "tt2310109", + "tt1222815", + "tt8490838", + "tt1114677", + "tt2112152", + "tt1816642", + "tt0360556", + "tt1638364", + "tt2279864", + "tt2216240", + "tt2920808", + "tt2946582", + "tt1828970", + "tt2461034", + "tt3148890", + "tt0098536", + "tt1662293", + "tt0804463", + "tt2343266", + "tt2012011", + "tt1822381", + "tt3165608", + "tt5913184", + "tt8691808", + "tt0960066", + "tt1942884", + "tt1855199", + "tt3906082", + "tt2910342", + "tt2107648", + "tt2309224", + "tt2085910", + "tt0095354", + "tt1680045", + "tt1720164", + "tt1684233", + "tt0055633", + "tt1611224", + "tt0085694", + "tt1659338", + "tt0065580", + "tt0090192", + "tt2124803", + "tt2331100", + "tt0084060", + "tt0062262", + "tt3138104", + "tt3409848", + "tt0059653", + "tt1210819", + "tt1865393", + "tt3636326", + "tt0091763", + "tt1333125", + "tt1621045", + "tt0372119", + "tt7819394", + "tt1547234", + "tt5747692", + "tt0461604", + "tt0048484", + "tt1838544", + "tt0051471", + "tt0030127", + "tt0083012", + "tt0433442", + "tt0984210", + "tt0393685", + "tt0252866", + "tt0494224", + "tt0054632", + "tt5361596", + "tt1493828", + "tt7941052", + "tt1247683", + "tt2006040", + "tt5338644", + "tt0896031", + "tt0286112", + "tt0972359", + "tt8582162", + "tt1394383", + "tt1361313", + "tt1268987", + "tt1706680", + "tt1407049", + "tt1568323", + "tt0059530", + "tt1012729", + "tt0765128", + "tt0093066", + "tt1571243", + "tt1615480", + "tt2198241", + "tt1407078", + "tt1885300", + "tt0058003", + "tt0035929", + "tt1597033", + "tt0077533", + "tt1156067", + "tt1790825", + "tt2499414", + "tt6701492", + "tt6591554", + "tt1043651", + "tt7313518", + "tt5816712", + "tt1846444", + "tt1519664", + "tt1559549", + "tt0444672", + "tt0471930", + "tt1176251", + "tt0178022", + "tt1198075", + "tt1791658", + "tt1359555", + "tt0847527", + "tt0482461", + "tt0981042", + "tt0798817", + "tt0091844", + "tt0473709", + "tt0430431", + "tt1500140", + "tt1630564", + "tt1410295", + "tt5778098", + "tt6793580", + "tt0159458", + "tt5779540", + "tt2369047", + "tt1053880", + "tt1325723", + "tt0409011", + "tt1401607", + "tt1283546", + "tt1129410", + "tt1105730", + "tt1196170", + "tt1343029", + "tt1259227", + "tt0483719", + "tt4481514", + "tt1400515", + "tt1225302", + "tt1792131", + "tt1403177", + "tt1341710", + "tt0756618", + "tt0463984", + "tt0371257", + "tt0068379", + "tt1327200", + "tt0096740", + "tt1471156", + "tt0896533", + "tt0100114", + "tt0411705", + "tt1692928", + "tt1319744", + "tt1079360", + "tt0081250", + "tt0068605", + "tt0096316", + "tt1680051", + "tt0063462", + "tt1436572", + "tt1047449", + "tt8235966", + "tt0073324", + "tt0086346", + "tt7897478", + "tt0409034", + "tt2124172", + "tt1073246", + "tt1183919", + "tt1678051", + "tt1614456", + "tt0114436", + "tt1702425", + "tt1502420", + "tt0190865", + "tt1415284", + "tt3127022", + "tt6155374", + "tt6494418", + "tt7222296", + "tt1560978", + "tt2689992", + "tt1522262", + "tt6002232", + "tt0109676", + "tt1641831", + "tt0163579", + "tt0113950", + "tt0085333", + "tt2039339", + "tt6213362", + "tt0096487", + "tt0119643", + "tt1870425", + "tt0113965", + "tt0120148", + "tt1663689", + "tt0107211", + "tt0102685", + "tt0120820", + "tt0103074", + "tt0494199", + "tt0116213", + "tt0113949", + "tt0138097", + "tt0103962", + "tt0897347", + "tt0102798", + "tt1734122", + "tt0114614", + "tt0113948", + "tt0106950", + "tt2141875", + "tt0102250", + "tt0955308", + "tt0109813", + "tt2609156", + "tt2376024", + "tt1568802", + "tt2050633", + "tt1037218", + "tt3697626", + "tt1840388", + "tt2381355", + "tt2060525", + "tt2236182", + "tt0068997", + "tt4125654", + "tt1398428", + "tt0796302", + "tt1308748", + "tt2083231", + "tt1007032", + "tt2396701", + "tt1155060", + "tt1995341", + "tt0423455", + "tt2341985", + "tt1673702", + "tt0490499", + "tt0109723", + "tt2417650", + "tt1999995", + "tt0498351", + "tt2401223", + "tt4222028", + "tt0462362", + "tt0063970", + "tt1212451", + "tt0027545", + "tt0036376", + "tt0401085", + "tt1652361", + "tt2545538", + "tt2953196", + "tt1855236", + "tt3062074", + "tt1024733", + "tt2095568", + "tt2173768", + "tt3124476", + "tt0058507", + "tt1545754", + "tt2425886", + "tt1517471", + "tt2569792", + "tt2991532", + "tt1559036", + "tt0093483", + "tt2262175", + "tt2420006", + "tt0350261", + "tt2215151", + "tt1416801", + "tt1778931", + "tt0119173", + "tt0123847", + "tt4008652", + "tt2492664", + "tt2290065", + "tt2620736", + "tt1037222", + "tt0074564", + "tt2793490", + "tt0081237", + "tt0090567", + "tt0072962", + "tt3326366", + "tt0431091", + "tt0466816", + "tt0368222", + "tt3090252", + "tt0413895", + "tt0117107", + "tt0061587", + "tt3092606", + "tt4831420", + "tt3899796", + "tt5291792", + "tt5073620", + "tt2194328", + "tt0049432", + "tt0070445", + "tt0081529", + "tt0080756", + "tt5346228", + "tt0072665", + "tt1610013", + "tt0070511", + "tt5687334", + "tt2229377", + "tt0084698", + "tt3104930", + "tt6227846", + "tt0087032", + "tt2635006", + "tt0077504", + "tt2724064", + "tt0204640", + "tt4180556", + "tt0064923", + "tt0097493", + "tt6903980", + "tt0068473", + "tt0090073", + "tt0118897", + "tt0198386", + "tt0076729", + "tt0132245", + "tt0098093", + "tt0083642", + "tt0116953", + "tt0096787", + "tt0086325", + "tt3014078", + "tt0077524", + "tt3417854", + "tt0361500", + "tt4118932", + "tt0079948", + "tt0070915", + "tt5836316", + "tt0099173", + "tt0068617", + "tt4316236", + "tt4257858", + "tt0117765", + "tt0053108", + "tt0118749", + "tt0460780", + "tt0077696", + "tt0415778", + "tt0087062", + "tt0083064", + "tt0082136", + "tt0082910", + "tt1046947", + "tt4504040", + "tt0069883", + "tt3457734", + "tt2304915", + "tt0102116", + "tt0095925", + "tt0095560", + "tt5773986", + "tt0098205", + "tt0089538", + "tt0046521", + "tt6523174", + "tt3899932", + "tt6793818", + "tt0046535", + "tt1618448", + "tt0086605", + "tt6400632", + "tt4076760", + "tt0055506", + "tt0454919", + "tt3885524", + "tt1085492", + "tt2929652", + "tt0100602", + "tt1567140", + "tt5116410", + "tt5040624", + "tt3858372", + "tt0375568", + "tt5884234", + "tt1465522", + "tt0067454", + "tt1440728", + "tt1403981", + "tt1322312", + "tt1517489", + "tt1314655", + "tt1240982", + "tt0790712", + "tt0117929", + "tt0480255", + "tt0102593", + "tt0472198", + "tt1273678", + "tt0842926", + "tt0403702", + "tt0338459", + "tt1186370", + "tt1023114", + "tt0963966", + "tt0227538", + "tt6313348", + "tt1185416", + "tt0821640", + "tt0762125", + "tt6314690", + "tt0054469", + "tt0152438", + "tt8080578", + "tt5078204", + "tt6186696", + "tt0287717", + "tt6015706", + "tt0116289", + "tt1772240", + "tt0468489", + "tt5018116", + "tt0116384", + "tt7108074", + "tt0489049", + "tt5876412", + "tt2772966", + "tt2288005", + "tt0844286", + "tt0086987", + "tt8522168", + "tt1230204", + "tt0114069", + "tt0120382", + "tt0457419", + "tt2034139", + "tt1152397", + "tt0066206", + "tt0139134", + "tt1320244", + "tt0427152", + "tt2560792", + "tt0364725", + "tt6540078", + "tt5157052", + "tt1715873", + "tt0412536", + "tt0077269", + "tt0452623", + "tt1559040", + "tt0103594", + "tt0090728", + "tt0119164", + "tt0840322", + "tt2375574", + "tt0095088", + "tt0779982", + "tt0419887", + "tt0488085", + "tt0421238", + "tt1410020", + "tt0216216", + "tt0070355", + "tt0443453", + "tt0094077", + "tt5460880", + "tt0107563", + "tt3212904", + "tt0453453", + "tt0117653", + "tt0490086", + "tt1881024", + "tt0061747", + "tt0435705", + "tt0858433", + "tt3779300", + "tt1379177", + "tt0866437", + "tt0405325", + "tt0091949", + "tt0102614", + "tt0065207", + "tt0100514", + "tt0151137", + "tt0960144", + "tt0056197", + "tt1663193", + "tt1919090", + "tt0490204", + "tt1701210", + "tt0061512", + "tt0110490", + "tt0087553", + "tt1109477", + "tt0096101", + "tt0362478", + "tt4216902", + "tt8925724", + "tt0245803", + "tt0129387", + "tt0388795", + "tt7009250", + "tt0195685", + "tt5779650", + "tt7200856", + "tt0308644", + "tt8826626", + "tt4355236", + "tt0068638", + "tt3859310", + "tt0118548", + "tt0053125", + "tt0795493", + "tt1104814", + "tt8595630", + "tt7842764", + "tt1201167", + "tt7936538", + "tt2210463", + "tt8592222", + "tt1078588", + "tt0065938", + "tt1336006", + "tt7620746", + "tt7708146", + "tt0107206", + "tt0119528", + "tt1272886", + "tt0815241", + "tt0079168", + "tt0092783", + "tt0756672", + "tt0079116", + "tt0329162", + "tt3569732", + "tt0473267", + "tt0415833", + "tt0074483", + "tt5618692", + "tt0473553", + "tt0291833", + "tt0245573", + "tt5455410", + "tt1320346", + "tt1198332", + "tt0099871", + "tt1700843", + "tt8163888", + "tt1276110", + "tt0944833", + "tt0292610", + "tt1173687", + "tt4314152", + "tt1148165", + "tt0829098", + "tt1418646", + "tt0307385", + "tt1489246", + "tt0889134", + "tt0790662", + "tt0429115", + "tt0275773", + "tt1299653", + "tt0926380", + "tt1371117", + "tt0814093", + "tt0486652", + "tt0099587", + "tt0775362", + "tt1282024", + "tt0092272", + "tt0428579", + "tt1075746", + "tt0417433", + "tt1176204", + "tt1636539", + "tt0202027", + "tt1560954", + "tt1422032", + "tt1251725", + "tt1376709", + "tt1268970", + "tt0472175", + "tt0790799", + "tt0411475", + "tt1222698", + "tt5618752", + "tt0304636", + "tt0800361", + "tt1313092", + "tt0379240", + "tt1161404", + "tt0795439", + "tt0451102", + "tt1457766", + "tt0081376", + "tt1027683", + "tt0049665", + "tt1261041", + "tt0304711", + "tt1400526", + "tt1477675", + "tt0208298", + "tt0088255", + "tt2243393", + "tt0493451", + "tt1456941", + "tt0302585", + "tt1285216", + "tt3821674", + "tt0107756", + "tt1251761", + "tt0924134", + "tt1283887", + "tt1841594", + "tt0059065", + "tt1237373", + "tt0109809", + "tt1524131", + "tt1473799", + "tt1075749", + "tt0458367", + "tt0245280", + "tt0094671", + "tt5843850", + "tt1730695", + "tt1198396", + "tt1555747", + "tt1571739", + "tt1373149", + "tt0068675", + "tt0118025", + "tt1999141", + "tt4084076", + "tt1260680", + "tt1376404", + "tt6908760", + "tt0096180", + "tt1792799", + "tt4234744", + "tt1686039", + "tt1319699", + "tt0067924", + "tt1839648", + "tt1912981", + "tt1135493", + "tt1438216", + "tt0978762", + "tt2073154", + "tt1433915", + "tt1337137", + "tt0073864", + "tt1738421", + "tt0068713", + "tt1322306", + "tt0131400", + "tt1650056", + "tt1568924", + "tt0133751", + "tt0059095", + "tt3814808", + "tt5516328", + "tt7689964", + "tt0089360", + "tt5436228", + "tt6306064", + "tt1720616", + "tt0133142", + "tt1714861", + "tt6238896", + "tt1742023", + "tt1600207", + "tt1590960", + "tt2140141", + "tt1531914", + "tt2214941", + "tt0092618", + "tt1730294", + "tt1777725", + "tt0110729", + "tt0145547", + "tt1235189", + "tt0076538", + "tt1570559", + "tt0443435", + "tt0284978", + "tt3074780", + "tt2483516", + "tt0109444", + "tt1258922", + "tt2119474", + "tt1668200", + "tt2322641", + "tt3125324", + "tt0458413", + "tt2583690", + "tt1524575", + "tt1776086", + "tt1411664", + "tt1420554", + "tt0072626", + "tt1666801", + "tt1447972", + "tt1620449", + "tt2788716", + "tt0085210", + "tt2279373", + "tt0283111", + "tt2236054", + "tt0092904", + "tt4183692", + "tt2250234", + "tt0072409", + "tt2132285", + "tt0105112", + "tt1372686", + "tt1876451", + "tt1758795", + "tt2150511", + "tt1311060", + "tt0084694", + "tt1716777", + "tt2626460", + "tt0067419", + "tt5568164", + "tt0070736", + "tt7874378", + "tt0070436", + "tt1839654", + "tt1814621", + "tt6484086", + "tt3829378", + "tt5687380", + "tt1972819", + "tt1711425", + "tt0101493", + "tt1205537", + "tt1433811", + "tt0116247", + "tt1210106", + "tt0075433", + "tt1436571", + "tt0083906", + "tt7689908", + "tt0085253", + "tt0068450", + "tt0164184", + "tt0215960", + "tt0099810", + "tt5164184", + "tt3109830", + "tt4334642", + "tt0109858", + "tt5351458", + "tt0108260", + "tt0091560", + "tt0068498", + "tt0090915", + "tt0102043", + "tt0085434", + "tt1743993", + "tt0087100", + "tt0062141", + "tt0053806", + "tt0400146", + "tt0059447", + "tt0061556", + "tt0055779", + "tt1078597", + "tt0110410", + "tt1424432", + "tt0065700", + "tt1465491", + "tt0054698", + "tt0080516", + "tt0460890", + "tt1700263", + "tt0096142", + "tt0095299", + "tt0095774", + "tt0051554", + "tt0317676", + "tt0847825", + "tt0076843", + "tt1555024", + "tt1533013", + "tt0093546", + "tt1429411", + "tt1465519", + "tt0196158", + "tt0067037", + "tt1721677", + "tt1656257", + "tt1219336", + "tt0256524", + "tt1728975", + "tt0054022", + "tt0080798", + "tt1653700", + "tt1865484", + "tt1658851", + "tt0362165", + "tt0049092", + "tt0120851", + "tt1274596", + "tt1032825", + "tt4061908", + "tt2136808", + "tt0462721", + "tt0052724", + "tt0079576", + "tt0369360", + "tt0279111", + "tt0463029", + "tt0102015", + "tt1230206", + "tt1193473", + "tt1703148", + "tt0078456", + "tt6212478", + "tt1365483", + "tt0196216", + "tt0113819", + "tt1730704", + "tt1688653", + "tt7139246", + "tt1747967", + "tt1153106", + "tt1633245", + "tt4114630", + "tt0104802", + "tt6813892", + "tt5619332", + "tt1912996", + "tt1492705", + "tt5165620", + "tt0088206", + "tt1059969", + "tt1680305", + "tt0095801", + "tt4682788", + "tt1743375", + "tt1640570", + "tt0077531", + "tt1727506", + "tt0051398", + "tt0099291", + "tt1389127", + "tt1786497", + "tt0446750", + "tt1221207", + "tt0458485", + "tt2062661", + "tt0035423", + "tt0129775", + "tt0055312", + "tt1820723", + "tt1657299", + "tt2175927", + "tt0099365", + "tt1600197", + "tt0057840", + "tt0465494", + "tt2250054", + "tt2102472", + "tt0066249", + "tt0063415", + "tt0086312", + "tt0046949", + "tt1251743", + "tt1876277", + "tt0091369", + "tt0077921", + "tt0095082", + "tt0072820", + "tt0073906", + "tt0091860", + "tt0072608", + "tt0074695", + "tt5738064", + "tt0889588", + "tt0067803", + "tt6652708", + "tt4158594", + "tt0098546", + "tt0119008", + "tt0238112", + "tt0104107", + "tt0058212", + "tt0077416", + "tt0059575", + "tt6488870", + "tt0055892", + "tt0093200", + "tt0093776", + "tt6505968", + "tt0124298", + "tt0066858", + "tt0079668", + "tt0082432", + "tt0109303", + "tt0068540", + "tt0082846", + "tt0125022", + "tt1130969", + "tt0080408", + "tt0066982", + "tt0061328", + "tt0102103", + "tt0058265", + "tt0084865", + "tt7076834", + "tt0155711", + "tt0075334", + "tt0045302", + "tt0107497", + "tt3548028", + "tt5628302", + "tt0076660", + "tt0102494", + "tt0053579", + "tt0113677", + "tt0056930", + "tt4372390", + "tt0105046", + "tt0049434", + "tt0080025", + "tt0065488", + "tt0360130", + "tt0068575", + "tt0067411", + "tt0039482", + "tt0053729", + "tt0107130", + "tt0076095", + "tt0139668", + "tt0052735", + "tt0061184", + "tt0058571", + "tt1703957", + "tt0118768", + "tt0036092", + "tt0094606", + "tt0087001", + "tt0061789", + "tt7046826", + "tt0100395", + "tt0345061", + "tt0161492", + "tt0108122", + "tt0049966", + "tt0106449", + "tt6053438", + "tt0097100", + "tt1151410", + "tt0119501", + "tt0055100", + "tt3864024", + "tt0088760", + "tt0087594", + "tt0031311", + "tt1210359", + "tt0276329", + "tt3249478", + "tt7328908", + "tt6776572", + "tt2924392", + "tt0094620", + "tt1836212", + "tt6857166", + "tt0079714", + "tt0111309", + "tt0352230", + "tt0087482", + "tt0973785", + "tt0084272", + "tt0047152", + "tt0106673", + "tt0109506", + "tt0151785", + "tt3121474", + "tt4532428", + "tt0098206", + "tt0113243", + "tt0096018", + "tt0243655", + "tt7974772", + "tt3720058", + "tt0066996", + "tt0070674", + "tt0199354", + "tt0055253", + "tt4876334", + "tt0077357", + "tt0071628", + "tt0189584", + "tt0081633", + "tt7675596", + "tt1576699", + "tt2028550", + "tt0118111", + "tt0352277", + "tt0116650", + "tt0433412", + "tt1031241", + "tt1362103", + "tt0054135", + "tt7566244", + "tt0093693", + "tt3364264", + "tt0060164", + "tt0867334", + "tt0020876", + "tt0064688", + "tt0055047", + "tt0264365", + "tt0436364", + "tt0070556", + "tt0062805", + "tt1614408", + "tt0032840", + "tt1273241", + "tt1462758", + "tt1307065", + "tt0059245", + "tt0317132", + "tt1281966", + "tt0052902", + "tt0120199", + "tt1553659", + "tt0084171", + "tt0483154", + "tt5540992", + "tt0055623", + "tt0114666", + "tt0110997", + "tt0059219", + "tt3739110", + "tt3203528", + "tt0327210", + "tt1425253", + "tt0057569", + "tt0069464", + "tt0352394", + "tt0067620", + "tt7167658", + "tt0429591", + "tt0059727", + "tt0051411", + "tt0089308", + "tt7335008", + "tt7341610", + "tt0366762", + "tt7762772", + "tt6608976", + "tt6697760", + "tt0103184", + "tt8236394", + "tt0053041", + "tt0083133", + "tt0380787", + "tt1206082", + "tt0106453", + "tt1554092", + "tt6740584", + "tt1104779", + "tt6410564", + "tt1461677", + "tt0194710", + "tt7220754", + "tt0056983", + "tt1474276", + "tt0067741", + "tt1129442", + "tt2164468", + "tt0091282", + "tt0165929", + "tt0068509", + "tt1434435", + "tt5607714", + "tt1925479", + "tt6190198", + "tt1971403", + "tt0087932", + "tt6383726", + "tt0095288", + "tt0065243", + "tt0071523", + "tt0066540", + "tt0059252", + "tt1641975", + "tt0079550", + "tt0120769", + "tt1137450", + "tt0364990", + "tt0068596", + "tt0462396", + "tt3316302", + "tt0125806", + "tt6173644", + "tt0083628", + "tt0109578", + "tt0448154", + "tt7106414", + "tt0092857", + "tt3464744", + "tt4071086", + "tt0083111", + "tt3717068", + "tt5061162", + "tt4319082", + "tt1381508", + "tt0486541", + "tt2185384", + "tt0844794", + "tt2630336", + "tt0109093", + "tt0095690", + "tt6777370", + "tt1024744", + "tt0260987", + "tt0339840", + "tt0056800", + "tt2387513", + "tt0090094", + "tt6495770", + "tt0268978", + "tt6270524", + "tt1559033", + "tt0089839", + "tt0054997", + "tt2370230", + "tt0082307", + "tt0091647", + "tt0118843", + "tt0356470", + "tt1470021", + "tt0075232", + "tt3465074", + "tt5657280", + "tt1558246", + "tt0123964", + "tt0104040", + "tt6195094", + "tt0097613", + "tt4412082", + "tt0847182", + "tt1504403", + "tt0060904", + "tt1352388", + "tt1253596", + "tt0063157", + "tt0099409", + "tt1148779", + "tt1414378", + "tt5085924", + "tt1438534", + "tt1528718", + "tt5344086", + "tt0092964", + "tt0242622", + "tt4575328", + "tt1020559", + "tt6452332", + "tt0065421", + "tt1629439", + "tt0450336", + "tt1590950", + "tt1727816", + "tt0078935", + "tt5170810", + "tt0858411", + "tt1664894", + "tt1386925", + "tt1410051", + "tt0112541", + "tt1548635", + "tt1781775", + "tt7197298", + "tt1714208", + "tt1764726", + "tt0053935", + "tt0034570", + "tt0025493", + "tt1528312", + "tt0024763", + "tt0039178", + "tt1524134", + "tt0026739", + "tt1422800", + "tt1727358", + "tt2092011", + "tt6210996", + "tt2113809", + "tt1711366", + "tt7238392", + "tt1764198", + "tt1606180", + "tt1590089", + "tt0062377", + "tt1273207", + "tt1623765", + "tt1795702", + "tt0112744", + "tt0103855", + "tt1700844", + "tt1515199", + "tt1642665", + "tt6738136", + "tt0932669", + "tt1658820", + "tt0082427", + "tt5961906", + "tt0025004", + "tt0118308", + "tt1788391", + "tt0077280", + "tt0066122", + "tt0026014", + "tt1727258", + "tt0028873", + "tt1905040", + "tt0063443", + "tt2076897", + "tt0082933", + "tt6172666", + "tt6539470", + "tt1172233", + "tt0042876", + "tt0060841", + "tt0108255", + "tt0047191", + "tt4847546", + "tt0031750", + "tt4103724", + "tt1965065", + "tt1691453", + "tt0033677", + "tt0040474", + "tt0049369", + "tt0054989", + "tt0070656", + "tt0064379", + "tt0050438", + "tt0082484", + "tt0072233", + "tt0080707", + "tt0053677", + "tt0089913", + "tt5610554", + "tt1588398", + "tt0033555", + "tt0062037", + "tt0074991", + "tt0066518", + "tt0030696", + "tt0084234", + "tt0027428", + "tt0054790", + "tt0026184", + "tt0031000", + "tt0028575", + "tt0031133", + "tt0032416", + "tt1181795", + "tt0033554", + "tt0096866", + "tt0497465", + "tt5961314", + "tt0032415", + "tt0354766", + "tt1836808", + "tt0068284", + "tt1002992", + "tt1422136", + "tt2436452", + "tt1440161", + "tt0057226", + "tt0056277", + "tt2902898", + "tt0062833", + "tt1809287", + "tt0068503", + "tt1760967", + "tt0057919", + "tt1602472", + "tt1594917", + "tt5175970", + "tt0059014", + "tt1440732", + "tt4198316", + "tt1042877", + "tt2061712", + "tt0060548", + "tt0049317", + "tt0456144", + "tt5859238", + "tt1767272", + "tt0358082", + "tt0186975", + "tt0465538", + "tt0795438", + "tt0800240", + "tt1920860", + "tt0120894", + "tt1111948", + "tt0493464", + "tt0482599", + "tt3104304", + "tt0416212", + "tt0949731", + "tt1023111", + "tt0981227", + "tt0864761", + "tt2646378", + "tt0852713", + "tt2192016", + "tt0078504", + "tt1073498", + "tt0831887", + "tt0104438", + "tt0029608", + "tt0483607", + "tt0420238", + "tt7529472", + "tt0430922", + "tt0286106", + "tt6645154", + "tt5894846", + "tt0084266", + "tt0817538", + "tt0342769", + "tt0106386", + "tt0048380", + "tt0031608", + "tt0424908", + "tt0995039", + "tt5078188", + "tt0469903", + "tt0033891", + "tt2246953", + "tt1791614", + "tt5882982", + "tt6295898", + "tt0057578", + "tt0119891", + "tt0074739", + "tt0280590", + "tt0145734", + "tt0164212", + "tt0481536", + "tt0087981", + "tt1393742", + "tt0333766", + "tt1129381", + "tt1122775", + "tt0142342", + "tt3063364", + "tt0098180", + "tt0076162", + "tt2114504", + "tt0942384", + "tt0041594", + "tt0057227", + "tt0047148", + "tt0120679", + "tt1231586", + "tt1801552", + "tt0186894", + "tt0048314", + "tt0133046", + "tt0437857", + "tt0274558", + "tt0114660", + "tt0031377", + "tt0301199", + "tt0124179", + "tt0880578", + "tt1315981", + "tt0067418", + "tt0064539", + "tt1583421", + "tt4034228", + "tt2494280", + "tt1323598", + "tt1153040", + "tt6000478", + "tt0095188", + "tt0368563", + "tt1114680", + "tt0117603", + "tt0273517", + "tt1122836", + "tt0091064", + "tt0114287", + "tt0490084", + "tt0075648", + "tt1072437", + "tt1046173", + "tt1238291", + "tt1667321", + "tt0022913", + "tt0032353", + "tt0087957", + "tt8362726", + "tt0875575", + "tt0025028", + "tt1324027", + "tt0067104", + "tt0091474", + "tt0080024", + "tt1303828", + "tt1274273", + "tt0819714", + "tt0071431", + "tt0028203", + "tt0049264", + "tt1226236", + "tt1134664", + "tt0105643", + "tt1200272", + "tt5099660", + "tt7284066", + "tt0054443", + "tt0103759", + "tt0036776", + "tt5427194", + "tt1295072", + "tt5314118", + "tt0374102", + "tt4839414", + "tt3696126", + "tt0031299", + "tt0082186", + "tt0042848", + "tt0264323", + "tt0053622", + "tt0470055", + "tt0144964", + "tt4080768", + "tt0022639", + "tt0028872", + "tt0028757", + "tt0026144", + "tt0039174", + "tt0057254", + "tt5253754", + "tt0102034", + "tt0120484", + "tt1043860", + "tt0073812", + "tt8743180", + "tt0085255", + "tt0049922", + "tt0837106", + "tt0089670", + "tt1210039", + "tt0085384", + "tt0050197", + "tt0101590", + "tt1198403", + "tt1453245", + "tt0028767", + "tt1247704", + "tt0110027", + "tt0038549", + "tt0138524", + "tt0066026", + "tt0086980", + "tt0092530", + "tt0402910", + "tt2413516", + "tt0475394", + "tt0311361", + "tt1319743", + "tt0051196", + "tt0066832", + "tt1642193", + "tt0056262", + "tt0204946", + "tt1079980", + "tt0103035", + "tt1017464", + "tt1349482", + "tt0867295", + "tt0976246", + "tt1252380", + "tt0079103", + "tt0299981", + "tt0108593", + "tt0151073", + "tt1156173", + "tt1509109", + "tt1381512", + "tt0844330", + "tt1179947", + "tt0063715", + "tt0096511", + "tt0107362", + "tt0265662", + "tt0175680", + "tt0108187", + "tt0120109", + "tt0117621", + "tt8327396", + "tt0097531", + "tt0063032", + "tt1157605", + "tt1546036", + "tt2561546", + "tt0111156", + "tt0120111", + "tt0114418", + "tt0117620", + "tt0427528", + "tt0200550", + "tt0130018", + "tt0110255", + "tt0108108", + "tt0117622", + "tt7704710", + "tt0304415", + "tt0114417", + "tt0120110", + "tt2009606", + "tt0119345", + "tt0497137", + "tt0111157", + "tt0033254", + "tt0136376", + "tt0108107", + "tt6039294", + "tt0098022", + "tt0111158", + "tt4685806", + "tt0114416", + "tt7029854", + "tt1181849", + "tt0480002", + "tt0067809", + "tt0062380", + "tt3302706", + "tt0082748", + "tt0048339", + "tt0083550", + "tt3181920", + "tt3593046", + "tt0060736", + "tt0059269", + "tt0062737", + "tt0963178", + "tt3175038", + "tt3155242", + "tt0076504", + "tt1055366", + "tt0099710", + "tt2597718", + "tt1031280", + "tt2404299", + "tt0105391", + "tt0349683", + "tt0078767", + "tt0078158", + "tt0382992", + "tt0074281", + "tt0808244", + "tt0480242", + "tt0365737", + "tt2145829", + "tt1198138", + "tt0073778", + "tt6335734", + "tt2802136", + "tt3704050", + "tt2178470", + "tt0095709", + "tt1135487", + "tt5871318", + "tt0398375", + "tt5670152", + "tt0080861", + "tt1402488", + "tt1082853", + "tt0396707", + "tt0316396", + "tt0910936", + "tt0120890", + "tt7027850", + "tt2402101", + "tt0492956", + "tt0489237", + "tt0486578", + "tt1117563", + "tt1247692", + "tt0292963", + "tt1318044", + "tt2937898", + "tt0473356", + "tt4607748", + "tt0821642", + "tt1095174", + "tt1486193", + "tt0795421", + "tt0841046", + "tt1045778", + "tt0811080", + "tt1226774", + "tt1034303", + "tt0988595", + "tt0467200", + "tt0858479", + "tt0096933", + "tt1033643", + "tt0445953", + "tt1135985", + "tt0857191", + "tt0366548", + "tt5466186", + "tt0457297", + "tt0951216", + "tt0791309", + "tt0481797", + "tt0074963", + "tt0489664", + "tt1014775", + "tt0432402", + "tt1155056", + "tt0059319", + "tt1068680", + "tt1075417", + "tt0467406", + "tt0806147", + "tt4967220", + "tt1129423", + "tt0358273", + "tt0780567", + "tt1313113", + "tt0954981", + "tt0058777", + "tt0988849", + "tt1023500", + "tt1235124", + "tt1082601", + "tt1121931", + "tt0808279", + "tt0758771", + "tt1563742", + "tt1700808", + "tt0423294", + "tt0457400", + "tt0029606", + "tt0815178", + "tt0495208", + "tt0479968", + "tt0758786", + "tt1130088", + "tt1877543", + "tt0768218", + "tt1282041", + "tt0844708", + "tt0901476", + "tt1093908", + "tt0420015", + "tt0870111", + "tt0780571", + "tt1637687", + "tt1323562", + "tt0435528", + "tt1020885", + "tt0393162", + "tt0373051", + "tt1554414", + "tt0375210", + "tt0074954", + "tt1127715", + "tt0381849", + "tt0865556", + "tt0964587", + "tt0839980", + "tt0452625", + "tt1226271", + "tt1131749", + "tt1151922", + "tt0426592", + "tt3302962", + "tt0246894", + "tt0051214", + "tt5545254", + "tt0307072", + "tt2186848", + "tt0416508", + "tt1314177", + "tt0896866", + "tt0284450", + "tt4940416", + "tt0760329", + "tt1182609", + "tt0072281", + "tt2901896", + "tt0050317", + "tt0094057", + "tt2049483", + "tt0429715", + "tt0393394", + "tt1764581", + "tt1990216", + "tt1291150", + "tt0790665", + "tt1331022", + "tt0800367", + "tt1151928", + "tt0902281", + "tt1045191", + "tt6735670", + "tt0094846", + "tt1090360", + "tt1109583", + "tt0076150", + "tt0063581", + "tt0477095", + "tt0057187", + "tt0090060", + "tt1076252", + "tt1183908", + "tt0096764", + "tt7479784", + "tt1185431", + "tt1731697", + "tt0410097", + "tt0087075", + "tt0207201", + "tt0799934", + "tt0480025", + "tt0372873", + "tt1300853", + "tt6399158", + "tt1126596", + "tt0379889", + "tt0445946", + "tt1294699", + "tt0403407", + "tt2467046", + "tt0054756", + "tt0067810", + "tt0335438", + "tt0455538", + "tt0465602", + "tt2518190", + "tt0402743", + "tt3748540", + "tt1068678", + "tt0104145", + "tt0418819", + "tt0219965", + "tt0097138", + "tt8269140", + "tt0099740", + "tt3144226", + "tt0115624", + "tt0068722", + "tt0787475", + "tt1020530", + "tt0416236", + "tt6170804", + "tt0057577", + "tt0499487", + "tt0385752", + "tt0070034", + "tt0137494", + "tt0223208", + "tt0449010", + "tt2039338", + "tt0037099", + "tt1093369", + "tt6772950", + "tt0478073", + "tt0901507", + "tt0037098", + "tt0355295", + "tt0427392", + "tt0292506", + "tt0092772", + "tt0099703", + "tt0035096", + "tt0785012", + "tt0032818", + "tt5805470", + "tt0103772", + "tt0092106", + "tt0427969", + "tt0093137", + "tt0409182", + "tt0074452", + "tt1185264", + "tt0416315", + "tt0446013", + "tt0425413", + "tt0443456", + "tt0210065", + "tt0461770", + "tt0079117", + "tt3037110", + "tt1901024", + "tt3079752", + "tt0419372", + "tt6904062", + "tt0056943", + "tt1172206", + "tt0093605", + "tt7875604", + "tt0188041", + "tt5194504", + "tt2382298", + "tt0102721", + "tt0057693", + "tt0087414", + "tt2784678", + "tt0073026", + "tt0340163", + "tt0061523", + "tt0078056", + "tt0095304", + "tt0094612", + "tt4976192", + "tt6596796", + "tt4494230", + "tt0100530", + "tt0072653", + "tt1276105", + "tt0762073", + "tt5958060", + "tt2796836", + "tt0073113", + "tt0042855", + "tt3480796", + "tt0091306", + "tt1664825", + "tt0454846", + "tt0821486", + "tt2420756", + "tt0065566", + "tt2172584", + "tt0068853", + "tt1661820", + "tt1403241", + "tt2693664", + "tt2073086", + "tt0077539", + "tt0054084", + "tt2924488", + "tt0100842", + "tt0082118", + "tt0053219", + "tt0330229", + "tt0454776", + "tt3344922", + "tt0064030", + "tt0060121", + "tt0098724", + "tt0105477", + "tt0110763", + "tt0053796", + "tt0114214", + "tt1999987", + "tt2193418", + "tt0049055", + "tt8159584", + "tt0338466", + "tt1174042", + "tt0282209", + "tt0260866", + "tt1876330", + "tt3199006", + "tt0384286", + "tt2276069", + "tt0488988", + "tt0117705", + "tt0029611", + "tt3688342", + "tt1839642", + "tt2404461", + "tt0878814", + "tt6989180", + "tt6850968", + "tt0104888", + "tt0065744", + "tt0081562", + "tt0060445", + "tt7167602", + "tt0066767", + "tt0069697", + "tt0067987", + "tt2006810", + "tt0236493", + "tt0102070", + "tt0246989", + "tt0066344", + "tt1726589", + "tt0089791", + "tt1233334", + "tt1312254", + "tt1435513", + "tt0080453", + "tt1130964", + "tt0105691", + "tt0305669", + "tt1212454", + "tt0097714", + "tt0045109", + "tt0111590", + "tt1296373", + "tt1227787", + "tt0117979", + "tt1674775", + "tt1407065", + "tt0126250", + "tt0345551", + "tt0062886", + "tt0098282", + "tt0160611", + "tt0117628", + "tt4983630", + "tt5495726", + "tt0200800", + "tt0101985", + "tt6288650", + "tt1450330", + "tt0112585", + "tt2075340", + "tt0027478", + "tt5432188", + "tt0304262", + "tt2661382", + "tt1538221", + "tt0104254", + "tt1213929", + "tt5517370", + "tt0056195", + "tt0104627", + "tt0104427", + "tt7160070", + "tt0064940", + "tt1720182", + "tt0431420", + "tt0800095", + "tt0498360", + "tt2359137", + "tt1315216", + "tt1064884", + "tt0905345", + "tt5140248", + "tt0108551", + "tt0118956", + "tt1894561", + "tt1921070", + "tt0093277", + "tt2023453", + "tt0269341", + "tt1270277", + "tt5846644", + "tt1196141", + "tt1368491", + "tt0811137", + "tt0036733", + "tt1022603", + "tt1650043", + "tt0051750", + "tt0069332", + "tt1449175", + "tt1628055", + "tt2905082", + "tt0120768", + "tt5083736", + "tt5119116", + "tt4341582", + "tt0051808", + "tt0049117", + "tt1015987", + "tt3168230", + "tt1386588", + "tt0859635", + "tt1078940", + "tt1613750", + "tt0120696", + "tt0404390", + "tt1242545", + "tt0402399", + "tt0065588", + "tt1135503", + "tt0913354", + "tt0158983", + "tt0410403", + "tt1465499", + "tt0252076", + "tt1236484", + "tt1533084", + "tt0494864", + "tt1142433", + "tt3894558", + "tt0811106", + "tt1106860", + "tt1241017", + "tt0796212", + "tt1037004", + "tt1294136", + "tt1131747", + "tt0093886", + "tt0155267", + "tt6802896", + "tt6791096", + "tt1027762", + "tt2137359", + "tt1487275", + "tt0061994", + "tt0100456", + "tt1884457", + "tt0082979", + "tt0883995", + "tt1397498", + "tt0299658", + "tt2707810", + "tt0072354", + "tt5104604", + "tt0385990", + "tt1523372", + "tt1063056", + "tt0412080", + "tt0441774", + "tt1228933", + "tt0912597", + "tt1104806", + "tt0823635", + "tt0365109", + "tt0922547", + "tt1010055", + "tt0765458", + "tt0887719", + "tt0461703", + "tt0119051", + "tt1392197", + "tt0037627", + "tt1125929", + "tt0070684", + "tt0013750", + "tt4026570", + "tt8013990", + "tt0492754", + "tt0384806", + "tt0901504", + "tt0098321", + "tt1205535", + "tt1286147", + "tt0063063", + "tt1146350", + "tt0116483", + "tt0959329", + "tt5729348", + "tt1181919", + "tt3517306", + "tt5270948", + "tt0115736", + "tt1303902", + "tt1421051", + "tt1275861", + "tt0416496", + "tt1320296", + "tt0997152", + "tt0493421", + "tt0104558", + "tt1092082", + "tt0493424", + "tt0896923", + "tt0079946", + "tt0118845", + "tt0464799", + "tt7372728", + "tt0165798", + "tt0059607", + "tt0079642", + "tt0091406", + "tt0875025", + "tt1606339", + "tt0052225", + "tt0358294", + "tt4554212", + "tt0078480", + "tt5247704", + "tt1130981", + "tt1393746", + "tt1535495", + "tt0365686", + "tt4515762", + "tt4537986", + "tt0103305", + "tt4432006", + "tt5752360", + "tt0067950", + "tt4060006", + "tt0094812", + "tt0412019", + "tt0112288", + "tt1250777", + "tt0095776", + "tt0338337", + "tt1202522", + "tt0910905", + "tt0066473", + "tt1374992", + "tt0387877", + "tt1098356", + "tt1248971", + "tt0818165", + "tt0087544", + "tt0120863", + "tt6610574", + "tt0263101", + "tt1121096", + "tt0119432", + "tt1650554", + "tt0974613", + "tt0906734", + "tt4586626", + "tt3465026", + "tt7781732", + "tt0077869", + "tt1227931", + "tt4287470", + "tt0499537", + "tt0073629", + "tt1107860", + "tt0367479", + "tt0065019", + "tt0940656", + "tt1181920", + "tt0464041", + "tt0099348", + "tt0300471", + "tt3986820", + "tt0079540", + "tt0351977", + "tt1103275", + "tt0375063", + "tt1098327", + "tt5198670", + "tt0887971", + "tt0962711", + "tt0294357", + "tt0190374", + "tt0240510", + "tt0861689", + "tt1186830", + "tt0113451", + "tt1119191", + "tt0042004", + "tt0184526", + "tt1666700", + "tt0298203", + "tt5737582", + "tt0824747", + "tt1134674", + "tt0300556", + "tt1567609", + "tt5737536", + "tt0922642", + "tt0065547", + "tt0302886", + "tt1147687", + "tt2333508", + "tt1326260", + "tt1176724", + "tt0058142", + "tt1001548", + "tt1735485", + "tt0438052", + "tt0070109", + "tt1288635", + "tt1478338", + "tt1658837", + "tt0810945", + "tt0479537", + "tt1045670", + "tt0149261", + "tt1001508", + "tt0068833", + "tt0103786", + "tt0076297", + "tt0066167", + "tt0247745", + "tt0065509", + "tt0048919", + "tt0435623", + "tt4652532", + "tt0113228", + "tt0055774", + "tt0107050", + "tt0069109", + "tt0065150", + "tt0473488", + "tt1034302", + "tt0343135", + "tt6298600", + "tt0106266", + "tt4377864", + "tt3652862", + "tt1187064", + "tt0819755", + "tt1259571", + "tt0123122", + "tt0070169", + "tt5700176", + "tt5851786", + "tt1045772", + "tt0055278", + "tt0059896", + "tt1325004", + "tt0057809", + "tt0099892", + "tt0051776", + "tt2268433", + "tt0327137", + "tt0059399", + "tt1286537", + "tt0086022", + "tt0060095", + "tt0116996", + "tt1313104", + "tt0049004", + "tt0285742", + "tt2950418", + "tt0052700", + "tt0050699", + "tt6958212", + "tt0099373", + "tt0351817", + "tt0053645", + "tt0096926", + "tt6964172", + "tt0090274", + "tt3748512", + "tt0058997", + "tt0060355", + "tt6073176", + "tt0068168", + "tt0106965", + "tt0072856", + "tt0109446", + "tt0093713", + "tt0058263", + "tt0093648", + "tt3611002", + "tt0055719", + "tt0384642", + "tt8179218", + "tt5360996", + "tt0410650", + "tt0141897", + "tt0112443", + "tt0110216", + "tt6513656", + "tt0085615", + "tt0071706", + "tt5137986", + "tt6078840", + "tt2531344", + "tt0055558", + "tt0064961", + "tt0062472", + "tt0099743", + "tt0097626", + "tt0084116", + "tt0072274", + "tt6157626", + "tt0116778", + "tt8049858", + "tt0059448", + "tt0069029", + "tt0779276", + "tt4640206", + "tt0844894", + "tt0070013", + "tt0068448", + "tt0327679", + "tt0056217", + "tt0061024", + "tt0120841", + "tt0082158", + "tt5569344", + "tt0243155", + "tt4669264", + "tt0171359", + "tt0783238", + "tt0048545", + "tt0087909", + "tt0098061", + "tt0372588", + "tt4463816", + "tt0425601", + "tt0051055", + "tt0862846", + "tt0062952", + "tt0097815", + "tt0249751", + "tt0120751", + "tt2673812", + "tt0899128", + "tt0264616", + "tt0119738", + "tt0049261", + "tt0088100", + "tt7375578", + "tt0063458", + "tt5795086", + "tt0434139", + "tt4538916", + "tt0068156", + "tt5473090", + "tt0080603", + "tt0452637", + "tt0093771", + "tt3303310", + "tt0158714", + "tt0102138", + "tt0065377", + "tt0420223", + "tt0057427", + "tt1893195", + "tt0349825", + "tt5616294", + "tt3700038", + "tt0069427", + "tt0425061", + "tt0118694", + "tt0188674", + "tt6423776", + "tt0064505", + "tt1482459", + "tt0074156", + "tt0116209", + "tt0338763", + "tt2381941", + "tt8004552", + "tt0065168", + "tt0190332", + "tt6403680", + "tt0266308", + "tt0074896", + "tt0271668", + "tt0804529", + "tt0065622", + "tt8081748", + "tt0078109", + "tt0004936", + "tt0276830", + "tt0042530", + "tt0310793", + "tt1074929", + "tt0052738", + "tt0007476", + "tt0048605", + "tt1465533", + "tt0182260", + "tt0295018", + "tt0819785", + "tt0424205", + "tt8577370", + "tt6071534", + "tt0054428", + "tt8457294", + "tt0097050", + "tt8474090", + "tt6039372", + "tt0970411", + "tt0027511", + "tt0093640", + "tt0108147", + "tt0067756", + "tt0249462", + "tt0089208", + "tt0062168", + "tt0071502", + "tt0105417", + "tt0245712", + "tt0804516", + "tt0099329", + "tt0317198", + "tt0870090", + "tt0056371", + "tt0451079", + "tt0060908", + "tt0067866", + "tt6269658", + "tt0114576", + "tt0056264", + "tt0078916", + "tt0095953", + "tt0073461", + "tt0078034", + "tt0253556", + "tt0085482", + "tt1190539", + "tt0080661", + "tt1582248", + "tt0913445", + "tt1456472", + "tt0101640", + "tt0073012", + "tt0833557", + "tt1521090", + "tt0070849", + "tt0069920", + "tt0310775", + "tt0102803", + "tt0084390", + "tt0056058", + "tt0485947", + "tt0064679", + "tt0092699", + "tt0768120", + "tt0127723", + "tt1302067", + "tt0845046", + "tt0235198", + "tt0103767", + "tt0080902", + "tt0409681", + "tt0096160", + "tt0078721", + "tt0056193", + "tt7167630", + "tt1612774", + "tt0074958", + "tt1054606", + "tt0332280", + "tt0069945", + "tt0059113", + "tt0076725", + "tt1666186", + "tt0109686", + "tt1046183", + "tt0063285", + "tt0113118", + "tt0055184", + "tt0097162", + "tt0067328", + "tt3297382", + "tt1281374", + "tt0181984", + "tt0120891", + "tt6017172", + "tt0427998", + "tt0301727", + "tt5518756", + "tt1512685", + "tt0138704", + "tt0800039", + "tt0081071", + "tt1134629", + "tt1337057", + "tt0138946", + "tt0005074", + "tt0006313", + "tt0048507", + "tt0120188", + "tt1356864", + "tt4399952", + "tt0006177", + "tt0878835", + "tt0005542", + "tt6367558", + "tt3356434", + "tt8483628", + "tt0049223", + "tt6957170", + "tt6791074", + "tt6957104", + "tt0089755", + "tt0116477", + "tt7130994", + "tt3408558", + "tt6528098", + "tt6977830", + "tt1584016", + "tt0073582", + "tt0066279", + "tt0054167", + "tt0396269", + "tt6444838", + "tt2198824", + "tt0832266", + "tt0117666", + "tt1193138", + "tt0074102", + "tt4279116", + "tt0108333", + "tt0089603", + "tt0120877", + "tt5001456", + "tt0496634", + "tt0074211", + "tt1674771", + "tt0808357", + "tt0264472", + "tt0775539", + "tt1024255", + "tt1010035", + "tt0896815", + "tt6654316", + "tt0093010", + "tt0251127", + "tt0104952", + "tt5181852", + "tt1492820", + "tt6131672", + "tt0163818", + "tt5715874", + "tt0088011", + "tt0169547", + "tt4465438", + "tt7205938", + "tt0088258", + "tt1523267", + "tt0108525", + "tt0074851", + "tt0057012", + "tt1124039", + "tt0492044", + "tt1261862", + "tt0914863", + "tt0976051", + "tt0112461", + "tt0970452", + "tt3152624", + "tt1318514", + "tt0117577", + "tt3450958", + "tt0133152", + "tt2397535", + "tt0316356", + "tt1032819", + "tt5655222", + "tt5814592", + "tt3053228", + "tt1381418", + "tt1458169", + "tt5657846", + "tt5649144", + "tt1646987", + "tt0907657", + "tt5715410", + "tt4857264", + "tt4633690", + "tt5420886", + "tt3203606", + "tt0104684", + "tt5476182", + "tt1301990", + "tt1536537", + "tt2674454", + "tt3413018", + "tt1139592", + "tt0105793", + "tt5462602", + "tt1596363", + "tt5721088", + "tt4899370", + "tt5442430", + "tt0349903", + "tt1758810", + "tt2582782", + "tt3564472", + "tt4131800", + "tt0313542", + "tt6304162", + "tt2582502", + "tt0496806", + "tt0114369", + "tt0472062", + "tt0118928", + "tt6538416", + "tt0097775", + "tt6063050", + "tt0357413", + "tt0077631", + "tt0332379", + "tt1399683", + "tt0462538", + "tt0289765", + "tt0460791", + "tt0087182", + "tt0119488", + "tt0449467", + "tt0402022", + "tt0361862", + "tt1306980", + "tt0432283", + "tt0084649", + "tt1190536", + "tt0181875", + "tt0066434", + "tt0120601", + "tt0375912", + "tt6147260", + "tt1139668", + "tt0125439", + "tt0106856", + "tt0093821", + "tt0115012", + "tt1155705", + "tt0110475", + "tt1535616", + "tt0067992", + "tt0108037", + "tt0073486", + "tt1860213", + "tt0233469", + "tt0384793", + "tt1279935", + "tt1186367", + "tt1460743", + "tt1463188", + "tt1734433", + "tt1442571", + "tt1135084", + "tt0309698", + "tt0335266", + "tt0959337", + "tt0434409", + "tt1538401", + "tt0464154", + "tt0962736", + "tt1345525", + "tt1336617", + "tt1185616", + "tt0783233", + "tt0472043", + "tt1152836", + "tt1329101", + "tt1263670", + "tt1038686", + "tt0050562", + "tt1058017", + "tt0092239", + "tt5657856", + "tt4799066", + "tt4400994", + "tt6288250", + "tt0088847", + "tt0211933", + "tt1638002", + "tt7388562", + "tt1588865", + "tt0101798", + "tt0989757", + "tt1592873", + "tt0020269", + "tt0290382", + "tt0337563", + "tt0473705", + "tt0974661", + "tt0221809", + "tt0870984", + "tt1282140", + "tt0311289", + "tt0120784", + "tt1530983", + "tt1704573", + "tt1285016", + "tt0095734", + "tt1465840", + "tt7689052", + "tt0804497", + "tt1191111", + "tt1690953", + "tt6480442", + "tt3469046", + "tt0116695", + "tt1323594", + "tt2381991", + "tt0889583", + "tt1735898", + "tt3332064", + "tt0887883", + "tt1637706", + "tt0822832", + "tt0494238", + "tt1320261", + "tt1013860", + "tt0763831", + "tt8466734", + "tt1010048", + "tt1389137", + "tt6288694", + "tt3447810", + "tt1727776", + "tt3344680", + "tt0362511", + "tt0383010", + "tt3760922", + "tt1131724", + "tt1389139", + "tt5770620", + "tt2504580", + "tt0054642", + "tt0189810", + "tt1091722", + "tt0873886", + "tt4901756", + "tt0383028", + "tt8231086", + "tt1522296", + "tt1570728", + "tt2058673", + "tt2024544", + "tt2788732", + "tt4266076", + "tt3522806", + "tt0960731", + "tt3553976", + "tt3638960", + "tt1261945", + "tt0455824", + "tt1343727", + "tt4550098", + "tt2278388", + "tt0443272", + "tt4799050", + "tt0120338", + "tt1082807", + "tt1895587", + "tt4846232", + "tt0490215", + "tt1014763", + "tt0790628", + "tt1798684", + "tt1206543", + "tt1821658", + "tt2194499", + "tt3488710", + "tt1024715", + "tt2141753", + "tt1000774", + "tt1959490", + "tt1615065", + "tt1397280", + "tt2446042", + "tt0089503", + "tt0964517", + "tt0936501", + "tt0401729", + "tt0790636", + "tt2334873", + "tt1620680", + "tt5226436", + "tt0090904", + "tt0063771", + "tt0060138", + "tt1041804", + "tt3746824", + "tt1211956", + "tt6135348", + "tt3811244", + "tt0808151", + "tt1979320", + "tt1473832", + "tt2199571", + "tt1440129", + "tt2296777", + "tt2361509", + "tt1706593", + "tt1707386", + "tt3062096", + "tt2582802", + "tt3691740", + "tt3874544", + "tt0918940", + "tt1798709", + "tt1016290", + "tt4196776", + "tt0834902", + "tt1693989", + "tt3631112", + "tt3292154", + "tt1772230", + "tt0120783", + "tt1880313", + "tt2011257", + "tt6574146", + "tt4063178", + "tt5360952", + "tt6864864", + "tt1857913", + "tt2948160", + "tt3647498", + "tt8525148", + "tt2316411", + "tt3410054", + "tt3797142", + "tt3105468", + "tt0328538", + "tt2528814", + "tt2938956", + "tt2097298", + "tt4023894", + "tt1726592", + "tt2025690", + "tt4385888", + "tt1560139", + "tt1666185", + "tt0120910", + "tt5143890", + "tt3705822", + "tt4287320", + "tt0102719", + "tt2072233", + "tt1800302", + "tt2649554", + "tt1355631", + "tt2638144", + "tt1472584", + "tt2241351", + "tt1661275", + "tt2597892", + "tt1528854", + "tt6959734", + "tt4572792", + "tt2872518", + "tt3901826", + "tt1619029", + "tt0471041", + "tt0787524", + "tt4411596", + "tt7583464", + "tt4302938", + "tt4501244", + "tt4565520", + "tt7026672", + "tt6164502", + "tt6450186", + "tt1446147", + "tt6678874", + "tt3014866", + "tt3717490", + "tt5884230", + "tt5816682", + "tt5719700", + "tt4986134", + "tt4682786", + "tt2763304", + "tt1293847", + "tt2671706", + "tt5001718", + "tt2034800", + "tt1730768", + "tt1212428", + "tt1469304", + "tt5301662", + "tt2720826", + "tt5962210", + "tt4540710", + "tt3881784", + "tt2776878", + "tt0404364", + "tt0424136", + "tt5825380", + "tt0080836", + "tt1726738", + "tt4481414", + "tt0156588", + "tt5175450", + "tt4565400", + "tt4348012", + "tt3963816", + "tt5689068", + "tt5231726", + "tt4382824", + "tt5442456", + "tt1493842", + "tt0820466", + "tt0271946", + "tt1864288", + "tt0087623", + "tt1895315", + "tt1933667", + "tt0083530", + "tt1545097", + "tt2331047", + "tt0105665", + "tt1637688", + "tt5065822", + "tt0080339", + "tt3722614", + "tt6138228", + "tt3319730", + "tt0075314", + "tt0107048", + "tt0070723", + "tt6264954", + "tt4429194", + "tt3569230", + "tt1535109", + "tt2884018", + "tt0083866", + "tt1935897", + "tt1504320", + "tt3721954", + "tt1229360", + "tt4622512", + "tt0113725", + "tt5666304", + "tt0072684", + "tt4978710", + "tt0887143", + "tt1254978", + "tt0006206", + "tt0408664", + "tt0112922", + "tt0068004", + "tt0060543", + "tt0057207", + "tt0015163", + "tt0464038", + "tt0058080", + "tt0255067", + "tt7829490", + "tt0092546", + "tt4276820", + "tt1152822", + "tt0123948", + "tt0115005", + "tt0165078", + "tt1300563", + "tt0129167", + "tt0756683", + "tt0099685", + "tt3774694", + "tt4698684", + "tt0110413", + "tt0071853", + "tt2378507", + "tt0097165", + "tt5973032", + "tt3949660", + "tt0790770", + "tt4054952", + "tt4795124", + "tt0141098", + "tt5247022", + "tt5635086", + "tt2080374", + "tt5752606", + "tt3464902", + "tt0107065", + "tt6788942", + "tt2547210", + "tt5168192", + "tt4178092", + "tt1307873", + "tt0944835", + "tt1307002", + "tt0790769", + "tt3322364", + "tt3462710", + "tt1910605", + "tt6193424", + "tt6303866", + "tt4651520", + "tt0475290", + "tt4624424", + "tt2404233", + "tt2980210", + "tt3714626", + "tt1988591", + "tt0110891", + "tt0478311", + "tt0452608", + "tt5974388", + "tt0111756", + "tt1833637", + "tt0100935", + "tt1013743", + "tt1500491", + "tt6857988", + "tt3072482", + "tt6318848", + "tt2057392", + "tt3502786", + "tt2120120", + "tt3463106", + "tt2239876", + "tt2361317", + "tt0799949", + "tt1878870", + "tt2674426", + "tt5805752", + "tt4218696", + "tt0491203", + "tt3401882", + "tt6018306", + "tt1935194", + "tt3922818", + "tt3531824", + "tt4776998", + "tt1648190", + "tt0110322", + "tt5622412", + "tt4680182", + "tt0054047", + "tt0285823", + "tt0805570", + "tt0120802", + "tt2005151", + "tt4572514", + "tt1748197", + "tt2062700", + "tt5390504", + "tt6359956", + "tt6133130", + "tt2568862", + "tt5592248", + "tt5716464", + "tt5322012", + "tt0780595", + "tt0100240", + "tt0243609", + "tt4701724", + "tt0077572", + "tt0098439", + "tt0063736", + "tt0265208", + "tt2636522", + "tt1731701", + "tt3721964", + "tt6737766", + "tt1792543", + "tt0409184", + "tt0243133", + "tt0200192", + "tt7263974", + "tt1645080", + "tt1806910", + "tt2316465", + "tt1638355", + "tt0467197", + "tt1800241", + "tt0243585", + "tt1617661", + "tt2562232", + "tt3470600", + "tt0075222", + "tt1964418", + "tt0359950", + "tt5749570", + "tt0099653", + "tt1231277", + "tt0100405", + "tt0130623", + "tt0164912", + "tt2196055", + "tt0094737", + "tt1407053", + "tt1935300", + "tt0120888", + "tt0091167", + "tt2872718", + "tt3170832", + "tt0113071", + "tt3615952", + "tt2872732", + "tt0075968", + "tt1392214", + "tt1270761", + "tt0066495", + "tt1425928", + "tt0131646", + "tt1512235", + "tt0098258", + "tt2297164", + "tt0227445", + "tt8452534", + "tt3344694", + "tt1787067", + "tt0053602", + "tt0101258", + "tt0417976", + "tt0091530", + "tt0203019", + "tt1037850", + "tt1598822", + "tt2390962", + "tt0486655", + "tt0485863", + "tt0107614", + "tt0076141", + "tt1823664", + "tt1748179", + "tt0033253", + "tt3327994", + "tt0111438", + "tt6599742", + "tt0069516", + "tt0041855", + "tt0025617", + "tt0026768", + "tt3896102", + "tt0042998", + "tt7243686", + "tt0109836", + "tt0033107", + "tt0299045", + "tt0032263", + "tt0033980", + "tt0032539", + "tt3700338", + "tt0031106", + "tt0021746", + "tt0122933", + "tt0031108", + "tt0031107", + "tt3212232", + "tt0349710", + "tt0212338", + "tt2249081", + "tt8448708", + "tt8452342", + "tt2191332", + "tt0970866", + "tt0029927", + "tt0780511", + "tt4700248", + "tt0040820", + "tt3677412", + "tt0985694", + "tt0360717", + "tt0120749", + "tt3238502", + "tt5641916", + "tt0116830", + "tt8383152", + "tt1886493", + "tt0119395", + "tt0976238", + "tt0470398", + "tt4656810", + "tt5275780", + "tt0947037", + "tt3625152", + "tt1202517", + "tt0476848", + "tt6336356", + "tt3346224", + "tt0366985", + "tt1816597", + "tt3829170", + "tt3622332", + "tt3609402", + "tt3058674", + "tt5639354", + "tt2493486", + "tt0065173", + "tt0066006", + "tt1137470", + "tt3847958", + "tt1663655", + "tt8370066", + "tt4776564", + "tt0076935", + "tt0925248", + "tt4616014", + "tt0305210", + "tt0084869", + "tt5822148", + "tt7479314", + "tt3783812", + "tt3658772", + "tt0043041", + "tt0122748", + "tt2118624", + "tt0034172", + "tt0075718", + "tt7883022", + "tt3903852", + "tt5039822", + "tt0067235", + "tt0159293", + "tt0123979", + "tt4382872", + "tt0077668", + "tt0088828", + "tt5370442", + "tt0082199", + "tt0200073", + "tt4872162", + "tt3832096", + "tt0114996", + "tt0448157", + "tt4530884", + "tt0112778", + "tt4862468", + "tt0027260", + "tt0074501", + "tt0031047", + "tt2237324", + "tt0066532", + "tt2332883", + "tt0049833", + "tt0360486", + "tt3850544", + "tt4642044", + "tt1214962", + "tt0095250", + "tt1502404", + "tt3286484", + "tt0356910", + "tt0093389", + "tt0118929", + "tt5049302", + "tt0119094", + "tt0187078", + "tt1410063", + "tt3381008", + "tt7392212", + "tt1864461", + "tt3027644", + "tt0120591", + "tt5904244", + "tt3838992", + "tt2048875", + "tt5639650", + "tt4444762", + "tt4969672", + "tt1190080", + "tt0112573", + "tt6964896", + "tt2537176", + "tt0077713", + "tt2918606", + "tt1996310", + "tt7451284", + "tt4935158", + "tt0080920", + "tt5842624", + "tt1544608", + "tt0034175", + "tt6802308", + "tt3563262", + "tt4687782", + "tt7203810", + "tt3113696", + "tt0051484", + "tt0019374", + "tt4578118", + "tt1242432", + "tt0027978", + "tt1935302", + "tt0194201", + "tt2669336", + "tt1515091", + "tt0085852", + "tt1470827", + "tt3450650", + "tt8184850", + "tt2555736", + "tt3172532", + "tt2637294", + "tt3850214", + "tt1869716", + "tt0120856", + "tt5052214", + "tt0161970", + "tt0082245", + "tt2870648", + "tt4104054", + "tt1579951", + "tt4874206", + "tt1594972", + "tt3471098", + "tt2582496", + "tt8152638", + "tt1437358", + "tt0945513", + "tt7672188", + "tt2624866", + "tt3142232", + "tt1531924", + "tt3882082", + "tt0105104", + "tt0770802", + "tt2717822", + "tt4824308", + "tt0450426", + "tt3717252", + "tt3089388", + "tt0101428", + "tt2978102", + "tt5836866", + "tt5471654", + "tt4957538", + "tt0080964", + "tt6456222", + "tt2822672", + "tt6892206", + "tt0386862", + "tt0044671", + "tt6786306", + "tt4451006", + "tt3174918", + "tt3321300", + "tt6015328", + "tt1524930", + "tt4347236", + "tt4818478", + "tt2393845", + "tt3064298", + "tt4477536", + "tt0903657", + "tt1534085", + "tt0287978", + "tt1959438", + "tt1243974", + "tt2334733", + "tt3675568", + "tt1735907", + "tt3294200", + "tt3832914", + "tt1178665", + "tt7048622", + "tt2140037", + "tt6293042", + "tt1641841", + "tt2510894", + "tt4594834", + "tt2752758", + "tt6003368", + "tt1371150", + "tt1002563", + "tt0060415", + "tt6951892", + "tt0443465", + "tt0896872", + "tt1506999", + "tt8342748", + "tt0116250", + "tt0028124", + "tt0062365", + "tt0056860", + "tt0030612", + "tt2625810", + "tt0028127", + "tt1762399", + "tt0343996", + "tt5831402", + "tt0119683", + "tt0377981", + "tt1488555", + "tt6183180", + "tt0028847", + "tt0030667", + "tt5532370", + "tt1464540", + "tt1592525", + "tt6799636", + "tt0068528", + "tt5547910", + "tt1727770", + "tt0120873", + "tt0119707", + "tt0120889", + "tt0129290", + "tt0120815", + "tt1219289", + "tt2084970", + "tt1153546", + "tt5117670", + "tt0102370", + "tt5059782", + "tt0383222", + "tt1568334", + "tt7642326", + "tt0099731", + "tt3919598", + "tt1093906", + "tt0098067", + "tt0101775", + "tt0492466", + "tt0354899", + "tt4986098", + "tt0099938", + "tt0099422", + "tt0090180", + "tt0110366", + "tt3741632", + "tt0071604", + "tt0476735", + "tt0113117", + "tt0112579", + "tt0107322", + "tt6086082", + "tt0104231", + "tt0102926", + "tt0112715", + "tt0082783", + "tt0107798", + "tt0265459", + "tt0140352", + "tt5710688", + "tt0090633", + "tt0057115", + "tt4652650", + "tt0084855", + "tt5085522", + "tt0134273", + "tt1171701", + "tt0133952", + "tt0488905", + "tt0368008", + "tt0218839", + "tt0075265", + "tt0314353", + "tt0825236", + "tt8271714", + "tt0376968", + "tt1599348", + "tt0151804", + "tt0183649", + "tt0266987", + "tt0080360", + "tt0462504", + "tt0078073", + "tt0118880", + "tt0200465", + "tt0159273", + "tt6987760", + "tt0087985", + "tt1924435", + "tt0062711", + "tt0084296", + "tt1178663", + "tt1728217", + "tt0377107", + "tt0172495", + "tt0117500", + "tt0048728", + "tt0256380", + "tt0112697", + "tt1987018", + "tt1582244", + "tt1724962", + "tt0151738", + "tt1462667", + "tt0095519", + "tt1646980", + "tt3477480", + "tt5283288", + "tt0397078", + "tt1124052", + "tt0160862", + "tt6752848", + "tt0414931", + "tt0074084", + "tt7086706", + "tt0109635", + "tt1382642", + "tt0470883", + "tt0090952", + "tt0113153", + "tt4799064", + "tt1587729", + "tt0098694", + "tt0370986", + "tt6427854", + "tt3121200", + "tt0261983", + "tt0065119", + "tt0096461", + "tt0499141", + "tt0112817", + "tt1345834", + "tt0882978", + "tt0165499", + "tt0437777", + "tt1232200", + "tt0095631", + "tt0073453", + "tt0114478", + "tt0190590", + "tt1694019", + "tt0055310", + "tt0068207", + "tt0076855", + "tt0047573", + "tt0066808", + "tt0076666", + "tt5294550", + "tt0110478", + "tt1290138", + "tt0341495", + "tt1716772", + "tt0078249", + "tt0353969", + "tt0101605", + "tt5154288", + "tt0437800", + "tt5796516", + "tt0104573", + "tt3553378", + "tt0485976", + "tt5934402", + "tt0101452", + "tt0110443", + "tt5856594", + "tt2261287", + "tt4537888", + "tt6013154", + "tt0089886", + "tt1412386", + "tt0104348", + "tt0059170", + "tt0106611", + "tt4779026", + "tt0124901", + "tt0064177", + "tt1330607", + "tt4731008", + "tt1310656", + "tt2364897", + "tt0113540", + "tt1611818", + "tt4669986", + "tt0062467", + "tt1590193", + "tt0073918", + "tt2382009", + "tt0482930", + "tt1686784", + "tt5073756", + "tt2076372", + "tt4444798", + "tt3278330", + "tt0101889", + "tt7448180", + "tt5645536", + "tt0995868", + "tt0101410", + "tt0498311", + "tt8295586", + "tt1937390", + "tt4351548", + "tt4552298", + "tt1055300", + "tt0100963", + "tt4257926", + "tt0053459", + "tt0097366", + "tt0090190", + "tt0015136", + "tt0996605", + "tt0097235", + "tt0110456", + "tt0062229", + "tt2017561", + "tt0035753", + "tt3326262", + "tt1813774", + "tt0088658", + "tt1259528", + "tt7311634", + "tt0057710", + "tt0041842", + "tt2133196", + "tt6149818", + "tt0047296", + "tt1185594", + "tt7133554", + "tt1336600", + "tt0105287", + "tt0096320", + "tt2056771", + "tt0114394", + "tt1330525", + "tt6143568", + "tt0386005", + "tt3066630", + "tt5625414", + "tt3543918", + "tt2169322", + "tt0112857", + "tt0058385", + "tt0095348", + "tt0082449", + "tt1681665", + "tt3165612", + "tt2608224", + "tt0080455", + "tt2925278", + "tt0434008", + "tt2332707", + "tt0073766", + "tt2544120", + "tt3395184", + "tt0092929", + "tt2142883", + "tt1216496", + "tt4702346", + "tt4192740", + "tt4003046", + "tt0369060", + "tt0374339", + "tt3235888", + "tt0102915", + "tt1424310", + "tt0338564", + "tt0089461", + "tt0098188", + "tt0107474", + "tt0084917", + "tt3672742", + "tt7128042", + "tt0446059", + "tt0094336", + "tt0452039", + "tt0081070", + "tt6170506", + "tt0088334", + "tt0054357", + "tt6595896", + "tt0106918", + "tt0448011", + "tt0120399", + "tt0165710", + "tt1730764", + "tt0089908", + "tt5503472", + "tt6315872", + "tt1567437", + "tt1764577", + "tt0110308", + "tt0114279", + "tt1865505", + "tt6900092", + "tt0102492", + "tt0401445", + "tt0090181", + "tt0076590", + "tt0119978", + "tt0209470", + "tt0068559", + "tt1441953", + "tt0070585", + "tt0089853", + "tt0199725", + "tt0060921", + "tt0338852", + "tt1809398", + "tt0268995", + "tt1082093", + "tt0050798", + "tt5629524", + "tt0062042", + "tt0038120", + "tt2515134", + "tt0365683", + "tt2655934", + "tt7860890", + "tt0245574", + "tt6101820", + "tt0024368", + "tt0056023", + "tt0853096", + "tt0091557", + "tt0882789", + "tt4050646", + "tt1138002", + "tt0057083", + "tt0109839", + "tt0944849", + "tt0046936", + "tt6573444", + "tt7130262", + "tt0212826", + "tt2937112", + "tt5707304", + "tt0878674", + "tt0089470", + "tt0087910", + "tt1055362", + "tt0027311", + "tt2058107", + "tt0038984", + "tt0068442", + "tt0103112", + "tt1492723", + "tt1951181", + "tt4494382", + "tt1714915", + "tt1976000", + "tt6089564", + "tt0081698", + "tt0090555", + "tt0104237", + "tt0080437", + "tt0164334", + "tt0092654", + "tt5598102", + "tt2636806", + "tt0050468", + "tt0376541", + "tt0120632", + "tt0120866", + "tt0104070", + "tt1391092", + "tt0082934", + "tt0070917", + "tt1450321", + "tt0115685", + "tt0057129", + "tt0107943", + "tt0117008", + "tt6516480", + "tt0080549", + "tt0044442", + "tt6083648", + "tt0230030", + "tt0091431", + "tt1300851", + "tt0144117", + "tt7521400", + "tt0099558", + "tt2005384", + "tt0108160", + "tt0080365", + "tt0084707", + "tt0059749", + "tt0086425", + "tt0061619", + "tt0089941", + "tt0101921", + "tt0110598", + "tt0074860", + "tt0099797", + "tt6977240", + "tt0088161", + "tt0110074", + "tt0113862", + "tt0246677", + "tt0070903", + "tt0070239", + "tt0059260", + "tt0097240", + "tt0419749", + "tt0092263", + "tt2084989", + "tt0120324", + "tt0119099", + "tt6135042", + "tt6333074", + "tt0046912", + "tt0119822", + "tt0309987", + "tt5860084", + "tt0051878", + "tt5678110", + "tt0118971", + "tt0120787", + "tt0166896", + "tt0471042", + "tt1636826", + "tt4560748", + "tt1645170", + "tt0092513", + "tt8111210", + "tt0970179", + "tt0093105", + "tt1448755", + "tt7106928", + "tt5935704", + "tt4953758", + "tt1966359", + "tt0268126", + "tt1397514", + "tt0367027", + "tt5565634", + "tt0098606", + "tt0071615", + "tt4205320", + "tt2073058", + "tt1226229", + "tt3454856", + "tt1031928", + "tt0120789", + "tt5304464", + "tt0055247", + "tt0443701", + "tt0117318", + "tt0099077", + "tt0120595", + "tt0114558", + "tt0096446", + "tt3889156", + "tt5841344", + "tt0080745", + "tt0878804", + "tt0081534", + "tt0475293", + "tt0780504", + "tt0103893", + "tt0120179", + "tt1981677", + "tt2848292", + "tt1334260", + "tt0096928", + "tt1549572", + "tt0810900", + "tt1041829", + "tt6125690", + "tt0119313", + "tt4058122", + "tt0086066", + "tt0301470", + "tt7211972", + "tt0313737", + "tt0477071", + "tt0259711", + "tt0117913", + "tt0375679", + "tt0985699", + "tt0962726", + "tt0072973", + "tt2051879", + "tt0104257", + "tt0765443", + "tt0477302", + "tt1401152", + "tt0099371", + "tt1210166", + "tt3005560", + "tt0086200", + "tt2007993", + "tt0317648", + "tt5294966", + "tt1336608", + "tt0942385", + "tt0070820", + "tt3845670", + "tt5757738", + "tt0104797", + "tt0296042", + "tt1014809", + "tt4765284", + "tt1291584", + "tt7963218", + "tt0446029", + "tt1454523", + "tt1433528", + "tt0478044", + "tt0244479", + "tt2106476", + "tt0066763", + "tt1522857", + "tt0494271", + "tt0061536", + "tt0039739", + "tt1291566", + "tt0975684", + "tt6814080", + "tt2948166", + "tt5162658", + "tt0063555", + "tt0117894", + "tt3230162", + "tt2531334", + "tt0106301", + "tt1031932", + "tt0815092", + "tt1598538", + "tt5711148", + "tt4551318", + "tt0090565", + "tt0338751", + "tt6153962", + "tt0073580", + "tt0050123", + "tt1422675", + "tt0892255", + "tt5751998", + "tt0285531", + "tt0879870", + "tt0364385", + "tt4915672", + "tt4687358", + "tt0374569", + "tt0367913", + "tt1133985", + "tt0106332", + "tt2334649", + "tt8095034", + "tt8140738", + "tt5208216", + "tt1632708", + "tt6684714", + "tt0083789", + "tt1560747", + "tt1714206", + "tt0081059", + "tt2268016", + "tt5146068", + "tt1866249", + "tt2800038", + "tt1663143", + "tt0453562", + "tt1413495", + "tt1517260", + "tt1204342", + "tt0480239", + "tt1985017", + "tt5739586", + "tt1234719", + "tt1840417", + "tt1862079", + "tt5782146", + "tt1521197", + "tt1702439", + "tt3568002", + "tt0770703", + "tt1586265", + "tt1601913", + "tt0089378", + "tt0075686", + "tt4591310", + "tt1758692", + "tt1717715", + "tt1582507", + "tt1407050", + "tt0145660", + "tt5461956", + "tt7017474", + "tt3338436", + "tt7877382", + "tt0328828", + "tt1605630", + "tt0295178", + "tt0163651", + "tt0141926", + "tt0060490", + "tt0256009", + "tt0267626", + "tt0053143", + "tt0276816", + "tt0100814", + "tt1053859", + "tt0118655", + "tt0368891", + "tt0089767", + "tt0482606", + "tt0116253", + "tt0181865", + "tt0105690", + "tt5208950", + "tt6440810", + "tt4451458", + "tt0259685", + "tt2825240", + "tt1057500", + "tt0086383", + "tt0327056", + "tt0101026", + "tt0186566", + "tt0114781", + "tt0068699", + "tt2358891", + "tt0099739", + "tt0091187", + "tt0079182", + "tt0058946", + "tt6772820", + "tt0244316", + "tt0095497", + "tt0067959", + "tt8049772", + "tt0061101", + "tt0120603", + "tt0838221", + "tt0042644", + "tt6791730", + "tt0265666", + "tt0038531", + "tt0102511", + "tt0088987", + "tt0089343", + "tt0037610", + "tt0822827", + "tt4468740", + "tt4536540", + "tt0483979", + "tt3813916", + "tt5540188", + "tt0055032", + "tt0257106", + "tt3130082", + "tt0175142", + "tt0464762", + "tt0117905", + "tt5700672", + "tt2690634", + "tt0795461", + "tt1727388", + "tt1758830", + "tt0362120", + "tt0059646", + "tt0073540", + "tt0306047", + "tt5700648", + "tt0082085", + "tt0057565", + "tt0128445", + "tt1440266", + "tt0050825", + "tt0107653", + "tt6572702", + "tt1859650", + "tt0080979", + "tt0056327", + "tt0052561", + "tt0090967", + "tt1045658", + "tt0929425", + "tt0080855", + "tt0056923", + "tt0104454", + "tt1990314", + "tt5291976", + "tt1389096", + "tt6425734", + "tt2234155", + "tt1659337", + "tt1931533", + "tt2070717", + "tt1538403", + "tt1931435", + "tt1893256", + "tt1817273", + "tt5997928", + "tt2392748", + "tt1559547", + "tt2076220", + "tt1272878", + "tt1649419", + "tt2101341", + "tt1540128", + "tt5629964", + "tt1321870", + "tt2229499", + "tt2005374", + "tt0076618", + "tt0318403", + "tt4847952", + "tt0083791", + "tt1446192", + "tt4513316", + "tt0120131", + "tt1648179", + "tt0240684", + "tt0082406", + "tt0401398", + "tt6413410", + "tt0441773", + "tt1001526", + "tt0166813", + "tt1302011", + "tt0448694", + "tt0481499", + "tt0892782", + "tt0116583", + "tt4292554", + "tt0146316", + "tt0371606", + "tt0279967", + "tt1326972", + "tt0119282", + "tt0230011", + "tt0389790", + "tt0910934", + "tt0053285", + "tt0275847", + "tt1220719", + "tt5001754", + "tt1386932", + "tt0114148", + "tt0457993", + "tt2204080", + "tt0425637", + "tt0328880", + "tt7235270", + "tt1109624", + "tt1641638", + "tt2140373", + "tt0344864", + "tt0048280", + "tt2495118", + "tt4768776", + "tt3402110", + "tt5910280", + "tt2333804", + "tt0067587", + "tt2177771", + "tt2042568", + "tt6220406", + "tt1571249", + "tt2910814", + "tt0060230", + "tt7994012", + "tt0068359", + "tt1091191", + "tt5606538", + "tt1824204", + "tt2239832", + "tt5207262", + "tt0416213", + "tt1086772", + "tt2193215", + "tt2980706", + "tt2582320", + "tt7342204", + "tt2557490", + "tt4992060", + "tt0036403", + "tt0115988", + "tt1179031", + "tt4068586", + "tt1335975", + "tt5706568", + "tt2463288", + "tt2297031", + "tt5287168", + "tt0325703", + "tt1929263", + "tt0307141", + "tt0068326", + "tt2223990", + "tt5669936", + "tt2291540", + "tt0086486", + "tt2980648", + "tt2203939", + "tt2402157", + "tt2582846", + "tt2209418", + "tt1355630", + "tt2318092", + "tt2125435", + "tt1686821", + "tt1980929", + "tt1277953", + "tt0101862", + "tt0101540", + "tt0351283", + "tt7250358", + "tt0061452", + "tt0479952", + "tt4730706", + "tt1321511", + "tt4975280", + "tt0114465", + "tt3772612", + "tt0397535", + "tt6304046", + "tt6741160", + "tt3011960", + "tt0120746", + "tt0021530", + "tt4173170", + "tt0066914", + "tt1726888", + "tt3721112", + "tt5039860", + "tt3469798", + "tt1134854", + "tt0114194", + "tt6397426", + "tt3909336", + "tt0091867", + "tt1961649", + "tt0333780", + "tt0386140", + "tt1600524", + "tt0418689", + "tt0380510", + "tt0089218", + "tt0117998", + "tt0983193", + "tt0099052", + "tt0088939", + "tt4866448", + "tt0104691", + "tt6442978", + "tt4577050", + "tt0498380", + "tt0112851", + "tt0113749", + "tt0469494", + "tt4995790", + "tt6263642", + "tt0274166", + "tt0110632", + "tt0051378", + "tt0120655", + "tt0118842", + "tt1077258", + "tt6333094", + "tt1007028", + "tt1320304", + "tt0305357", + "tt1646114", + "tt5452964", + "tt0013933", + "tt1634122", + "tt5189828", + "tt5534434", + "tt5811808", + "tt1937149", + "tt0109445", + "tt0106489", + "tt2819862", + "tt5462326", + "tt0107554", + "tt0087843", + "tt0272690", + "tt0217505", + "tt0203119", + "tt4900708", + "tt0208988", + "tt0103791", + "tt4217392", + "tt0307901", + "tt0221027", + "tt0399146", + "tt5342650", + "tt0102526", + "tt0108399", + "tt5698496", + "tt1230168", + "tt7131870", + "tt0117509", + "tt4733228", + "tt5159414", + "tt4901306", + "tt1649444", + "tt1245112", + "tt0104868", + "tt1649443", + "tt1038988", + "tt0116000", + "tt0203009", + "tt1486185", + "tt0120791", + "tt3501112", + "tt0074094", + "tt4072418", + "tt0191397", + "tt0120762", + "tt2866360", + "tt5450084", + "tt4291600", + "tt1781896", + "tt3567666", + "tt2090465", + "tt2446980", + "tt6273736", + "tt1352824", + "tt3540136", + "tt4694544", + "tt0395169", + "tt3554178", + "tt7056732", + "tt5722508", + "tt6599340", + "tt0128442", + "tt4016934", + "tt0120917", + "tt7245176", + "tt2174750", + "tt1403865", + "tt6878038", + "tt1753383", + "tt0049782", + "tt3579698", + "tt0033408", + "tt0817177", + "tt0066580", + "tt2252760", + "tt0112471", + "tt1542344", + "tt0024865", + "tt3415992", + "tt0082198", + "tt0054890", + "tt5834660", + "tt0362270", + "tt4283962", + "tt0046000", + "tt0035238", + "tt0053601", + "tt6083388", + "tt6772678", + "tt0094898", + "tt1024648", + "tt0133240", + "tt0109040", + "tt0115491", + "tt2082221", + "tt2172934", + "tt0071411", + "tt0050212", + "tt0056541", + "tt0044687", + "tt0120855", + "tt5866930", + "tt0112281", + "tt6777338", + "tt0061652", + "tt0203953", + "tt0383717", + "tt0042449", + "tt0059737", + "tt0040613", + "tt0063325", + "tt0062974", + "tt3859272", + "tt0025039", + "tt0051732", + "tt0059453", + "tt0264464", + "tt0486292", + "tt0035770", + "tt0059039", + "tt2191701", + "tt0479521", + "tt0061525", + "tt0083717", + "tt1754656", + "tt0054390", + "tt0037593", + "tt6203570", + "tt7525942", + "tt4842814", + "tt0052702", + "tt0049170", + "tt0910555", + "tt0374887", + "tt0059298", + "tt0042369", + "tt0101695", + "tt0039615", + "tt0085529", + "tt0319728", + "tt6039532", + "tt0054447", + "tt1621817", + "tt4273292", + "tt0381681", + "tt5082418", + "tt1095196", + "tt0071999", + "tt5084170", + "tt4518962", + "tt0071635", + "tt0039155", + "tt0119217", + "tt4005402", + "tt1375670", + "tt0054330", + "tt0046065", + "tt4465564", + "tt0063688", + "tt1499658", + "tt2381111", + "tt2869728", + "tt2170439", + "tt6553448", + "tt3174376", + "tt2965466", + "tt2653370", + "tt4527224", + "tt0243794", + "tt5066056", + "tt0064546", + "tt4805316", + "tt0049531", + "tt2989326", + "tt0089960", + "tt1390411", + "tt4438848", + "tt2347411", + "tt0166924", + "tt7272984", + "tt2567026", + "tt2865120", + "tt4412268", + "tt4303340", + "tt2567038", + "tt3553442", + "tt1712261", + "tt0106697", + "tt2180579", + "tt0062384", + "tt5912024", + "tt0114388", + "tt4383288", + "tt4587656", + "tt5560592", + "tt4536768", + "tt2387495", + "tt2253939", + "tt7924820", + "tt0106677", + "tt4729560", + "tt1212419", + "tt0075675", + "tt0162346", + "tt0097368", + "tt0099005", + "tt5126922", + "tt0083618", + "tt0405159", + "tt1663661", + "tt0092965", + "tt0104036", + "tt6237612", + "tt5633706", + "tt6511676", + "tt5999770", + "tt1205489", + "tt0058182", + "tt1018765", + "tt0078841", + "tt0274812", + "tt0087175", + "tt0093437", + "tt0067065", + "tt0122690", + "tt0061722", + "tt0119874", + "tt5023260", + "tt0810819", + "tt6836772", + "tt0368794", + "tt5226984", + "tt5133392", + "tt2101473", + "tt0120660", + "tt6835836", + "tt3715320", + "tt3481634", + "tt7944378", + "tt3548978", + "tt1691916", + "tt1340800", + "tt3321470", + "tt1212450", + "tt2083383", + "tt0119174", + "tt1028528", + "tt0479143", + "tt3419906", + "tt7914148", + "tt1083452", + "tt4486986", + "tt0107977", + "tt0116040", + "tt0329774", + "tt0108550", + "tt5342904", + "tt0084602", + "tt0080929", + "tt0295701", + "tt0079817", + "tt0088944", + "tt0367959", + "tt1616194", + "tt0060942", + "tt0100507", + "tt1852955", + "tt4364862", + "tt0445922", + "tt3037164", + "tt0840361", + "tt0810988", + "tt0071359", + "tt1869347", + "tt3963350", + "tt2852470", + "tt1821694", + "tt0816462", + "tt0882977", + "tt0859163", + "tt1700841", + "tt0094332", + "tt1245526", + "tt2287993", + "tt0482571", + "tt0816556", + "tt1060277", + "tt4837062", + "tt0120616", + "tt4827986", + "tt1691917", + "tt0209163", + "tt1974419", + "tt7934862", + "tt4721124", + "tt1670345", + "tt2823054", + "tt4600952", + "tt0293662", + "tt0072869", + "tt5980798", + "tt0846062", + "tt1659619", + "tt0419773", + "tt6333058", + "tt0800320", + "tt0063026", + "tt1907668", + "tt1253864", + "tt4467626", + "tt0376479", + "tt3416532", + "tt1637725", + "tt5446858", + "tt2975578", + "tt0034890", + "tt4094724", + "tt0338526", + "tt0023362", + "tt1462425", + "tt0107750", + "tt0379786", + "tt0056662", + "tt1195486", + "tt3313054", + "tt2184339", + "tt0207023", + "tt4781612", + "tt0313443", + "tt1588173", + "tt1489889", + "tt2033295", + "tt0454848", + "tt6213284", + "tt0145681", + "tt2935476", + "tt2140379", + "tt0121844", + "tt0249792", + "tt0002160", + "tt0002354", + "tt0277844", + "tt0121532", + "tt0277882", + "tt0277571", + "tt0041828", + "tt0121531", + "tt2401878", + "tt0266841", + "tt0427309", + "tt0277687", + "tt2566858", + "tt3045616", + "tt4164282", + "tt2463842", + "tt1189340", + "tt5716438", + "tt3960412", + "tt0243685", + "tt2126235", + "tt0112740", + "tt0965661", + "tt0453467", + "tt5034474", + "tt0174856", + "tt0963988", + "tt3100274", + "tt3652616", + "tt4778988", + "tt1090199", + "tt1096949", + "tt1095169", + "tt5638094", + "tt1093378", + "tt0080780", + "tt6217804", + "tt1096889", + "tt0118883", + "tt0097523", + "tt2582498", + "tt0109707", + "tt7262026", + "tt0477080", + "tt7266916", + "tt0085959", + "tt1343092", + "tt0443676", + "tt4669186", + "tt7807486", + "tt2937696", + "tt2692904", + "tt0091605", + "tt1772264", + "tt2674358", + "tt3229488", + "tt7879372", + "tt4977530", + "tt2238032", + "tt1626146", + "tt0076500", + "tt0082736", + "tt0247380", + "tt4470266", + "tt0057935", + "tt0049869", + "tt0063633", + "tt0076208", + "tt0049706", + "tt0102377", + "tt0108338", + "tt0111254", + "tt0035258", + "tt0031995", + "tt0030202", + "tt0071381", + "tt0054102", + "tt0027700", + "tt0027421", + "tt3505820", + "tt3735302", + "tt5742932", + "tt2153194", + "tt5279042", + "tt0064806", + "tt0068230", + "tt0117951", + "tt0031593", + "tt4468634", + "tt6168848", + "tt4367350", + "tt1653665", + "tt2375589", + "tt3687898", + "tt5570086", + "tt6497898", + "tt5842218", + "tt2547584", + "tt1741273", + "tt2910904", + "tt2304933", + "tt1412528", + "tt3316948", + "tt3095734", + "tt1995390", + "tt0171719", + "tt1526933", + "tt3685554", + "tt0139654", + "tt1673434", + "tt0085407", + "tt0059255", + "tt2852196", + "tt0366627", + "tt0408306", + "tt0134119", + "tt0081751", + "tt5153236", + "tt3797868", + "tt1164980", + "tt3758172", + "tt0113497", + "tt1737253", + "tt7670216", + "tt3387266", + "tt0086856", + "tt1292566", + "tt0100758", + "tt0988045", + "tt3921314", + "tt0382625", + "tt0245844", + "tt5722234", + "tt0071877", + "tt2347569", + "tt0096734", + "tt1790885", + "tt1763303", + "tt0107207", + "tt1037705", + "tt3266284", + "tt6204340", + "tt5091530", + "tt0120689", + "tt1291570", + "tt0098437", + "tt1327194", + "tt0319262", + "tt0052556", + "tt7660662", + "tt2215363", + "tt5925968", + "tt1129435", + "tt0097108", + "tt0058985", + "tt3304524", + "tt7833652", + "tt0055852", + "tt0057066", + "tt2788710", + "tt0113870", + "tt1823672", + "tt2126355", + "tt6998122", + "tt0050483", + "tt0054367", + "tt1245492", + "tt0079781", + "tt3327140", + "tt3717804", + "tt0063098", + "tt0054934", + "tt0816442", + "tt0038303", + "tt0048239", + "tt0064081", + "tt0127745", + "tt0435651", + "tt0116357", + "tt1600196", + "tt1872194", + "tt1791528", + "tt7479144", + "tt2436386", + "tt1972571", + "tt1204975", + "tt0247443", + "tt2312718", + "tt2334879", + "tt2883512", + "tt2387559", + "tt5702566", + "tt2369135", + "tt1921064", + "tt0429493", + "tt0409847", + "tt4877122", + "tt0472181", + "tt5719108", + "tt0443543", + "tt1172991", + "tt0898367", + "tt5862312", + "tt0454921", + "tt0814314", + "tt3110958", + "tt0317740", + "tt6484982", + "tt3335606", + "tt0066921", + "tt0046268", + "tt0120586", + "tt0093058", + "tt1032755", + "tt1543004", + "tt1724970", + "tt2249278", + "tt0110912", + "tt0105695", + "tt4845940", + "tt6353716", + "tt0208092", + "tt0120735", + "tt0368394", + "tt0081398", + "tt0114814", + "tt0105323", + "tt0407887", + "tt0209144", + "tt0414993", + "tt0113277", + "tt0399201", + "tt6957816", + "tt0371724", + "tt0278504", + "tt0337728", + "tt4726636", + "tt4000936", + "tt0162222", + "tt0822854", + "tt0238380", + "tt0094642", + "tt0887912", + "tt0106519", + "tt7692814", + "tt1680140", + "tt0115738", + "tt0443706", + "tt6054650", + "tt6260218", + "tt0311113", + "tt7136060", + "tt7396738", + "tt2357263", + "tt7643644", + "tt6719524", + "tt7642558", + "tt0056937", + "tt0077530", + "tt0970416", + "tt0452694", + "tt0124344", + "tt0115759", + "tt0244244", + "tt1650062", + "tt1386703", + "tt4248606", + "tt6150944", + "tt0102059", + "tt5613834", + "tt6151042", + "tt0137523", + "tt3758852", + "tt1439572", + "tt6243612", + "tt0822847", + "tt1731141", + "tt0433035", + "tt7546978", + "tt7587242", + "tt7421814", + "tt7281126", + "tt1527186", + "tt7661684", + "tt6294806", + "tt7621886", + "tt7754866", + "tt4397094", + "tt0063800", + "tt0448134", + "tt0035211", + "tt1385826", + "tt0288112", + "tt0044072", + "tt2361150", + "tt0379199", + "tt0120472", + "tt0045332", + "tt0050915", + "tt5931932", + "tt7445510", + "tt2094761", + "tt0119415", + "tt0059846", + "tt0497419", + "tt0406732", + "tt2435458", + "tt0079757", + "tt3725224", + "tt3291860", + "tt1718127", + "tt0053610", + "tt0067109", + "tt0938666", + "tt0062975", + "tt0093855", + "tt0090766", + "tt0050347", + "tt5073018", + "tt5254612", + "tt1284976", + "tt5503688", + "tt5431082", + "tt4141292", + "tt7518466", + "tt5863634", + "tt2112127", + "tt4933782", + "tt3654972", + "tt4181782", + "tt5485456", + "tt5239710", + "tt2024354", + "tt2936884", + "tt6284950", + "tt7624712", + "tt1356395", + "tt2294853", + "tt3707514", + "tt1659612", + "tt6041312", + "tt7264080", + "tt5971724", + "tt6645614", + "tt5156770", + "tt2306775", + "tt5690244", + "tt6148090", + "tt0115751", + "tt0056592", + "tt0097719", + "tt6132948", + "tt0362227", + "tt2884206", + "tt0081455", + "tt0168629", + "tt0119558", + "tt0064116", + "tt2072025", + "tt0097223", + "tt0088846", + "tt0090685", + "tt6764496", + "tt3101386", + "tt5231402", + "tt0272018", + "tt3296908", + "tt7312940", + "tt2153156", + "tt2153202", + "tt5265662", + "tt5974460", + "tt6057032", + "tt2153228", + "tt3505774", + "tt5588850", + "tt5905008", + "tt6791000", + "tt7440948", + "tt3202366", + "tt6496834", + "tt4734102", + "tt5327922", + "tt5294796", + "tt0246002", + "tt4919764", + "tt6634400", + "tt7143370", + "tt6634378", + "tt2153096", + "tt2140619", + "tt0075066", + "tt1051907", + "tt0054331", + "tt5074504", + "tt2153208", + "tt0059183", + "tt6635042", + "tt0056687", + "tt0072081", + "tt0063227", + "tt2369411", + "tt0055824", + "tt1286126", + "tt0066579", + "tt2331053", + "tt2614684", + "tt0057413", + "tt0078163", + "tt7647000", + "tt0077745", + "tt7588790", + "tt7030432", + "tt0074486", + "tt0052311", + "tt0100054", + "tt2306745", + "tt1341167", + "tt1434443", + "tt7647010", + "tt0381270", + "tt6622186", + "tt1668016", + "tt1247690", + "tt7030416", + "tt3892078", + "tt5652606", + "tt7385392", + "tt6678950", + "tt3794028", + "tt0221073", + "tt0460740", + "tt0079261", + "tt0124718", + "tt1723811", + "tt5813916", + "tt0118201", + "tt0091993", + "tt1592281", + "tt6567002", + "tt0050419", + "tt0146882", + "tt0281358", + "tt5737882", + "tt0063823", + "tt3765378", + "tt2580888", + "tt6055082", + "tt0993842", + "tt1375539", + "tt5369578", + "tt1686328", + "tt0120824", + "tt0098577", + "tt0086567", + "tt1126618", + "tt5845712", + "tt0107002", + "tt5705058", + "tt1032751", + "tt0455590", + "tt4685554", + "tt6381328", + "tt5891492", + "tt6142314", + "tt6433246", + "tt0808399", + "tt0465551", + "tt6334884", + "tt5298558", + "tt3530328", + "tt3950072", + "tt6852616", + "tt2262315", + "tt3549206", + "tt4607228", + "tt7258556", + "tt4244162", + "tt1667353", + "tt0119879", + "tt0082813", + "tt1563738", + "tt2221784", + "tt4685428", + "tt1728620", + "tt1606389", + "tt3459674", + "tt1454029", + "tt1568911", + "tt1826590", + "tt6233882", + "tt6104206", + "tt0105523", + "tt6605352", + "tt6647576", + "tt5692622", + "tt0482088", + "tt7038614", + "tt0405629", + "tt0035055", + "tt0034415", + "tt5806688", + "tt0313911", + "tt0035535", + "tt0049656", + "tt0410285", + "tt0084293", + "tt0053131", + "tt0050549", + "tt5971316", + "tt0037884", + "tt5678148", + "tt0057864", + "tt0202471", + "tt0120661", + "tt7427404", + "tt0066875", + "tt0078077", + "tt4826674", + "tt0073835", + "tt0010281", + "tt0399934", + "tt6398464", + "tt4677924", + "tt0010600", + "tt0009893", + "tt4420704", + "tt7126746", + "tt0050383", + "tt1708459", + "tt1980209", + "tt0072431", + "tt0337909", + "tt0076578", + "tt0097262", + "tt0870162", + "tt5129510", + "tt3036548", + "tt1738342", + "tt0064040", + "tt1549920", + "tt0091326", + "tt0055302", + "tt1904996", + "tt1781769", + "tt2294449", + "tt0118884", + "tt0047892", + "tt1830748", + "tt6156336", + "tt3454066", + "tt1814643", + "tt3425332", + "tt3405276", + "tt1830633", + "tt6105934", + "tt6874406", + "tt2931140", + "tt0367478", + "tt2088950", + "tt0067900", + "tt4728386", + "tt5078656", + "tt0054821", + "tt0103251", + "tt4287434", + "tt1975249", + "tt0110428", + "tt1130988", + "tt3910736", + "tt0298296", + "tt4733640", + "tt4994564", + "tt0097659", + "tt0844760", + "tt0119013", + "tt3687872", + "tt0095583", + "tt1667903", + "tt7201382", + "tt4865436", + "tt1714209", + "tt1334553", + "tt3619772", + "tt0094082", + "tt0181876", + "tt0382810", + "tt0087622", + "tt4777584", + "tt5025550", + "tt4741774", + "tt6545506", + "tt0422093", + "tt1478800", + "tt1825006", + "tt4685750", + "tt0910860", + "tt0476240", + "tt0295700", + "tt0120631", + "tt2346048", + "tt7071348", + "tt3800520", + "tt1587707", + "tt5321174", + "tt1264895", + "tt3210602", + "tt5578538", + "tt3612032", + "tt5748392", + "tt1111918", + "tt0117658", + "tt4356480", + "tt1545112", + "tt6322922", + "tt5729066", + "tt6762430", + "tt2444354", + "tt6254808", + "tt1785635", + "tt0104391", + "tt5357556", + "tt0889573", + "tt1361558", + "tt1910501", + "tt5991206", + "tt0070643", + "tt1945084", + "tt6536772", + "tt2186665", + "tt6536776", + "tt6536766", + "tt4865642", + "tt2048877", + "tt3674140", + "tt2960994", + "tt6599216", + "tt0845439", + "tt4596052", + "tt2100573", + "tt0305224", + "tt4768926", + "tt3971764", + "tt4076916", + "tt7204400", + "tt2610194", + "tt4291590", + "tt1140852", + "tt3077150", + "tt0436697", + "tt0418763", + "tt5938234", + "tt3699508", + "tt1258197", + "tt5258904", + "tt1890472", + "tt0102750", + "tt4943620", + "tt3823116", + "tt1017451", + "tt1578118", + "tt5317914", + "tt0350258", + "tt3179568", + "tt1655420", + "tt1935156", + "tt2167266", + "tt0094651", + "tt0384696", + "tt0088323", + "tt3663798", + "tt2016940", + "tt0283877", + "tt1217213", + "tt4720702", + "tt3995140", + "tt1753813", + "tt1216491", + "tt4557208", + "tt4301600", + "tt1972779", + "tt2398231", + "tt3105454", + "tt0106375", + "tt4511200", + "tt3849816", + "tt1361842", + "tt4126568", + "tt0052131", + "tt2967006", + "tt2458776", + "tt4695708", + "tt1791682", + "tt3014666", + "tt4417906", + "tt3713166", + "tt0085461", + "tt0049314", + "tt2378281", + "tt1709143", + "tt0050379", + "tt2756032", + "tt2714900", + "tt0049130", + "tt0049844", + "tt2262227", + "tt3726122", + "tt2870756", + "tt5878476", + "tt3395582", + "tt0058075", + "tt0058764", + "tt0059398", + "tt3804528", + "tt2017038", + "tt0056810", + "tt0056183", + "tt0050414", + "tt5278832", + "tt1720293", + "tt0103150", + "tt2263058", + "tt0052126", + "tt0120879", + "tt3483174", + "tt0082294", + "tt1674773", + "tt0054064", + "tt2366450", + "tt0279730", + "tt3889036", + "tt2637848", + "tt0095662", + "tt0238546", + "tt0060148", + "tt0061585", + "tt4738174", + "tt2545118", + "tt0068323", + "tt0061395", + "tt0070898", + "tt2032557", + "tt0091480", + "tt1531901", + "tt0874863", + "tt0091288", + "tt2130321", + "tt1602613", + "tt2070862", + "tt3696876", + "tt1595656", + "tt0054189", + "tt1772925", + "tt2381335", + "tt0265087", + "tt2103264", + "tt3124292", + "tt3983902", + "tt3738706", + "tt0065063", + "tt0138853", + "tt2925388", + "tt4054004", + "tt4764370", + "tt3205438", + "tt0058230", + "tt0095513", + "tt4073616", + "tt5487524", + "tt5262792", + "tt0094597", + "tt7467368", + "tt0443295", + "tt0077766", + "tt5024050", + "tt0097125", + "tt2385006", + "tt0114048", + "tt0482463", + "tt2967226", + "tt5078214", + "tt2721744", + "tt3863552", + "tt0426911", + "tt6349302", + "tt3214286", + "tt4074342", + "tt0118755", + "tt4789160", + "tt2361042", + "tt0079641", + "tt4515684", + "tt2661644", + "tt4703048", + "tt3896738", + "tt4044364", + "tt1712192", + "tt4382330", + "tt2315582", + "tt2122340", + "tt0098354", + "tt6255746", + "tt0082247", + "tt1422122", + "tt2317337", + "tt4459982", + "tt0085327", + "tt4504626", + "tt0100934", + "tt2027140", + "tt0385002", + "tt0066817", + "tt0093512", + "tt0095031", + "tt1028532", + "tt6680792", + "tt1698652", + "tt0118661", + "tt0023649", + "tt7070496", + "tt7321514", + "tt2704752", + "tt2492916", + "tt1787791", + "tt0070666", + "tt1329454", + "tt0091738", + "tt2449638", + "tt1337061", + "tt0337921", + "tt3354486", + "tt0284363", + "tt7315648", + "tt0396913", + "tt0328589", + "tt0196565", + "tt0416320", + "tt3225558", + "tt1785645", + "tt0385567", + "tt3118746", + "tt2417712", + "tt5003186", + "tt0080736", + "tt1785287", + "tt0117103", + "tt0057023", + "tt0057491", + "tt6003326", + "tt0102266", + "tt3954660", + "tt0059390", + "tt0063385", + "tt0381942", + "tt0064621", + "tt4334266", + "tt1978549", + "tt2937158", + "tt0087233", + "tt7321372", + "tt0063231", + "tt6153126", + "tt0486946", + "tt0427312", + "tt7162324", + "tt0050993", + "tt0418038", + "tt1318001", + "tt0198844", + "tt2343621", + "tt5427450", + "tt7281464", + "tt3905060", + "tt0377092", + "tt0028615", + "tt1740710", + "tt5239972", + "tt2428378", + "tt6857258", + "tt7281972", + "tt1302169", + "tt0063642", + "tt5564148", + "tt0055614", + "tt0239234", + "tt2125608", + "tt0244975", + "tt0056044", + "tt0072417", + "tt0054601", + "tt6618178", + "tt1727790", + "tt1838722", + "tt1216520", + "tt1388359", + "tt0109759", + "tt0209463", + "tt0079652", + "tt4464394", + "tt0162650", + "tt2380333", + "tt0069745", + "tt2574698", + "tt3651326", + "tt2172071", + "tt1807036", + "tt5563330", + "tt0054665", + "tt0195631", + "tt0071634", + "tt0061313", + "tt2569298", + "tt5116644", + "tt0045505", + "tt0073096", + "tt5874398", + "tt0061786", + "tt5794440", + "tt0042429", + "tt0038853", + "tt0085894", + "tt0075209", + "tt2416376", + "tt0097051", + "tt0031503", + "tt5974624", + "tt2069915", + "tt7174160", + "tt0063684", + "tt4935212", + "tt0063634", + "tt2367504", + "tt4937114", + "tt6076700", + "tt7242700", + "tt0059563", + "tt0046451", + "tt2140465", + "tt4914382", + "tt6628790", + "tt1077097", + "tt0138658", + "tt6196406", + "tt2633076", + "tt4405736", + "tt3089904", + "tt1467391", + "tt0054407", + "tt0087034", + "tt3263718", + "tt1891769", + "tt5468728", + "tt6581990", + "tt3530170", + "tt5240878", + "tt0912593", + "tt4775814", + "tt1745686", + "tt0048317", + "tt2565974", + "tt7020272", + "tt5599692", + "tt4927984", + "tt2325741", + "tt4528454", + "tt2618216", + "tt1640145", + "tt5419742", + "tt5278598", + "tt4357368", + "tt5078326", + "tt2905422", + "tt2963866", + "tt3601350", + "tt3263548", + "tt5680678", + "tt3449588", + "tt0082370", + "tt0048021", + "tt1339660", + "tt7174708", + "tt7065674", + "tt4900156", + "tt5647758", + "tt0225818", + "tt3828466", + "tt6691862", + "tt0075939", + "tt6104058", + "tt1426362", + "tt4911780", + "tt0100234", + "tt6095004", + "tt2082517", + "tt4705522", + "tt1292643", + "tt6156476", + "tt0120899", + "tt0075788", + "tt0108624", + "tt3766432", + "tt2586118", + "tt0055809", + "tt4908430", + "tt0056396", + "tt4362764", + "tt5328350", + "tt2953762", + "tt2538610", + "tt5639178", + "tt5921524", + "tt6568188", + "tt1280558", + "tt1423888", + "tt4392266", + "tt0055728", + "tt5106400", + "tt6327400", + "tt5231812", + "tt1260051", + "tt0093371", + "tt7121548", + "tt0053050", + "tt1289396", + "tt5456104", + "tt4849438", + "tt0047563", + "tt4954522", + "tt1278027", + "tt7073614", + "tt1730762", + "tt6782486", + "tt3630228", + "tt6914742", + "tt2848070", + "tt4364860", + "tt5304874", + "tt1937419", + "tt5859090", + "tt3918776", + "tt5212042", + "tt2652948", + "tt6652566", + "tt2107651", + "tt6338374", + "tt5949946", + "tt6131148", + "tt6017594", + "tt5283754", + "tt6948128", + "tt6273004", + "tt6970518", + "tt5096536", + "tt6386526", + "tt6436056", + "tt5902138", + "tt5458812", + "tt5364518", + "tt6839248", + "tt0079944", + "tt3346986", + "tt1702927", + "tt0070790", + "tt6027102", + "tt5733172", + "tt5140182", + "tt1701105", + "tt0050096", + "tt2474310", + "tt1205487", + "tt3953260", + "tt4880926", + "tt4923042", + "tt5278578", + "tt2386140", + "tt2889050", + "tt0046839", + "tt1702924", + "tt0089221", + "tt6392526", + "tt5747168", + "tt0049521", + "tt6575062", + "tt6089002", + "tt0028033", + "tt3019796", + "tt3544014", + "tt6966552", + "tt0044681", + "tt3319844", + "tt0046911", + "tt6426928", + "tt0069293", + "tt0065531", + "tt5633600", + "tt4622818", + "tt5326364", + "tt5945286", + "tt6822400", + "tt0069994", + "tt1618447", + "tt0050634", + "tt0085180", + "tt0079820", + "tt6981066", + "tt5449214", + "tt6680270", + "tt5614984", + "tt2679018", + "tt0096163", + "tt6917656", + "tt4483402", + "tt4217446", + "tt1224366", + "tt4022534", + "tt6973942", + "tt0475984", + "tt1503776", + "tt6794398", + "tt0126261", + "tt0276015", + "tt6145762", + "tt3243464", + "tt5126042", + "tt0104400", + "tt5134870", + "tt6279726", + "tt6722142", + "tt3032090", + "tt1024214", + "tt5946552", + "tt4215828", + "tt7042082", + "tt0285112", + "tt3430548", + "tt4935954", + "tt2414196", + "tt5029608", + "tt0119038", + "tt5864680", + "tt2091258", + "tt6990734", + "tt1106884", + "tt0096161", + "tt0119416", + "tt5328802", + "tt1826627", + "tt0834899", + "tt6521852", + "tt0205872", + "tt0087942", + "tt5001772", + "tt0113691", + "tt0102469", + "tt0105078", + "tt1105355", + "tt0050301", + "tt3529664", + "tt3198544", + "tt2364757", + "tt0047585", + "tt4042814", + "tt1144551", + "tt1986164", + "tt0079777", + "tt2446632", + "tt1258154", + "tt6906362", + "tt0113463", + "tt0113999", + "tt1910649", + "tt2776704", + "tt0107523", + "tt0059300", + "tt1027873", + "tt0104892", + "tt0050704", + "tt0324127", + "tt5811338", + "tt0098042", + "tt0790618", + "tt0491109", + "tt0069528", + "tt0490114", + "tt0099816", + "tt0118174", + "tt0117283", + "tt0114345", + "tt0816436", + "tt0068990", + "tt0180052", + "tt0297037", + "tt0177068", + "tt0070481", + "tt0084268", + "tt1715352", + "tt0066181", + "tt3132714", + "tt0490196", + "tt1274296", + "tt5074352", + "tt1503149", + "tt0460989", + "tt0398378", + "tt0056249", + "tt0118044", + "tt1161064", + "tt0338095", + "tt0417415", + "tt0803057", + "tt1869653", + "tt2702348", + "tt2004419", + "tt1621444", + "tt1153053", + "tt2357453", + "tt0168172", + "tt0156323", + "tt0480269", + "tt0349260", + "tt0109951", + "tt0108170", + "tt0120142", + "tt1833084", + "tt2032452", + "tt0116606", + "tt1319716", + "tt4125710", + "tt0066963", + "tt0119080", + "tt1743334", + "tt0128239", + "tt0112854", + "tt1467134", + "tt0482374", + "tt0080936", + "tt0144715", + "tt0106833", + "tt0052545", + "tt2368635", + "tt0119053", + "tt1842356", + "tt0176426", + "tt0387057", + "tt2280302", + "tt0375735", + "tt5370828", + "tt0103800", + "tt0078812", + "tt0104030", + "tt0115678", + "tt0094900", + "tt0171049", + "tt2357788", + "tt3244512", + "tt0420740", + "tt0790590", + "tt1834234", + "tt2444946", + "tt0168987", + "tt0834941", + "tt2991472", + "tt0269095", + "tt2461104", + "tt1520496", + "tt1247703", + "tt0250224", + "tt0052427", + "tt0101318", + "tt0086582", + "tt0106868", + "tt0061135", + "tt0155388", + "tt2788332", + "tt0318850", + "tt0092210", + "tt0463963", + "tt0117718", + "tt0091554", + "tt1144539", + "tt5761022", + "tt1886542", + "tt1817287", + "tt1531930", + "tt0066064", + "tt5133128", + "tt2370718", + "tt0429177", + "tt2034085", + "tt1462411", + "tt1580346", + "tt2201221", + "tt1618399", + "tt0069097", + "tt2625598", + "tt2075341", + "tt1727357", + "tt0452671", + "tt0795403", + "tt0106350", + "tt0064045", + "tt0112887", + "tt1754351", + "tt0064041", + "tt2234025", + "tt0105572", + "tt0099951", + "tt0172396", + "tt2245195", + "tt0075765", + "tt0119837", + "tt1468381", + "tt4518176", + "tt0446016", + "tt0110557", + "tt0120598", + "tt5606986", + "tt0816545", + "tt0341115", + "tt5377624", + "tt0110684", + "tt0418131", + "tt0057191", + "tt0783234", + "tt0367631", + "tt6806654", + "tt0047840", + "tt0410400", + "tt0109965", + "tt0804452", + "tt0101371", + "tt0367790", + "tt2805748", + "tt0058456", + "tt0119304", + "tt0120836", + "tt0276033", + "tt0257850", + "tt2848252", + "tt2217510", + "tt3407894", + "tt4079902", + "tt2974454", + "tt0203975", + "tt2081311", + "tt0443524", + "tt4266910", + "tt0072229", + "tt5747466", + "tt0117791", + "tt0094318", + "tt0204250", + "tt0478829", + "tt0082853", + "tt0484111", + "tt0105790", + "tt5186714", + "tt0108265", + "tt0093044", + "tt2072045", + "tt0108565", + "tt0092834", + "tt1753666", + "tt0092944", + "tt2697586", + "tt2363870", + "tt2124926", + "tt3228302", + "tt1571565", + "tt0220100", + "tt0301684", + "tt3842724", + "tt1404702", + "tt1822325", + "tt1536458", + "tt1766085", + "tt0112302", + "tt0437325", + "tt0091706", + "tt3875548", + "tt0095496", + "tt3566812", + "tt1722560", + "tt0245046", + "tt2608030", + "tt1507351", + "tt0104550", + "tt0118064", + "tt0117991", + "tt0050240", + "tt0034241", + "tt1500117", + "tt4660736", + "tt0100813", + "tt0161743", + "tt1479534", + "tt1723659", + "tt3528498", + "tt0441869", + "tt1746565", + "tt5730882", + "tt0239612", + "tt2193450", + "tt0247586", + "tt0102882", + "tt1318056", + "tt1454700", + "tt1958088", + "tt2246961", + "tt2189858", + "tt6217830", + "tt1584747", + "tt0080448", + "tt0847221", + "tt2639464", + "tt0964529", + "tt0290657", + "tt5937962", + "tt2706570", + "tt0071855", + "tt0080768", + "tt0059168", + "tt0081107", + "tt2756644", + "tt0060400", + "tt4246894", + "tt4082068", + "tt3037028", + "tt0215704", + "tt0084582", + "tt0092610", + "tt0352526", + "tt0098350", + "tt5909128", + "tt2515656", + "tt1756615", + "tt1699223", + "tt2773382", + "tt0063551", + "tt5813250", + "tt4936450", + "tt1242881", + "tt0411323", + "tt4216908", + "tt5081606", + "tt3123116", + "tt6218048", + "tt6264596", + "tt0222020", + "tt6034048", + "tt5264056", + "tt4434676", + "tt0090993", + "tt4077768", + "tt2036388", + "tt0009915", + "tt5227794", + "tt3954924", + "tt6878486", + "tt6877360", + "tt5211742", + "tt3564794", + "tt3374966", + "tt5643380", + "tt6509214", + "tt5186236", + "tt3341582", + "tt0119361", + "tt5546192", + "tt0035977", + "tt5141060", + "tt6194774", + "tt0071206", + "tt4026562", + "tt0214373", + "tt4305148", + "tt2076959", + "tt6843596", + "tt0276886", + "tt4779036", + "tt4000670", + "tt2094034", + "tt3513180", + "tt3818022", + "tt0073198", + "tt3759568", + "tt2670524", + "tt4120176", + "tt0051005", + "tt4466550", + "tt5918926", + "tt2234428", + "tt0065999", + "tt0047429", + "tt2075192", + "tt6736290", + "tt4835086", + "tt0053931", + "tt6634930", + "tt0036301", + "tt0069393", + "tt0038687", + "tt0487171", + "tt0079219", + "tt5909140", + "tt0035565", + "tt4286432", + "tt4205560", + "tt0067648", + "tt2526898", + "tt0421045", + "tt3718904", + "tt3790012", + "tt4643580", + "tt0867270", + "tt2555652", + "tt3783422", + "tt3398436", + "tt0048791", + "tt5003654", + "tt5840392", + "tt2401099", + "tt5525782", + "tt0069404", + "tt0240736", + "tt6436202", + "tt1510988", + "tt3418972", + "tt1300579", + "tt5307698", + "tt5140244", + "tt6814052", + "tt3283708", + "tt3907394", + "tt3529052", + "tt4952536", + "tt3560166", + "tt3355152", + "tt2847238", + "tt1911553", + "tt5206098", + "tt2184335", + "tt2852394", + "tt3427008", + "tt4119420", + "tt5792762", + "tt1413496", + "tt0040552", + "tt0120018", + "tt0045470", + "tt0228711", + "tt5674842", + "tt0052199", + "tt4497142", + "tt2554856", + "tt5263116", + "tt0109731", + "tt5039028", + "tt6793206", + "tt5688480", + "tt2798456", + "tt3527166", + "tt6793140", + "tt3469674", + "tt5876322", + "tt0361596", + "tt3597510", + "tt4699388", + "tt0066265", + "tt0140751", + "tt3966942", + "tt4004366", + "tt4731148", + "tt4210112", + "tt6410016", + "tt3175888", + "tt0066227", + "tt0366905", + "tt0067699", + "tt1628777", + "tt5525310", + "tt5263876", + "tt1434937", + "tt0226204", + "tt1860226", + "tt4659056", + "tt0181365", + "tt2339351", + "tt5069074", + "tt2317002", + "tt5476094", + "tt4919232", + "tt1989435", + "tt3078932", + "tt1877740", + "tt2008627", + "tt6720442", + "tt0869994", + "tt0050535", + "tt6545154", + "tt0096863", + "tt5461606", + "tt5923040", + "tt6285552", + "tt2820008", + "tt0051544", + "tt1473063", + "tt1653911", + "tt6212346", + "tt5034444", + "tt3413044", + "tt4162992", + "tt0389557", + "tt1545759", + "tt0337566", + "tt4818662", + "tt2953528", + "tt6405354", + "tt0815490", + "tt0070568", + "tt0043409", + "tt4456270", + "tt4422164", + "tt1322333", + "tt0944834", + "tt4156152", + "tt0350124", + "tt0379976", + "tt3849370", + "tt6068960", + "tt0236388", + "tt0070506", + "tt0450188", + "tt4144332", + "tt1135989", + "tt5834036", + "tt4130944", + "tt2124782", + "tt2622390", + "tt0060410", + "tt2217861", + "tt5912052", + "tt0031737", + "tt1723108", + "tt5059126", + "tt2149798", + "tt4138004", + "tt5295802", + "tt4834762", + "tt5227140", + "tt2719094", + "tt3440132", + "tt4505208", + "tt3254656", + "tt6449274", + "tt0168192", + "tt0000417", + "tt1978447", + "tt0120380", + "tt3330774", + "tt0350811", + "tt0196871", + "tt0129871", + "tt6314842", + "tt2316801", + "tt0119784", + "tt3974202", + "tt5198868", + "tt4920094", + "tt6550440", + "tt3221544", + "tt2442526", + "tt0070106", + "tt5302150", + "tt4331970", + "tt5232490", + "tt3196692", + "tt5591458", + "tt2369497", + "tt1233328", + "tt0077613", + "tt0091847", + "tt1124001", + "tt5119048", + "tt3019620", + "tt1227381", + "tt3716530", + "tt0433588", + "tt1843283", + "tt4283358", + "tt1390415", + "tt6212586", + "tt0493361", + "tt0461688", + "tt0049490", + "tt3430416", + "tt3792960", + "tt3006756", + "tt4235476", + "tt0845980", + "tt0039840", + "tt0059798", + "tt4328642", + "tt3318956", + "tt4460176", + "tt3215842", + "tt5270832", + "tt3876702", + "tt1726861", + "tt3043252", + "tt2273673", + "tt5850440", + "tt0042235", + "tt0050112", + "tt4590930", + "tt2711898", + "tt2180335", + "tt2568074", + "tt3358998", + "tt4239726", + "tt0478197", + "tt1510989", + "tt3671676", + "tt0121804", + "tt2077908", + "tt5446610", + "tt2499022", + "tt6392454", + "tt0146247", + "tt0120711", + "tt0146455", + "tt0404254", + "tt1459012", + "tt0871427", + "tt0258100", + "tt0106336", + "tt0280453", + "tt0804539", + "tt0256276", + "tt0191173", + "tt1814614", + "tt3108318", + "tt1091994", + "tt1957913", + "tt0191996", + "tt0227173", + "tt2339647", + "tt1754513", + "tt4609262", + "tt1725969", + "tt2461726", + "tt1570970", + "tt1733147", + "tt2631862", + "tt6439776", + "tt1871241", + "tt3808298", + "tt3102356", + "tt5346890", + "tt0420835", + "tt1270090", + "tt2139725", + "tt0053716", + "tt2399752", + "tt1734580", + "tt2932498", + "tt4228810", + "tt2837296", + "tt0330099", + "tt2321195", + "tt0304356", + "tt1754733", + "tt0202402", + "tt0203929", + "tt0105811", + "tt0117927", + "tt0117924", + "tt1675313", + "tt2214864", + "tt0078736", + "tt0340380", + "tt0284330", + "tt3366000", + "tt0066844", + "tt0102095", + "tt0864959", + "tt1299366", + "tt1213864", + "tt6486190", + "tt2478442", + "tt0836662", + "tt0091613", + "tt0286077", + "tt0457270", + "tt6076802", + "tt0997278", + "tt0085446", + "tt4719158", + "tt2704816", + "tt0099073", + "tt6393222", + "tt5968910", + "tt0144546", + "tt0068920", + "tt3032060", + "tt1208711", + "tt0949379", + "tt5278466", + "tt4718770", + "tt4917622", + "tt0790775", + "tt5022872", + "tt4935084", + "tt4645368", + "tt2672052", + "tt2296747", + "tt3703836", + "tt0383139", + "tt0043301", + "tt0075343", + "tt2245119", + "tt2088748", + "tt5936692", + "tt4494956", + "tt1872102", + "tt1872101", + "tt4746484", + "tt4630550", + "tt1826610", + "tt2262345", + "tt4741170", + "tt0112379", + "tt3531516", + "tt5038358", + "tt1267319", + "tt5024728", + "tt4338434", + "tt2091893", + "tt0086330", + "tt4266370", + "tt0206420", + "tt6484426", + "tt6435824", + "tt5219814", + "tt4882964", + "tt0088392", + "tt0476031", + "tt0119718", + "tt1863192", + "tt0083824", + "tt0420901", + "tt0799954", + "tt5104332", + "tt2193151", + "tt2484120", + "tt4877264", + "tt3946792", + "tt5128712", + "tt0310149", + "tt0092591", + "tt0162866", + "tt0192035", + "tt1713440", + "tt5333110", + "tt1764240", + "tt0287969", + "tt3808342", + "tt5248042", + "tt0113247", + "tt4400174", + "tt1715876", + "tt4193400", + "tt4093410", + "tt5590890", + "tt4663992", + "tt0202832", + "tt0086420", + "tt4156998", + "tt4009232", + "tt0045327", + "tt2632340", + "tt2833580", + "tt3664008", + "tt3357772", + "tt5471480", + "tt6342940", + "tt4795692", + "tt0350194", + "tt3830162", + "tt5824900", + "tt5310410", + "tt0280170", + "tt1068962", + "tt2294917", + "tt4175148", + "tt6393248", + "tt5133308", + "tt4327752", + "tt0123633", + "tt4875456", + "tt0244203", + "tt5779056", + "tt3146360", + "tt0064699", + "tt3080844", + "tt1594503", + "tt0960750", + "tt1879030", + "tt4048168", + "tt0411272", + "tt6323506", + "tt1259014", + "tt3654918", + "tt5544700", + "tt3889642", + "tt0104495", + "tt1854535", + "tt4648986", + "tt4857514", + "tt5934788", + "tt5217256", + "tt1823126", + "tt0061765", + "tt0100263", + "tt5214744", + "tt1832382", + "tt4426656", + "tt1798141", + "tt2302701", + "tt6149120", + "tt4996022", + "tt3326350", + "tt2112129", + "tt4308714", + "tt5278592", + "tt5042426", + "tt4823524", + "tt4585660", + "tt0800058", + "tt2281069", + "tt2668800", + "tt3922320", + "tt5734138", + "tt0993789", + "tt4334482", + "tt2991368", + "tt5249484", + "tt0057543", + "tt2370138", + "tt0047674", + "tt1783780", + "tt3100904", + "tt1642248", + "tt3022458", + "tt6212344", + "tt4837232", + "tt2011971", + "tt1964624", + "tt5096628", + "tt3673000", + "tt4482858", + "tt4838334", + "tt3920572", + "tt4976984", + "tt3399112", + "tt2393917", + "tt1794943", + "tt5774012", + "tt1836869", + "tt6174822", + "tt5127398", + "tt4132250", + "tt3838728", + "tt2932530", + "tt5458792", + "tt1714827", + "tt4558256", + "tt2665200", + "tt1821362", + "tt0137439", + "tt0097106", + "tt5917118", + "tt0077469", + "tt6167646", + "tt5254640", + "tt4428762", + "tt3954294", + "tt5815434", + "tt0038668", + "tt2046090", + "tt4471630", + "tt5805350", + "tt0275947", + "tt5344230", + "tt4110400", + "tt2400311", + "tt3210984", + "tt2327319", + "tt1697075", + "tt2938230", + "tt6104992", + "tt6026094", + "tt5989054", + "tt2527190", + "tt5252624", + "tt2118737", + "tt5735410", + "tt2882854", + "tt4948452", + "tt0181530", + "tt0286038", + "tt3247286", + "tt2070776", + "tt4459770", + "tt2979094", + "tt1283479", + "tt4426182", + "tt1019938", + "tt0004670", + "tt0009611", + "tt0004311", + "tt0010747", + "tt0004693", + "tt1876454", + "tt4730986", + "tt0012304", + "tt0115928", + "tt0013486", + "tt0006497", + "tt0004280", + "tt0004288", + "tt0004282", + "tt0004189", + "tt1890426", + "tt0003805", + "tt0004277", + "tt0003863", + "tt0004101", + "tt0009018", + "tt4809458", + "tt4836736", + "tt4001526", + "tt0056291", + "tt0003679", + "tt6233688", + "tt0100303", + "tt0010057", + "tt0003758", + "tt5086438", + "tt2712884", + "tt2869762", + "tt5278868", + "tt4231686", + "tt0124307", + "tt6208524", + "tt0211259", + "tt6107852", + "tt0015361", + "tt1856057", + "tt4161074", + "tt4063314", + "tt3949216", + "tt1863201", + "tt1130993", + "tt5505532", + "tt4356466", + "tt4229948", + "tt3882000", + "tt0335345", + "tt1192629", + "tt1486608", + "tt2168882", + "tt4328666", + "tt0246135", + "tt4734082", + "tt5639464", + "tt2292820", + "tt0075683", + "tt6136300", + "tt2543698", + "tt3498590", + "tt0284691", + "tt3443788", + "tt0015064", + "tt0114571", + "tt4439852", + "tt1680136", + "tt2866676", + "tt0414923", + "tt0012651", + "tt1179025", + "tt0370904", + "tt0066192", + "tt5673884", + "tt0121500", + "tt4838440", + "tt0189070", + "tt0467671", + "tt3809478", + "tt1509271", + "tt0795554", + "tt6186362", + "tt4551882", + "tt0087797", + "tt0112366", + "tt5375206", + "tt3547682", + "tt0065989", + "tt1261051", + "tt6156350", + "tt0113425", + "tt5540898", + "tt3003470", + "tt0119014", + "tt2239126", + "tt6166250", + "tt4604496", + "tt4686692", + "tt3915966", + "tt3433632", + "tt3268030", + "tt0068924", + "tt4377942", + "tt3790720", + "tt4483460", + "tt5275866", + "tt4644836", + "tt5931726", + "tt4190906", + "tt0056663", + "tt5599206", + "tt1276419", + "tt5076518", + "tt4444446", + "tt0836700", + "tt0046022", + "tt2053425", + "tt0138464", + "tt2069948", + "tt5167942", + "tt2931148", + "tt5007908", + "tt3877718", + "tt3865614", + "tt0084357", + "tt3185602", + "tt2716802", + "tt0075163", + "tt1779076", + "tt3480110", + "tt1531049", + "tt4883758", + "tt1709694", + "tt3453648", + "tt4467714", + "tt3462852", + "tt3402078", + "tt2953182", + "tt4717746", + "tt0312633", + "tt4024210", + "tt5272042", + "tt0108500", + "tt5900592", + "tt0075322", + "tt0120882", + "tt2994832", + "tt0110604", + "tt0470869", + "tt0274789", + "tt0301215", + "tt0058203", + "tt0150251", + "tt0893401", + "tt0286214", + "tt0085912", + "tt0111793", + "tt5952332", + "tt2806390", + "tt3631282", + "tt4396074", + "tt4331718", + "tt2072137", + "tt0122159", + "tt0072241", + "tt2842732", + "tt3096858", + "tt4527254", + "tt3569978", + "tt0960067", + "tt1522203", + "tt1849818", + "tt2308583", + "tt3063072", + "tt3282308", + "tt0879843", + "tt1600419", + "tt0060305", + "tt0065093", + "tt1853548", + "tt0008377", + "tt0007761", + "tt5563932", + "tt4377952", + "tt0010221", + "tt0023563", + "tt0008975", + "tt3891218", + "tt0091534", + "tt0009123", + "tt0309926", + "tt4921846", + "tt0008112", + "tt0093986", + "tt0009899", + "tt3699676", + "tt0092822", + "tt0002423", + "tt5851572", + "tt3443616", + "tt5280984", + "tt2698966", + "tt4370784", + "tt2942620", + "tt4316846", + "tt2621784", + "tt2921338", + "tt6047684", + "tt5051356", + "tt4460598", + "tt3474994", + "tt3791302", + "tt3811986", + "tt0095467", + "tt3863484", + "tt4794512", + "tt0095468", + "tt1442223", + "tt0034210", + "tt0033133", + "tt5889946", + "tt0020442", + "tt0481552", + "tt5116314", + "tt0407776", + "tt3122842", + "tt0033091", + "tt0018742", + "tt3141912", + "tt0034180", + "tt0032598", + "tt0031734", + "tt0031667", + "tt0031793", + "tt5233106", + "tt0032889", + "tt0230238", + "tt0815122", + "tt0023955", + "tt0104882", + "tt3877674", + "tt3951730", + "tt3764122", + "tt1954931", + "tt4358230", + "tt3505682", + "tt0358456", + "tt3904770", + "tt0147060", + "tt0034540", + "tt0152580", + "tt0847474", + "tt4428814", + "tt1853620", + "tt2323264", + "tt0147143", + "tt0034925", + "tt0142349", + "tt0007819", + "tt3215168", + "tt0096412", + "tt0008874", + "tt4085084", + "tt0009466", + "tt0008523", + "tt4269194", + "tt0010155", + "tt0009389", + "tt0096056", + "tt0218611", + "tt0054343", + "tt3293250", + "tt0116275", + "tt0249973", + "tt0820986", + "tt0181275", + "tt0102213", + "tt0088961", + "tt1440309", + "tt0004194", + "tt1683051", + "tt0059831", + "tt0038855", + "tt3444616", + "tt5229082", + "tt0381842", + "tt0207801", + "tt0351920", + "tt0351638", + "tt0005677", + "tt0037030", + "tt0005678", + "tt0263830", + "tt0389292", + "tt0034996", + "tt0033989", + "tt0005315", + "tt0117553", + "tt0004212", + "tt0042183", + "tt1440150", + "tt1440188", + "tt0277755", + "tt0005309", + "tt0233242", + "tt0035663", + "tt0002851", + "tt0005676", + "tt3478962", + "tt4878890", + "tt4953610", + "tt2818178", + "tt2741122", + "tt5223500", + "tt3139764", + "tt2108517", + "tt3760332", + "tt3093618", + "tt3533254", + "tt2220034", + "tt0081246", + "tt4685148", + "tt0076168", + "tt3187094", + "tt0808148", + "tt1681368", + "tt0069851", + "tt0045162", + "tt5103832", + "tt3828796", + "tt1086315", + "tt4844522", + "tt1090282", + "tt1086314", + "tt4440488", + "tt2169414", + "tt1090178", + "tt4957446", + "tt0453382", + "tt2847520", + "tt0027489", + "tt0493151", + "tt0110434", + "tt5959320", + "tt0439719", + "tt0022877", + "tt0487264", + "tt0022125", + "tt0006296", + "tt0006262", + "tt0067580", + "tt1691323", + "tt0939636", + "tt1672621", + "tt0818120", + "tt0363728", + "tt0153752", + "tt0032164", + "tt0066019", + "tt0042872", + "tt0927629", + "tt0058555", + "tt0005316", + "tt0039383", + "tt0047114", + "tt0110010", + "tt0006145", + "tt0005310", + "tt3616894", + "tt4073868", + "tt1235552", + "tt0005313", + "tt4810828", + "tt4937156", + "tt0114753", + "tt0045719", + "tt0042906", + "tt0005312", + "tt2932828", + "tt1717690", + "tt1065086", + "tt2918608", + "tt0115725", + "tt4960242", + "tt0101765", + "tt0054621", + "tt5631422", + "tt1334570", + "tt0775091", + "tt5179576", + "tt5734214", + "tt5655056", + "tt0118756", + "tt4934886", + "tt4741714", + "tt1337642", + "tt3246158", + "tt4935418", + "tt0249868", + "tt0926762", + "tt0120373", + "tt0375160", + "tt1670392", + "tt5917230", + "tt2398159", + "tt0068288", + "tt0087313", + "tt0047821", + "tt5037982", + "tt2277834", + "tt3606698", + "tt3477620", + "tt2018047", + "tt2662764", + "tt3447228", + "tt5541180", + "tt4569240", + "tt4819738", + "tt3986932", + "tt2401715", + "tt2385227", + "tt3136752", + "tt3758564", + "tt2171875", + "tt3566788", + "tt1603900", + "tt0073317", + "tt2343140", + "tt1773067", + "tt2901690", + "tt2247692", + "tt0057336", + "tt3305316", + "tt0090886", + "tt4428788", + "tt3913206", + "tt0048434", + "tt3757218", + "tt4041382", + "tt4183170", + "tt2083972", + "tt5832008", + "tt0205047", + "tt5673202", + "tt1972752", + "tt5773112", + "tt5899100", + "tt5672502", + "tt4122254", + "tt0124707", + "tt0057171", + "tt3583370", + "tt4426130", + "tt2643164", + "tt0188195", + "tt3715122", + "tt3468612", + "tt1294645", + "tt2061682", + "tt3728746", + "tt4421920", + "tt3667792", + "tt3702720", + "tt0055580", + "tt5660556", + "tt4082596", + "tt3018528", + "tt2175535", + "tt1456606", + "tt2625968", + "tt5069090", + "tt3682546", + "tt4048050", + "tt1000716", + "tt1764614", + "tt3422078", + "tt3699572", + "tt3748048", + "tt3646344", + "tt0108327", + "tt0109665", + "tt3605304", + "tt1783422", + "tt0188694", + "tt0104786", + "tt3597448", + "tt0254334", + "tt3007240", + "tt4539136", + "tt0342735", + "tt1239449", + "tt0950780", + "tt1695405", + "tt4428800", + "tt2278871", + "tt0252684", + "tt3249414", + "tt5812306", + "tt3753432", + "tt5828074", + "tt1638979", + "tt0081658", + "tt4709218", + "tt0118849", + "tt0033357", + "tt4400360", + "tt3129892", + "tt0056303", + "tt3451720", + "tt3771510", + "tt0068179", + "tt4238156", + "tt0923956", + "tt2609998", + "tt2073129", + "tt5145840", + "tt0105592", + "tt1474816", + "tt2016153", + "tt1877892", + "tt4292318", + "tt3237128", + "tt3596952", + "tt2496758", + "tt0055191", + "tt3737996", + "tt3512634", + "tt0040214", + "tt0397113", + "tt3317728", + "tt2438818", + "tt4111044", + "tt3173518", + "tt0272606", + "tt0282521", + "tt0074335", + "tt2390630", + "tt0063673", + "tt0092222", + "tt5259692", + "tt1844735", + "tt2974190", + "tt3584390", + "tt2395312", + "tt5668196", + "tt4886308", + "tt4287852", + "tt3000950", + "tt0995850", + "tt0808232", + "tt4074652", + "tt4154728", + "tt5377604", + "tt2145909", + "tt4379180", + "tt0861731", + "tt2781406", + "tt0465589", + "tt0400063", + "tt1436342", + "tt0037330", + "tt0116441", + "tt3800010", + "tt4120210", + "tt3014600", + "tt4085944", + "tt0133848", + "tt4881016", + "tt0095477", + "tt3544218", + "tt3362064", + "tt2713778", + "tt0095478", + "tt0319758", + "tt0115974", + "tt0078895", + "tt0030811", + "tt0068537", + "tt5037902", + "tt3727054", + "tt0055469", + "tt0027342", + "tt0091939", + "tt0060479", + "tt0039821", + "tt2226321", + "tt3257064", + "tt4938602", + "tt5766420", + "tt0108631", + "tt5363648", + "tt0111299", + "tt0058701", + "tt2727732", + "tt3756838", + "tt1243634", + "tt4162012", + "tt0053106", + "tt0446071", + "tt0104857", + "tt0021739", + "tt0101465", + "tt3481826", + "tt2168000", + "tt4164040", + "tt4653370", + "tt2492562", + "tt1157732", + "tt4688342", + "tt4972386", + "tt4867024", + "tt0847830", + "tt0054879", + "tt2260850", + "tt0091433", + "tt4716958", + "tt4741354", + "tt0357111", + "tt0061678", + "tt4677128", + "tt2364774", + "tt0060742", + "tt1338556", + "tt0493450", + "tt2367066", + "tt1712159", + "tt2094825", + "tt2883448", + "tt5000698", + "tt5170338", + "tt1870548", + "tt3704008", + "tt0120487", + "tt3904754", + "tt3770426", + "tt5275886", + "tt2659240", + "tt4247428", + "tt4695462", + "tt1590844", + "tt2375021", + "tt2516274", + "tt5436486", + "tt2950330", + "tt4932436", + "tt4035268", + "tt4096620", + "tt0327951", + "tt3186946", + "tt5707248", + "tt3116054", + "tt4924618", + "tt3587696", + "tt2025570", + "tt4809238", + "tt0060049", + "tt0107521", + "tt5605328", + "tt3743384", + "tt0113362", + "tt4681414", + "tt0414852", + "tt0064227", + "tt4610372", + "tt4651932", + "tt0082175", + "tt3115694", + "tt1247640", + "tt0091552", + "tt1951161", + "tt0207145", + "tt3290882", + "tt3828488", + "tt0217894", + "tt5583930", + "tt0193524", + "tt0030062", + "tt3523852", + "tt3170902", + "tt4122468", + "tt1847529", + "tt2167819", + "tt1546381", + "tt2051872", + "tt0058450", + "tt2007413", + "tt4038670", + "tt2862454", + "tt370375", + "tt0059405", + "tt4908644", + "tt1762308", + "tt4156646", + "tt0056049", + "tt0063213", + "tt0269587", + "tt2078718", + "tt0084239", + "tt0338290", + "tt4466336", + "tt0040643", + "tt4899510", + "tt5561592", + "tt0712523", + "tt3560686", + "tt3966404", + "tt0113398", + "tt3175438", + "tt0046001", + "tt0044067", + "tt0043721", + "tt0042182", + "tt0050692", + "tt0043603", + "tt0045646", + "tt0047675", + "tt0043043", + "tt0712586", + "tt0046366", + "tt0044962", + "tt0048290", + "tt0042679", + "tt0046051", + "tt0048391", + "tt0712374", + "tt0043829", + "tt0044853", + "tt0049477", + "tt0044455", + "tt0044400", + "tt0504306", + "tt0046684", + "tt2505818", + "tt0045604", + "tt0047178", + "tt0712176", + "tt0044330", + "tt0712168", + "tt3737650", + "tt4437298", + "tt3098874", + "tt3621360", + "tt4008758", + "tt0073357", + "tt0046487", + "tt0145400", + "tt0078991", + "tt4453306", + "tt0056846", + "tt0040497", + "tt5589750", + "tt2976864", + "tt0405508", + "tt0055093", + "tt0084843", + "tt3409440", + "tt3603104", + "tt0042895", + "tt0086655", + "tt4106306", + "tt0399104", + "tt1260567", + "tt0453533", + "tt2293276", + "tt0051591", + "tt0072446", + "tt0016847", + "tt5268648", + "tt0486420", + "tt5556144", + "tt3369350", + "tt4159182", + "tt2818252", + "tt0058898", + "tt3252998", + "tt0279353", + "tt0084503", + "tt0094783", + "tt0084269", + "tt3161326", + "tt2165933", + "tt0266850", + "tt0100026", + "tt0046533", + "tt5509732", + "tt0180626", + "tt0800318", + "tt1608516", + "tt0805559", + "tt0294425", + "tt3721082", + "tt3486542", + "tt0055572", + "tt4202970", + "tt0430932", + "tt3830574", + "tt0099572", + "tt3970874", + "tt5106116", + "tt0120491", + "tt4115932", + "tt3146120", + "tt0066380", + "tt0051179", + "tt5001576", + "tt2464690", + "tt0113932", + "tt3696804", + "tt5329524", + "tt0089366", + "tt3172678", + "tt0094087", + "tt0080097", + "tt4292420", + "tt0059250", + "tt3362914", + "tt0226976", + "tt0096028", + "tt4681452", + "tt4163636", + "tt0054156", + "tt0049095", + "tt0140883", + "tt2215395", + "tt4665250", + "tt4536494", + "tt2944970", + "tt4161932", + "tt3317158", + "tt1235166", + "tt2507238", + "tt4875694", + "tt3760966", + "tt3040224", + "tt4288636", + "tt5439464", + "tt3195054", + "tt2005268", + "tt0271271", + "tt2593224", + "tt0098659", + "tt0186726", + "tt0245380", + "tt0387898", + "tt0192618", + "tt2388621", + "tt5347932", + "tt5370376", + "tt0045487", + "tt4924646", + "tt0274636", + "tt1827429", + "tt3590608", + "tt0096465", + "tt5513770", + "tt4524168", + "tt1735495", + "tt3881192", + "tt0091710", + "tt4794814", + "tt5538124", + "tt0196632", + "tt0069225", + "tt0095384", + "tt3234082", + "tt0274761", + "tt0414078", + "tt0063152", + "tt3062742", + "tt0111495", + "tt0077435", + "tt4218644", + "tt1741542", + "tt1745787", + "tt0108394", + "tt0111507", + "tt4396080", + "tt2392672", + "tt4399984", + "tt0059348", + "tt3727982", + "tt3742378", + "tt0093951", + "tt4800418", + "tt4412362", + "tt0310203", + "tt3035858", + "tt0093312", + "tt0117534", + "tt3685586", + "tt1220911", + "tt1074191", + "tt3319508", + "tt5017928", + "tt3948500", + "tt3993730", + "tt1629715", + "tt4359416", + "tt3576044", + "tt3563892", + "tt4994256", + "tt5106298", + "tt5304688", + "tt0059417", + "tt4614654", + "tt3958098", + "tt4481310", + "tt4991632", + "tt2992000", + "tt1238305", + "tt3786530", + "tt2205453", + "tt3701160", + "tt0175777", + "tt0097528", + "tt5340362", + "tt2767366", + "tt3257638", + "tt0054936", + "tt3120916", + "tt5145828", + "tt0103069", + "tt2991224", + "tt0208990", + "tt0032888", + "tt1605765", + "tt3869392", + "tt3907314", + "tt2728086", + "tt5083702", + "tt4079142", + "tt4264754", + "tt0049031", + "tt0053453", + "tt0143746", + "tt5448304", + "tt0101324", + "tt0043992", + "tt1990217", + "tt4498460", + "tt4176750", + "tt2534634", + "tt4296800", + "tt0047860", + "tt4062896", + "tt4084566", + "tt2004279", + "tt2390327", + "tt2288568", + "tt3498950", + "tt5354588", + "tt0305665", + "tt2690560", + "tt3956722", + "tt3825278", + "tt3509662", + "tt5180998", + "tt4668808", + "tt0087016", + "tt3202872", + "tt0228786", + "tt0092020", + "tt3750942", + "tt2100671", + "tt2337470", + "tt0266643", + "tt2545384", + "tt0094813", + "tt3818826", + "tt4341532", + "tt5247042", + "tt1880278", + "tt2380513", + "tt0056370", + "tt2247696", + "tt3417172", + "tt4048964", + "tt3223394", + "tt4702118", + "tt0273799", + "tt4293656", + "tt4242936", + "tt4576246", + "tt3203364", + "tt3732474", + "tt5231268", + "tt2088865", + "tt3753372", + "tt5221208", + "tt0213260", + "tt4102728", + "tt5111790", + "tt3448072", + "tt3377548", + "tt1756750", + "tt0402755", + "tt3605262", + "tt4768190", + "tt3090634", + "tt0040090", + "tt3184934", + "tt0063534", + "tt0299943", + "tt0083557", + "tt0102062", + "tt0173886", + "tt0098718", + "tt3892822", + "tt0052869", + "tt0095640", + "tt5204384", + "tt5046534", + "tt4481934", + "tt1731767", + "tt4838472", + "tt3586930", + "tt3855240", + "tt0112682", + "tt0382142", + "tt3043386", + "tt1754799", + "tt0066516", + "tt3626804", + "tt3560464", + "tt3685756", + "tt2378401", + "tt0365149", + "tt0256466", + "tt2531282", + "tt4304830", + "tt4399942", + "tt1934172", + "tt5317546", + "tt2318625", + "tt0192255", + "tt3210710", + "tt0301485", + "tt4630848", + "tt0038924", + "tt0131986", + "tt4689996", + "tt0128666", + "tt2880472", + "tt0180177", + "tt0034936", + "tt0043362", + "tt0116319", + "tt0440004", + "tt2355132", + "tt0202595", + "tt0097884", + "tt3218368", + "tt0202521", + "tt0073219", + "tt0061002", + "tt5026308", + "tt4530804", + "tt0090019", + "tt2766004", + "tt3826150", + "tt2120857", + "tt1273235", + "tt0113057", + "tt0053198", + "tt2506256", + "tt0209223", + "tt4747354", + "tt0361467", + "tt4944352", + "tt2202798", + "tt4974584", + "tt4075520", + "tt0164648", + "tt5070196", + "tt2315500", + "tt5073746", + "tt0099406", + "tt4982260", + "tt4971480", + "tt2383382", + "tt4717202", + "tt0924527", + "tt0057058", + "tt1611330", + "tt5186076", + "tt0920470", + "tt3064620", + "tt5280366", + "tt0115543", + "tt2018086", + "tt0030628", + "tt3012526", + "tt1542767", + "tt5210048", + "tt2039359", + "tt4502456", + "tt4328196", + "tt2866824", + "tt4556352", + "tt3732518", + "tt2417134", + "tt0356476", + "tt1334278", + "tt4563702", + "tt2124096", + "tt1285239", + "tt0301893", + "tt4720674", + "tt0157016", + "tt2039389", + "tt4374460", + "tt5062762", + "tt2545692", + "tt0438580", + "tt1720276", + "tt0079012", + "tt3462002", + "tt5133810", + "tt2882156", + "tt1410013", + "tt0215167", + "tt0783494", + "tt5062804", + "tt2064865", + "tt2490352", + "tt2039390", + "tt0425468", + "tt0413900", + "tt2400685", + "tt0470023", + "tt0357648", + "tt2039366", + "tt3320502", + "tt2964654", + "tt2256703", + "tt1646894", + "tt1942839", + "tt0491722", + "tt0950740", + "tt4766018", + "tt2006707", + "tt1332026", + "tt0290321", + "tt5171176", + "tt2537390", + "tt1733111", + "tt4767950", + "tt1431115", + "tt2871116", + "tt0099496", + "tt3600588", + "tt0417397", + "tt4767274", + "tt4119590", + "tt1013651", + "tt4462408", + "tt5210078", + "tt0085622", + "tt3709678", + "tt2158649", + "tt3833822", + "tt2464622", + "tt3837162", + "tt4076824", + "tt0816577", + "tt0036384", + "tt0076410", + "tt0906638", + "tt0088318", + "tt1597522", + "tt1167513", + "tt0130298", + "tt0067778", + "tt1802529", + "tt3147106", + "tt0028988", + "tt2481276", + "tt3669520", + "tt2404217", + "tt4040072", + "tt5228440", + "tt4163644", + "tt3708528", + "tt3020666", + "tt0051846", + "tt0040550", + "tt3042408", + "tt4727110", + "tt1554921", + "tt3625952", + "tt2297812", + "tt1264904", + "tt0282223", + "tt0084100", + "tt1655413", + "tt5135978", + "tt0046695", + "tt0332369", + "tt3103632", + "tt3970482", + "tt4144206", + "tt3147930", + "tt4690134", + "tt4011466", + "tt3478510", + "tt1735462", + "tt2405372", + "tt4309612", + "tt2980626", + "tt1460646", + "tt2371399", + "tt2325474", + "tt3624628", + "tt2974520", + "tt1433089", + "tt1242521", + "tt0016232", + "tt0104114", + "tt0060802", + "tt0337103", + "tt3866420", + "tt2381287", + "tt5028778", + "tt4788602", + "tt2638048", + "tt3377996", + "tt0923973", + "tt3578794", + "tt1479668", + "tt1855152", + "tt0079665", + "tt2936180", + "tt3525584", + "tt4009460", + "tt1342403", + "tt0069967", + "tt2219650", + "tt2988490", + "tt3209148", + "tt2630526", + "tt4654328", + "tt4214874", + "tt0051568", + "tt0199763", + "tt0188769", + "tt3179406", + "tt0245920", + "tt4097612", + "tt5031014", + "tt2958390", + "tt0058458", + "tt0084549", + "tt4273170", + "tt3400460", + "tt4246212", + "tt3055402", + "tt4054678", + "tt0275274", + "tt2572330", + "tt3685218", + "tt0066841", + "tt4141260", + "tt3783274", + "tt1587414", + "tt3786474", + "tt4467202", + "tt0089832", + "tt4838316", + "tt2841572", + "tt3871940", + "tt0795441", + "tt5045592", + "tt0080318", + "tt4544008", + "tt0081428", + "tt1029234", + "tt2876906", + "tt4126304", + "tt5056034", + "tt3056040", + "tt0426568", + "tt0250593", + "tt0043915", + "tt0186910", + "tt0089110", + "tt0044370", + "tt2626926", + "tt0087225", + "tt0058374", + "tt0199810", + "tt3442634", + "tt0117275", + "tt3962210", + "tt4265878", + "tt0313634", + "tt3902600", + "tt2263210", + "tt3483194", + "tt1323535", + "tt0094886", + "tt3234196", + "tt0057687", + "tt2710368", + "tt0058751", + "tt2197912", + "tt4188202", + "tt5038216", + "tt0059915", + "tt3132632", + "tt4725904", + "tt0814685", + "tt3762666", + "tt0080144", + "tt4846826", + "tt0036706", + "tt2862392", + "tt1332007", + "tt3218580", + "tt2689958", + "tt1612319", + "tt0077984", + "tt4215766", + "tt2241750", + "tt0299179", + "tt3923082", + "tt4391742", + "tt0126004", + "tt2196488", + "tt3346824", + "tt1343703", + "tt0069072", + "tt2346406", + "tt4938846", + "tt0347909", + "tt2929890", + "tt1343712", + "tt3854104", + "tt0061781", + "tt4216808", + "tt2476552", + "tt0046427", + "tt0118150", + "tt0048355", + "tt0258816", + "tt4197632", + "tt3132244", + "tt0192657", + "tt0033654", + "tt0072149", + "tt0079687", + "tt0050799", + "tt0043946", + "tt0071385", + "tt0053371", + "tt0041209", + "tt0049476", + "tt0051818", + "tt0073698", + "tt0064990", + "tt0051940", + "tt1754406", + "tt4137902", + "tt0762089", + "tt4568166", + "tt1773793", + "tt1368153", + "tt0056021", + "tt0772762", + "tt0080668", + "tt3168808", + "tt5084214", + "tt1961324", + "tt3573598", + "tt0389182", + "tt1362318", + "tt0086087", + "tt0067077", + "tt0075299", + "tt0042298", + "tt2458392", + "tt1587359", + "tt1550533", + "tt5022680", + "tt1279976", + "tt4579410", + "tt4144156", + "tt2311428", + "tt1380078", + "tt0046121", + "tt3972068", + "tt3644570", + "tt2608324", + "tt2387600", + "tt3953834", + "tt2591692", + "tt3204144", + "tt2334896", + "tt0243390", + "tt3500724", + "tt4074502", + "tt0322674", + "tt2707848", + "tt3400286", + "tt4401604", + "tt3509426", + "tt4559742", + "tt2291242", + "tt0095715", + "tt1863943", + "tt0042344", + "tt2611390", + "tt4652128", + "tt1762887", + "tt1878519", + "tt4298966", + "tt3524578", + "tt3163304", + "tt2901516", + "tt4073696", + "tt4648826", + "tt3670782", + "tt0071733", + "tt4510898", + "tt1718915", + "tt1999246", + "tt1954520", + "tt3697270", + "tt0370242", + "tt2936470", + "tt0086026", + "tt3318220", + "tt3137546", + "tt2276258", + "tt0096287", + "tt0078015", + "tt0077640", + "tt2364997", + "tt2428612", + "tt3665860", + "tt0062036", + "tt3088516", + "tt2664712", + "tt3844362", + "tt0086840", + "tt2517300", + "tt1338687", + "tt3044244", + "tt3494676", + "tt1360860", + "tt0086890", + "tt0086542", + "tt2392810", + "tt4128382", + "tt0267287", + "tt4563294", + "tt3574218", + "tt0987918", + "tt4192636", + "tt0070460", + "tt3814486", + "tt2176874", + "tt1528734", + "tt2637378", + "tt2610240", + "tt4382618", + "tt2343473", + "tt4156700", + "tt3271120", + "tt0020815", + "tt3182590", + "tt2473762", + "tt2361602", + "tt3134422", + "tt2594950", + "tt2311948", + "tt4498162", + "tt3508830", + "tt1629374", + "tt3142234", + "tt2861532", + "tt4259658", + "tt3910602", + "tt2705542", + "tt1265294", + "tt0113221", + "tt3146294", + "tt0109551", + "tt0457652", + "tt0028114", + "tt1314280", + "tt2535348", + "tt0052600", + "tt0162211", + "tt0131200", + "tt0060092", + "tt1870543", + "tt0292516", + "tt3309136", + "tt0044928", + "tt1830459", + "tt3700852", + "tt0123221", + "tt4305562", + "tt1176244", + "tt4437046", + "tt0398027", + "tt3362908", + "tt1946347", + "tt3855850", + "tt4125300", + "tt4012432", + "tt3962798", + "tt0162928", + "tt2518294", + "tt3446906", + "tt0128801", + "tt3628898", + "tt0402115", + "tt0033922", + "tt0114663", + "tt4173442", + "tt3784566", + "tt0083366", + "tt0070130", + "tt4289948", + "tt0289181", + "tt4262142", + "tt0027438", + "tt0867418", + "tt2282703", + "tt1714843", + "tt0200669", + "tt2836370", + "tt3248600", + "tt1568816", + "tt0872020", + "tt0052893", + "tt0100436", + "tt0070959", + "tt3924798", + "tt1519461", + "tt0066479", + "tt1322362", + "tt0125946", + "tt2822742", + "tt0123288", + "tt0099546", + "tt0065439", + "tt4440036", + "tt2650646", + "tt3100052", + "tt1588337", + "tt2134170", + "tt2404593", + "tt3772918", + "tt1846479", + "tt2844798", + "tt0035415", + "tt0031862", + "tt3814950", + "tt3455850", + "tt2649194", + "tt2785464", + "tt2446600", + "tt0096098", + "tt3576084", + "tt2621664", + "tt3100636", + "tt4738466", + "tt4561026", + "tt3539664", + "tt0060675", + "tt0058056", + "tt0199733", + "tt1114717", + "tt3950488", + "tt2274604", + "tt3324302", + "tt0020531", + "tt0019686", + "tt3094252", + "tt0020708", + "tt0036427", + "tt0024916", + "tt1180329", + "tt1925421", + "tt0061634", + "tt0117739", + "tt3196684", + "tt2191880", + "tt0069765", + "tt1294977", + "tt1092016", + "tt3138166", + "tt2282737", + "tt0047529", + "tt2562850", + "tt4028826", + "tt4674500", + "tt0121369", + "tt1568799", + "tt3188560", + "tt0080843", + "tt3105418", + "tt2095762", + "tt0293007", + "tt2131674", + "tt3478186", + "tt2328813", + "tt2503768", + "tt1702003", + "tt1320293", + "tt1646887", + "tt0248751", + "tt0347752", + "tt0082927", + "tt3103412", + "tt0423871", + "tt4340888", + "tt0823187", + "tt3667270", + "tt3091772", + "tt2768018", + "tt3150574", + "tt2466654", + "tt2322482", + "tt2243067", + "tt1626648", + "tt3409392", + "tt3620418", + "tt2855026", + "tt1864443", + "tt1573484", + "tt1094584", + "tt0042040", + "tt0063564", + "tt2562870", + "tt1503646", + "tt0032653", + "tt2368926", + "tt4065510", + "tt1864269", + "tt4448648", + "tt2562944", + "tt1864277", + "tt0076065", + "tt4573800", + "tt1730714", + "tt0439591", + "tt0248752", + "tt0382937", + "tt2187444", + "tt0054494", + "tt0270846", + "tt4575100", + "tt3062880", + "tt0287337", + "tt0249535", + "tt0048308", + "tt0051792", + "tt0085692", + "tt0110097", + "tt1544590", + "tt0080610", + "tt1299384", + "tt3538766", + "tt1977087", + "tt2048824", + "tt3172112", + "tt0172348", + "tt2273275", + "tt3238462", + "tt0301777", + "tt4214708", + "tt0080430", + "tt1825901", + "tt2365001", + "tt2974790", + "tt1308094", + "tt3214248", + "tt4008778", + "tt1153543", + "tt4190550", + "tt0874272", + "tt3012340", + "tt3579168", + "tt2544766", + "tt4662412", + "tt2390994", + "tt1827512", + "tt2346720", + "tt0995747", + "tt3121860", + "tt3667152", + "tt4700538", + "tt0139692", + "tt3504542", + "tt2089721", + "tt0306943", + "tt3101474", + "tt0071864", + "tt0079252", + "tt1183276", + "tt1252298", + "tt0065651", + "tt0049177", + "tt0200071", + "tt0825239", + "tt0026922", + "tt3501046", + "tt1130982", + "tt0056514", + "tt1894560", + "tt0070046", + "tt2147589", + "tt4453498", + "tt3472226", + "tt3794422", + "tt2570414", + "tt3447876", + "tt2189978", + "tt0074745", + "tt0092226", + "tt3519192", + "tt0082272", + "tt0069881", + "tt0047213", + "tt3411420", + "tt0258013", + "tt0107762", + "tt0059934", + "tt0056066", + "tt0117477", + "tt0411819", + "tt0104267", + "tt1708524", + "tt0064390", + "tt0139718", + "tt2720726", + "tt0165998", + "tt3600960", + "tt0103030", + "tt0120164", + "tt0025509", + "tt2403981", + "tt3210998", + "tt0054671", + "tt0006689", + "tt2852406", + "tt2950236", + "tt2081314", + "tt3655522", + "tt0080718", + "tt3675486", + "tt0044135", + "tt2948606", + "tt2638104", + "tt1706625", + "tt0981350", + "tt0164422", + "tt3263690", + "tt3594796", + "tt4409852", + "tt0085426", + "tt0314502", + "tt2394003", + "tt2552316", + "tt3160020", + "tt0075696", + "tt3655172", + "tt2723576", + "tt0104732", + "tt1645138", + "tt0470131", + "tt0001371", + "tt1518215", + "tt0099859", + "tt3720794", + "tt1836953", + "tt0477078", + "tt0847743", + "tt0144688", + "tt2293138", + "tt0217749", + "tt3823994", + "tt0361127", + "tt2543508", + "tt1032856", + "tt2815720", + "tt0972374", + "tt0028691", + "tt4621642", + "tt2451550", + "tt3851324", + "tt1737796", + "tt0390833", + "tt2209744", + "tt3420108", + "tt2554648", + "tt0110737", + "tt2531168", + "tt2551396", + "tt2447338", + "tt4328584", + "tt2199543", + "tt2514976", + "tt2075373", + "tt2766268", + "tt3553414", + "tt3626970", + "tt2212670", + "tt3914706", + "tt2704650", + "tt0054473", + "tt0757923", + "tt2400275", + "tt2475454", + "tt0455925", + "tt3842398", + "tt0063381", + "tt3413692", + "tt1854592", + "tt3104656", + "tt0091671", + "tt2330666", + "tt0279475", + "tt0095360", + "tt3215846", + "tt2875926", + "tt0053149", + "tt0045826", + "tt3688018", + "tt2788556", + "tt3674410", + "tt3552892", + "tt3684490", + "tt2705326", + "tt0138664", + "tt0035521", + "tt0060536", + "tt0206692", + "tt1236457", + "tt0142001", + "tt1687221", + "tt2326554", + "tt0094789", + "tt2896036", + "tt3905756", + "tt3593120", + "tt3148952", + "tt0441613", + "tt1784359", + "tt2571502", + "tt0118996", + "tt0047568", + "tt3104818", + "tt0061784", + "tt0081027", + "tt4008606", + "tt0070302", + "tt1035736", + "tt0344510", + "tt3815426", + "tt0128591", + "tt0064816", + "tt0055146", + "tt0090563", + "tt4460190", + "tt3907674", + "tt2780588", + "tt2772762", + "tt2788228", + "tt0401383", + "tt0102988", + "tt3016266", + "tt0795459", + "tt0110620", + "tt3159050", + "tt2004216", + "tt2231630", + "tt2070897", + "tt0058089", + "tt2856930", + "tt3133246", + "tt2409812", + "tt1867091", + "tt1015471", + "tt0117613", + "tt3459472", + "tt0160521", + "tt3202374", + "tt0160522", + "tt3036600", + "tt3545810", + "tt0303678", + "tt4304408", + "tt3212392", + "tt1515088", + "tt3331846", + "tt0062414", + "tt3328442", + "tt4173174", + "tt0490236", + "tt3093520", + "tt0164961", + "tt1861445", + "tt3313908", + "tt2758880", + "tt0090667", + "tt0839846", + "tt0074720", + "tt1413797", + "tt3358296", + "tt0881384", + "tt1907688", + "tt3485702", + "tt4539292", + "tt3090324", + "tt2093867", + "tt1699090", + "tt0473753", + "tt2714410", + "tt0240143", + "tt1956700", + "tt2414040", + "tt3365778", + "tt2098491", + "tt4344878", + "tt2407484", + "tt1333888", + "tt2049589", + "tt2073128", + "tt2275519", + "tt3210388", + "tt0163639", + "tt0337587", + "tt1777610", + "tt2614700", + "tt1899353", + "tt0110150", + "tt0111804", + "tt0424934", + "tt1327601", + "tt0432314", + "tt0844322", + "tt0996382", + "tt0089918", + "tt2089864", + "tt3684484", + "tt2571354", + "tt3566370", + "tt2170403", + "tt3424672", + "tt2571340", + "tt2329459", + "tt2606614", + "tt0027967", + "tt2290113", + "tt0053472", + "tt2991092", + "tt0060544", + "tt0092593", + "tt3612616", + "tt1020773", + "tt2329582", + "tt2751390", + "tt0424942", + "tt3518096", + "tt0113676", + "tt2175665", + "tt2106350", + "tt0264809", + "tt0119682", + "tt3267258", + "tt0972356", + "tt0226648", + "tt0444673", + "tt3254548", + "tt0330044", + "tt0193925", + "tt3379694", + "tt2943974", + "tt3949648", + "tt0225634", + "tt3089922", + "tt0353168", + "tt0263278", + "tt0388474", + "tt0096968", + "tt3587128", + "tt3213222", + "tt0061826", + "tt1699745", + "tt2316868", + "tt0325181", + "tt0062266", + "tt2909932", + "tt0096240", + "tt1724965", + "tt2231489", + "tt2733258", + "tt0451954", + "tt0025903", + "tt2474438", + "tt2111292", + "tt0411270", + "tt0116789", + "tt3881700", + "tt4234734", + "tt0403718", + "tt0023038", + "tt3586634", + "tt3061836", + "tt2406572", + "tt0025830", + "tt0026267", + "tt1984248", + "tt0027087", + "tt3158138", + "tt3314628", + "tt3104572", + "tt1737650", + "tt2290710", + "tt3003758", + "tt0381456", + "tt2093990", + "tt0040465", + "tt2610252", + "tt0047310", + "tt2963344", + "tt1756508", + "tt2165236", + "tt0026558", + "tt1468843", + "tt0808339", + "tt3868150", + "tt3131456", + "tt1096999", + "tt0027042", + "tt2245349", + "tt3569356", + "tt0100200", + "tt2023500", + "tt0068738", + "tt4132598", + "tt0382944", + "tt0067847", + "tt1187043", + "tt3385034", + "tt0004150", + "tt0040142", + "tt2553424", + "tt0116341", + "tt2252304", + "tt0073747", + "tt2852432", + "tt2624316", + "tt4419652", + "tt3627000", + "tt1634003", + "tt1876502", + "tt2942522", + "tt3202306", + "tt1893199", + "tt0060107", + "tt0056111", + "tt2072263", + "tt0020695", + "tt1656192", + "tt0066997", + "tt2141739", + "tt0309799", + "tt1149361", + "tt0996930", + "tt3918368", + "tt1874797", + "tt0814042", + "tt3446852", + "tt2674040", + "tt3655370", + "tt1986161", + "tt4146230", + "tt1727373", + "tt2495778", + "tt3837198", + "tt0101700", + "tt4175742", + "tt3450116", + "tt1603933", + "tt1792806", + "tt2712154", + "tt4196462", + "tt0372532", + "tt0045941", + "tt0024475", + "tt2570738", + "tt0048964", + "tt2091240", + "tt3329350", + "tt0827773", + "tt2788002", + "tt2409818", + "tt0367082", + "tt1379182", + "tt0444182", + "tt0036709", + "tt1966566", + "tt3657420", + "tt2177629", + "tt2363518", + "tt2261434", + "tt3706190", + "tt0085474", + "tt1692301", + "tt1211890", + "tt0039636", + "tt2324384", + "tt2183716", + "tt2934340", + "tt3833470", + "tt3887360", + "tt3430042", + "tt4145350", + "tt2380560", + "tt2224506", + "tt1778357", + "tt2276480", + "tt2940280", + "tt0059894", + "tt1782253", + "tt0062446", + "tt2294963", + "tt2450520", + "tt1609132", + "tt0055910", + "tt0377556", + "tt0024115", + "tt3775614", + "tt1757769", + "tt2062969", + "tt1014805", + "tt2458698", + "tt2701778", + "tt3508590", + "tt0113667", + "tt1675759", + "tt1604589", + "tt0248912", + "tt2357461", + "tt1355638", + "tt0216787", + "tt0425132", + "tt0044958", + "tt0112856", + "tt0315110", + "tt2241691", + "tt0038300", + "tt0022787", + "tt3529260", + "tt3082826", + "tt2271685", + "tt1243939", + "tt3629548", + "tt3825444", + "tt2009406", + "tt2141941", + "tt3001638", + "tt2831404", + "tt3171246", + "tt1625326", + "tt2340076", + "tt2380564", + "tt0426550", + "tt0424867", + "tt1556243", + "tt2600730", + "tt0114268", + "tt0338022", + "tt0039591", + "tt4065336", + "tt0080907", + "tt2465378", + "tt3415872", + "tt0087837", + "tt3107328", + "tt0303668", + "tt1757112", + "tt2373550", + "tt0312409", + "tt2318405", + "tt2076349", + "tt3502284", + "tt0172238", + "tt1213019", + "tt0270560", + "tt4034118", + "tt0071968", + "tt2094877", + "tt0078458", + "tt1854580", + "tt0199128", + "tt4260656", + "tt0244521", + "tt0030396", + "tt0379985", + "tt1217043", + "tt2966560", + "tt0043526", + "tt4150316", + "tt0033902", + "tt2418372", + "tt3512066", + "tt0070338", + "tt1924277", + "tt3911058", + "tt0184309", + "tt2545936", + "tt2912144", + "tt3289944", + "tt0069400", + "tt0065944", + "tt0458436", + "tt3090326", + "tt0815207", + "tt2299206", + "tt2707804", + "tt2787874", + "tt0052027", + "tt0125659", + "tt0028257", + "tt2651214", + "tt0026973", + "tt0372303", + "tt3627780", + "tt0018528", + "tt2837366", + "tt0184915", + "tt3972398", + "tt0468450", + "tt2071620", + "tt3801438", + "tt3547900", + "tt4179824", + "tt1992147", + "tt3460064", + "tt2350852", + "tt0970172", + "tt1576772", + "tt2309764", + "tt0106536", + "tt0100928", + "tt3097490", + "tt3952328", + "tt3122122", + "tt2139843", + "tt3511012", + "tt3596200", + "tt3158306", + "tt0269338", + "tt0220470", + "tt2406038", + "tt2415496", + "tt3103598", + "tt0034167", + "tt0452624", + "tt0415391", + "tt2960450", + "tt0488658", + "tt2194988", + "tt0456836", + "tt1058743", + "tt0142193", + "tt0120481", + "tt1992278", + "tt0963743", + "tt0841101", + "tt2176786", + "tt4208628", + "tt3974790", + "tt0041327", + "tt2821088", + "tt0117101", + "tt0043643", + "tt0114057", + "tt1859530", + "tt2167056", + "tt0958884", + "tt0070464", + "tt2693076", + "tt3220576", + "tt0064155", + "tt2609758", + "tt2314036", + "tt2006721", + "tt2357003", + "tt0097567", + "tt3245656", + "tt0837791", + "tt2294473", + "tt2241047", + "tt2338062", + "tt0071790", + "tt0032325", + "tt0038056", + "tt0033458", + "tt0037826", + "tt2928288", + "tt2640502", + "tt2177336", + "tt0029984", + "tt1639397", + "tt2282058", + "tt0032326", + "tt0082183", + "tt3635852", + "tt0079002", + "tt0031149", + "tt3634940", + "tt2196844", + "tt0114783", + "tt2371158", + "tt1613056", + "tt3302594", + "tt3351428", + "tt2836260", + "tt0028709", + "tt0072267", + "tt0028707", + "tt3918546", + "tt2196059", + "tt2475898", + "tt3520698", + "tt4064460", + "tt2735480", + "tt3958180", + "tt0027441", + "tt3957278", + "tt1549069", + "tt0027439", + "tt2314414", + "tt1410015", + "tt3317942", + "tt2369543", + "tt0026199", + "tt0027442", + "tt2451742", + "tt0040799", + "tt0379357", + "tt2077721", + "tt1929339", + "tt1590013", + "tt2988384", + "tt1324875", + "tt2737050", + "tt1422197", + "tt0026197", + "tt1323933", + "tt1815717", + "tt1247657", + "tt1087527", + "tt2363439", + "tt1809318", + "tt0110189", + "tt0064425", + "tt0027440", + "tt0024968", + "tt0028708", + "tt0144262", + "tt3765746", + "tt0040778", + "tt3715300", + "tt3353690", + "tt0038929", + "tt4087916", + "tt0032324", + "tt2406252", + "tt1871257", + "tt0040394", + "tt0106752", + "tt3688596", + "tt1826753", + "tt0279830", + "tt0212867", + "tt1863323", + "tt0283542", + "tt2957250", + "tt0087814", + "tt0087885", + "tt2907640", + "tt3965714", + "tt1727254", + "tt0114732", + "tt0042352", + "tt2811878", + "tt2976472", + "tt0499469", + "tt1451708", + "tt0073632", + "tt0096288", + "tt3396842", + "tt0025463", + "tt2372222", + "tt2179936", + "tt4045482", + "tt0031514", + "tt0081688", + "tt1914281", + "tt3249524", + "tt0066207", + "tt0082053", + "tt3660850", + "tt0080662", + "tt3317762", + "tt0085956", + "tt2576828", + "tt2945474", + "tt0084003", + "tt0087821", + "tt0045917", + "tt3332122", + "tt2340784", + "tt2836202", + "tt1924273", + "tt1589627", + "tt2072134", + "tt3831400", + "tt0047348", + "tt3074732", + "tt3949650", + "tt0064988", + "tt1429392", + "tt1821593", + "tt0041610", + "tt3307800", + "tt0457437", + "tt2880148", + "tt0375611", + "tt0086551", + "tt1800338", + "tt2865558", + "tt1686865", + "tt2545088", + "tt2199448", + "tt3996536", + "tt3171886", + "tt0922591", + "tt2545338", + "tt3560658", + "tt1847750", + "tt2937752", + "tt0195871", + "tt0964516", + "tt1292594", + "tt2280358", + "tt2238420", + "tt0068428", + "tt0250264", + "tt0047797", + "tt0272766", + "tt2994962", + "tt0776798", + "tt1734438", + "tt0312946", + "tt3202486", + "tt1653064", + "tt0118668", + "tt1336999", + "tt2806908", + "tt1588875", + "tt3595312", + "tt1337090", + "tt0080728", + "tt0062083", + "tt0056101", + "tt3874418", + "tt0021815", + "tt0160484", + "tt0092550", + "tt0456978", + "tt0177852", + "tt2741806", + "tt0318497", + "tt0456980", + "tt2707858", + "tt0456981", + "tt0456982", + "tt0401119", + "tt1135522", + "tt3504158", + "tt2936864", + "tt1650041", + "tt1986806", + "tt2187149", + "tt2336960", + "tt3837154", + "tt1692478", + "tt0091830", + "tt2136689", + "tt1964618", + "tt0856288", + "tt0042256", + "tt3492330", + "tt1704586", + "tt3021744", + "tt2222206", + "tt0061394", + "tt2643394", + "tt0193510", + "tt3331044", + "tt0006684", + "tt3630862", + "tt3013588", + "tt3608848", + "tt2727296", + "tt2123146", + "tt2221404", + "tt0443518", + "tt2912522", + "tt1606829", + "tt0061905", + "tt2403815", + "tt1223082", + "tt0049682", + "tt2559244", + "tt0061495", + "tt0072235", + "tt0064612", + "tt3985472", + "tt0040548", + "tt0218141", + "tt3106926", + "tt3103326", + "tt0106379", + "tt0069158", + "tt0064409", + "tt0486666", + "tt0042782", + "tt0078122", + "tt1738351", + "tt1754708", + "tt0053399", + "tt2793578", + "tt2207050", + "tt2289538", + "tt2407380", + "tt0079371", + "tt0075669", + "tt1653827", + "tt0043262", + "tt0076827", + "tt3554976", + "tt0150614", + "tt0071960", + "tt2247432", + "tt0115940", + "tt3678938", + "tt2393825", + "tt1188996", + "tt0472478", + "tt2014295", + "tt3215844", + "tt0040810", + "tt0056691", + "tt2271671", + "tt3667798", + "tt0358767", + "tt2493456", + "tt0039532", + "tt3234906", + "tt2873250", + "tt1870375", + "tt3807402", + "tt0448906", + "tt2606112", + "tt3769334", + "tt1351770", + "tt0496385", + "tt2787824", + "tt0036166", + "tt0034593", + "tt2714934", + "tt2889844", + "tt0103973", + "tt0856776", + "tt1609492", + "tt3108170", + "tt0190503", + "tt2315588", + "tt2263814", + "tt2057455", + "tt2071424", + "tt2403419", + "tt0062873", + "tt3084836", + "tt3120810", + "tt1233381", + "tt3365338", + "tt2813906", + "tt2945504", + "tt2121782", + "tt2531258", + "tt3691706", + "tt1801071", + "tt0056568", + "tt0185335", + "tt1663698", + "tt2650642", + "tt0040489", + "tt1995304", + "tt0081144", + "tt0064004", + "tt0054474", + "tt2500392", + "tt1705115", + "tt2374902", + "tt1591499", + "tt2137119", + "tt3322420", + "tt2789532", + "tt3558196", + "tt2017634", + "tt2795078", + "tt2374196", + "tt2222192", + "tt0052946", + "tt3057836", + "tt0666194", + "tt1760985", + "tt0069848", + "tt0117070", + "tt3479624", + "tt2614006", + "tt0055020", + "tt0273282", + "tt0051016", + "tt0055261", + "tt1230165", + "tt2871058", + "tt0105227", + "tt0794399", + "tt3091552", + "tt2224313", + "tt2372776", + "tt3560580", + "tt3469420", + "tt0059166", + "tt3335192", + "tt2818448", + "tt0083258", + "tt2557848", + "tt2866660", + "tt3279276", + "tt3185154", + "tt2381319", + "tt0265343", + "tt2405792", + "tt3640822", + "tt0290673", + "tt0099564", + "tt3029570", + "tt3142958", + "tt1951166", + "tt1867611", + "tt0053168", + "tt1993286", + "tt0103110", + "tt3843960", + "tt1270786", + "tt2931194", + "tt3214002", + "tt2156785", + "tt3063996", + "tt2100575", + "tt1170380", + "tt3130506", + "tt0398971", + "tt2350496", + "tt1751720", + "tt1608369", + "tt1472583", + "tt3091282", + "tt0099334", + "tt3142872", + "tt3134060", + "tt0362225", + "tt2798172", + "tt3811920", + "tt2210842", + "tt3345466", + "tt3037406", + "tt1068649", + "tt2955316", + "tt1816518", + "tt2739524", + "tt0402500", + "tt3222720", + "tt0074979", + "tt2700582", + "tt2188734", + "tt0084555", + "tt1176102", + "tt3103576", + "tt3129564", + "tt1723656", + "tt1403987", + "tt3516378", + "tt2679680", + "tt2835548", + "tt2275802", + "tt2511022", + "tt2852458", + "tt2210607", + "tt1217637", + "tt2718492", + "tt1125924", + "tt2671980", + "tt2654738", + "tt0369738", + "tt0235430", + "tt2709784", + "tt1506438", + "tt3506224", + "tt2748546", + "tt3091254", + "tt2515164", + "tt3737782", + "tt2536436", + "tt2622156", + "tt2371315", + "tt0048432", + "tt2595182", + "tt2641866", + "tt1407052", + "tt0361805", + "tt3330206", + "tt3044702", + "tt2265171", + "tt1698647", + "tt0067123", + "tt3259320", + "tt2140381", + "tt1825806", + "tt2708946", + "tt2785288", + "tt1920928", + "tt2717528", + "tt0064360", + "tt0065755", + "tt0059080", + "tt3089778", + "tt0061695", + "tt2363435", + "tt0400514", + "tt0075441", + "tt0143346", + "tt1974393", + "tt0063000", + "tt0081675", + "tt0163777", + "tt1450334", + "tt0081681", + "tt0066806", + "tt0095645", + "tt0310236", + "tt0207709", + "tt0495074", + "tt0063065", + "tt0183307", + "tt1817235", + "tt3386954", + "tt0876294", + "tt2379995", + "tt3112654", + "tt1545319", + "tt3482696", + "tt2459920", + "tt2088924", + "tt0096917", + "tt1555440", + "tt2294965", + "tt1825955", + "tt2180473", + "tt0089860", + "tt0106632", + "tt0072080", + "tt0068655", + "tt1439578", + "tt3742018", + "tt2949626", + "tt1629747", + "tt2543484", + "tt2239866", + "tt2374144", + "tt0326834", + "tt1794801", + "tt1843234", + "tt2747786", + "tt3173910", + "tt3139338", + "tt1188982", + "tt2082156", + "tt3417364", + "tt0033307", + "tt0049933", + "tt3717186", + "tt2218416", + "tt0249516", + "tt2181310", + "tt1784664", + "tt3417360", + "tt1927158", + "tt1240899", + "tt2059255", + "tt2072939", + "tt2312390", + "tt0052135", + "tt1763256", + "tt0389206", + "tt0237534", + "tt1117598", + "tt2763764", + "tt1309374", + "tt0363416", + "tt1242605", + "tt2357866", + "tt2173264", + "tt1305618", + "tt2112124", + "tt2930828", + "tt0045961", + "tt2395246", + "tt3528284", + "tt3296434", + "tt1137436", + "tt1407972", + "tt0289557", + "tt3685836", + "tt1564870", + "tt3024056", + "tt1954364", + "tt0110963", + "tt3077818", + "tt3465208", + "tt3169740", + "tt0047411", + "tt0416073", + "tt2203898", + "tt3684194", + "tt1205587", + "tt3069086", + "tt2565752", + "tt3479250", + "tt3416200", + "tt1864299", + "tt3487082", + "tt0254686", + "tt3187064", + "tt2065898", + "tt3032300", + "tt0113662", + "tt0044722", + "tt1959526", + "tt0099089", + "tt2361348", + "tt1855324", + "tt3530418", + "tt1241226", + "tt2359427", + "tt2366127", + "tt2379318", + "tt2243381", + "tt1235841", + "tt0109020", + "tt0320790", + "tt1225834", + "tt2181941", + "tt2181889", + "tt3176304", + "tt3152130", + "tt2843986", + "tt3315416", + "tt2223824", + "tt2860720", + "tt2257436", + "tt2219514", + "tt0371552", + "tt0319075", + "tt0439567", + "tt2556296", + "tt0211413", + "tt2996804", + "tt3451660", + "tt1660302", + "tt0348003", + "tt3089442", + "tt3469386", + "tt3664510", + "tt3062104", + "tt2274042", + "tt1785612", + "tt3259912", + "tt2375036", + "tt2917646", + "tt2214913", + "tt2358592", + "tt0098327", + "tt3478444", + "tt0079311", + "tt0080002", + "tt0074513", + "tt2304098", + "tt3581276", + "tt0067026", + "tt0075802", + "tt0201924", + "tt0200310", + "tt3280730", + "tt2603496", + "tt0091607", + "tt0086301", + "tt0164882", + "tt2502518", + "tt0058592", + "tt0224098", + "tt0105903", + "tt0187501", + "tt0199023", + "tt0063105", + "tt1292648", + "tt1611823", + "tt0072421", + "tt2239108", + "tt2947832", + "tt0278351", + "tt1982735", + "tt0083352", + "tt3239154", + "tt3354866", + "tt3215286", + "tt0823725", + "tt2189714", + "tt3503838", + "tt2175016", + "tt2437712", + "tt1954930", + "tt2562234", + "tt2846418", + "tt1586525", + "tt2207072", + "tt087", + "tt2457282", + "tt1176096", + "tt0324197", + "tt3106846", + "tt2322674", + "tt3451624", + "tt2444006", + "tt2752200", + "tt2865074", + "tt2584380", + "tt0216625", + "tt3456464", + "tt1109562", + "tt1906443", + "tt1772871", + "tt2235902", + "tt1987681", + "tt1381416", + "tt2066986", + "tt1638353", + "tt2561752", + "tt1590764", + "tt2235248", + "tt0338309", + "tt3037342", + "tt2315200", + "tt2343807", + "tt1826894", + "tt1992193", + "tt3320114", + "tt0425299", + "tt3350228", + "tt2907156", + "tt1852137", + "tt1282156", + "tt1535432", + "tt23951", + "tt3234078", + "tt3203890", + "tt2796782", + "tt0061996", + "tt0425055", + "tt2636814", + "tt2402600", + "tt1928338", + "tt2219792", + "tt2550112", + "tt2265179", + "tt1961580", + "tt1890448", + "tt0052698", + "tt2275656", + "tt2208778", + "tt2542502", + "tt2909482", + "tt0322802", + "tt1905042", + "tt0111800", + "tt3319234", + "tt2152198", + "tt2234032", + "tt3004788", + "tt1156444", + "tt0070801", + "tt2089863", + "tt1186371", + "tt0099809", + "tt0075201", + "tt0080743", + "tt0078128", + "tt0075202", + "tt0077135", + "tt0063596", + "tt0164360", + "tt0112800", + "tt0065102", + "tt0079891", + "tt0084105", + "tt0076939", + "tt0068372", + "tt0065495", + "tt0082174", + "tt0069380", + "tt0067009", + "tt0075833", + "tt0077292", + "tt0045034", + "tt0084267", + "tt0940918", + "tt0070085", + "tt2248805", + "tt1043429", + "tt0080958", + "tt0078360", + "tt0079147", + "tt1533749", + "tt0078393", + "tt0085628", + "tt0083828", + "tt0080172", + "tt0093015", + "tt0073121", + "tt0074300", + "tt0165195", + "tt0367602", + "tt0079432", + "tt0082482", + "tt0188794", + "tt0165363", + "tt0080420", + "tt0079896", + "tt0084014", + "tt0078250", + "tt0082072", + "tt1361529", + "tt0180826", + "tt0065172", + "tt1825735", + "tt0077664", + "tt0080726", + "tt2014351", + "tt0404823", + "tt0080828", + "tt0076692", + "tt0084678", + "tt0079899", + "tt0040917", + "tt0104567", + "tt2317484", + "tt3361152", + "tt2258858", + "tt2421224", + "tt2290151", + "tt1956655", + "tt0046149", + "tt0109969", + "tt2048889", + "tt0107666", + "tt0099395", + "tt0113449", + "tt0488539", + "tt3072668", + "tt0106732", + "tt0125841", + "tt0294631", + "tt0151778", + "tt0109161", + "tt0048333", + "tt1686125", + "tt0059407", + "tt0098681", + "tt2641874", + "tt0085354", + "tt3455214", + "tt2397531", + "tt0106451", + "tt1060256", + "tt3249408", + "tt1686907", + "tt2825716", + "tt2275551", + "tt2954184", + "tt2488740", + "tt2221558", + "tt2827520", + "tt0339579", + "tt2102500", + "tt0446319", + "tt0066277", + "tt0959452", + "tt0412519", + "tt0118721", + "tt0087806", + "tt1647413", + "tt2385074", + "tt0119628", + "tt0420136", + "tt1801085", + "tt3031022", + "tt1545489", + "tt2424752", + "tt2005185", + "tt2234397", + "tt2438644", + "tt0490078", + "tt0076470", + "tt1029231", + "tt2094969", + "tt0076594", + "tt1543055", + "tt0062357", + "tt2073516", + "tt0267785", + "tt0044936", + "tt0037871", + "tt1346669", + "tt2403991", + "tt0096309", + "tt2235682", + "tt0052810", + "tt3042926", + "tt0124102", + "tt1051217", + "tt1064932", + "tt2039369", + "tt0791304", + "tt1978428", + "tt0034922", + "tt0043954", + "tt0050717", + "tt0030581", + "tt0333458", + "tt0035009", + "tt3262722", + "tt2355921", + "tt0088380", + "tt0053241", + "tt3436442", + "tt0305751", + "tt0047211", + "tt0086972", + "tt0051993", + "tt1240284", + "tt2796776", + "tt2359810", + "tt0807521", + "tt1504960", + "tt3281258", + "tt2369154", + "tt1525580", + "tt2231536", + "tt0084340", + "tt2069887", + "tt1815185", + "tt1951176", + "tt1663680", + "tt1406032", + "tt3387320", + "tt0123179", + "tt2099577", + "tt0765432", + "tt0434440", + "tt0337593", + "tt0893382", + "tt0106973", + "tt2452384", + "tt2379082", + "tt2112219", + "tt1754257", + "tt2458820", + "tt3321254", + "tt1477185", + "tt1280013", + "tt2143788", + "tt2186819", + "tt2207778", + "tt2221362", + "tt2779318", + "tt2245188", + "tt2088869", + "tt0980999", + "tt0029638", + "tt1854236", + "tt2060540", + "tt2957680", + "tt2879770", + "tt2318158", + "tt2992590", + "tt2385306", + "tt2071466", + "tt1532538", + "tt2723720", + "tt2325719", + "tt2217936", + "tt0116717", + "tt2343685", + "tt1890486", + "tt1754074", + "tt2147303", + "tt1297301", + "tt2560206", + "tt1922721", + "tt0443678", + "tt3138730", + "tt0461495", + "tt0089026", + "tt2369127", + "tt1976003", + "tt3198244", + "tt2369702", + "tt2661620", + "tt2837602", + "tt2310622", + "tt2739012", + "tt2246520", + "tt3009336", + "tt1876267", + "tt2703958", + "tt1737795", + "tt0102913", + "tt2215215", + "tt2577652", + "tt0072389", + "tt0086494", + "tt0243976", + "tt2275949", + "tt0114928", + "tt1887785", + "tt1900854", + "tt2356999", + "tt2533024", + "tt2191400", + "tt2090497", + "tt2285752", + "tt0101560", + "tt1742178", + "tt2281345", + "tt0068361", + "tt0041724", + "tt0078832", + "tt0061693", + "tt0076852", + "tt2357926", + "tt1073486", + "tt2072078", + "tt3329358", + "tt3279582", + "tt2120160", + "tt0089763", + "tt2503968", + "tt2855648", + "tt2577150", + "tt0088192", + "tt2349854", + "tt2187115", + "tt1884369", + "tt2076223", + "tt2235515", + "tt3334538", + "tt2413338", + "tt2599898", + "tt1992150", + "tt3233548", + "tt2655788", + "tt1294794", + "tt1935201", + "tt1642669", + "tt2480784", + "tt1764645", + "tt1709653", + "tt2941258", + "tt2386327", + "tt2930770", + "tt1978451", + "tt0385690", + "tt1942989", + "tt1680679", + "tt1134665", + "tt0313597", + "tt2853806", + "tt2693114", + "tt0342088", + "tt1242548", + "tt0168492", + "tt2244098", + "tt0289080", + "tt0181317", + "tt0814656", + "tt0875609", + "tt0318034", + "tt1674772", + "tt0337661", + "tt0213704", + "tt2843344", + "tt1075035", + "tt0095714", + "tt0110770", + "tt0424810", + "tt0261203", + "tt0179074", + "tt1582551", + "tt0035755", + "tt1636542", + "tt2668102", + "tt0228438", + "tt0034637", + "tt0064135", + "tt2607336", + "tt0301429", + "tt0122008", + "tt1981059", + "tt2250032", + "tt0039495", + "tt0120699", + "tt0128690", + "tt0128089", + "tt0360985", + "tt1990420", + "tt1667317", + "tt1974254", + "tt2424028", + "tt0128996", + "tt1071820", + "tt1241721", + "tt0035614", + "tt2258212", + "tt2807624", + "tt0122617", + "tt2359347", + "tt2319879", + "tt2075280", + "tt0114393", + "tt2476644", + "tt3257582", + "tt0074569", + "tt1479320", + "tt1680119", + "tt0138792", + "tt2311912", + "tt0062204", + "tt1109582", + "tt1429433", + "tt2511058", + "tt0121841", + "tt1854569", + "tt2553908", + "tt0139687", + "tt0407095", + "tt1866919", + "tt1333994", + "tt3040608", + "tt1411274", + "tt0003286", + "tt0837559", + "tt2722326", + "tt2462758", + "tt1725157", + "tt2536816", + "tt2782646", + "tt0032283", + "tt3157196", + "tt0035612", + "tt0034538", + "tt2058597", + "tt3044782", + "tt1998402", + "tt2324730", + "tt0084750", + "tt2305644", + "tt0128083", + "tt2073520", + "tt0088881", + "tt2274172", + "tt0097935", + "tt0119367", + "tt0072222", + "tt2070852", + "tt1693653", + "tt3120538", + "tt2294923", + "tt0104997", + "tt1018877", + "tt0107704", + "tt0662643", + "tt0093896", + "tt2334178", + "tt0078187", + "tt2234457", + "tt0326923", + "tt2130136", + "tt2887012", + "tt1654829", + "tt2075296", + "tt3105008", + "tt1986951", + "tt1823125", + "tt1663673", + "tt3008034", + "tt2352394", + "tt0057603", + "tt2885536", + "tt1965057", + "tt2290749", + "tt1351177", + "tt2255976", + "tt2140499", + "tt0997179", + "tt2359002", + "tt0122768", + "tt1814905", + "tt1391087", + "tt2197905", + "tt1339161", + "tt2887426", + "tt2592046", + "tt2650986", + "tt2748088", + "tt2404269", + "tt1806827", + "tt2241741", + "tt0072933", + "tt2958484", + "tt2567390", + "tt1872138", + "tt2104985", + "tt2108541", + "tt1409772", + "tt3034278", + "tt2350432", + "tt0194104", + "tt2658768", + "tt2551428", + "tt0074701", + "tt2167715", + "tt2999688", + "tt2125698", + "tt1894616", + "tt1333885", + "tt2912578", + "tt0137890", + "tt2261542", + "tt2814372", + "tt2436516", + "tt0472514", + "tt2806788", + "tt2861320", + "tt1837587", + "tt1899142", + "tt2664080", + "tt0061851", + "tt2237822", + "tt1893326", + "tt2079512", + "tt2385104", + "tt2856272", + "tt0058073", + "tt2369235", + "tt1805454", + "tt3095900", + "tt2190367", + "tt2422212", + "tt1789091", + "tt2358937", + "tt2935888", + "tt3067038", + "tt1826689", + "tt1942876", + "tt1506998", + "tt0105434", + "tt2093280", + "tt0100645", + "tt1233548", + "tt0169707", + "tt2349212", + "tt0102950", + "tt2112131", + "tt1735350", + "tt1759682", + "tt0053171", + "tt2608998", + "tt0070180", + "tt0116607", + "tt2380408", + "tt2056520", + "tt2276778", + "tt1439235", + "tt2521724", + "tt2261629", + "tt2782834", + "tt1313130", + "tt2259392", + "tt2243246", + "tt0254256", + "tt0195209", + "tt0273777", + "tt1054116", + "tt1967697", + "tt0137995", + "tt1797348", + "tt1921119", + "tt2072066", + "tt1787837", + "tt0129831", + "tt0461894", + "tt0782690", + "tt3010462", + "tt0138745", + "tt2132485", + "tt1954811", + "tt2245223", + "tt1937222", + "tt1817276", + "tt1876360", + "tt2324098", + "tt2059193", + "tt1656194", + "tt0934458", + "tt2448704", + "tt1568929", + "tt2308497", + "tt1876373", + "tt0014624", + "tt2669872", + "tt0050709", + "tt1847584", + "tt0111105", + "tt2321257", + "tt0198723", + "tt0114581", + "tt2239078", + "tt2336846", + "tt0024685", + "tt0094066", + "tt2131523", + "tt2204282", + "tt0230825", + "tt0023028", + "tt1303039", + "tt1253565", + "tt1406035", + "tt2337993", + "tt0423034", + "tt1942951", + "tt0059335", + "tt2114440", + "tt2552570", + "tt1128959", + "tt0120125", + "tt2319002", + "tt2393787", + "tt1427689", + "tt0109494", + "tt0120086", + "tt0849258", + "tt0082241", + "tt0370613", + "tt0959880", + "tt1757939", + "tt2942226", + "tt0139060", + "tt2504910", + "tt0023213", + "tt0021735", + "tt0072637", + "tt2626432", + "tt1535975", + "tt0110197", + "tt2332801", + "tt0469965", + "tt0054692", + "tt0179809", + "tt2650718", + "tt2627146", + "tt2170228", + "tt1980033", + "tt2317102", + "tt2927068", + "tt2125653", + "tt2180465", + "tt1333887", + "tt2397425", + "tt0800235", + "tt0098369", + "tt2086830", + "tt0976074", + "tt1957955", + "tt1382728", + "tt2332881", + "tt2386203", + "tt0865557", + "tt2321517", + "tt0132893", + "tt1852040", + "tt1231285", + "tt2395155", + "tt1874789", + "tt2381989", + "tt0084538", + "tt2056740", + "tt1276962", + "tt0023631", + "tt2085888", + "tt2113073", + "tt0119893", + "tt2170301", + "tt1492849", + "tt0397696", + "tt1572146", + "tt2691554", + "tt0357842", + "tt1977817", + "tt1754633", + "tt0082213", + "tt2580928", + "tt2592336", + "tt0020018", + "tt2429870", + "tt2111466", + "tt0059312", + "tt0050174", + "tt1305039", + "tt1587411", + "tt0046006", + "tt1979345", + "tt1934260", + "tt2182001", + "tt2388208", + "tt1666168", + "tt2417568", + "tt1934269", + "tt0839773", + "tt1821449", + "tt2199711", + "tt0156115", + "tt2071458", + "tt2167791", + "tt2649366", + "tt1552436", + "tt2206354", + "tt2375664", + "tt0289320", + "tt2317171", + "tt0065374", + "tt2137818", + "tt1956407", + "tt0287826", + "tt2741136", + "tt0037902", + "tt2248944", + "tt1964630", + "tt0037402", + "tt2099788", + "tt0038936", + "tt1975158", + "tt2108546", + "tt0037053", + "tt2258281", + "tt0135613", + "tt1845283", + "tt2649128", + "tt2387413", + "tt1978480", + "tt2474156", + "tt2493386", + "tt0461674", + "tt1877788", + "tt2328749", + "tt2093255", + "tt1945087", + "tt2391009", + "tt0150742", + "tt2025511", + "tt2265116", + "tt2055593", + "tt0135024", + "tt2082335", + "tt1367236", + "tt2088735", + "tt2485988", + "tt2542544", + "tt1438214", + "tt2162565", + "tt2125423", + "tt2473572", + "tt2312702", + "tt0405022", + "tt1512897", + "tt1696535", + "tt0016545", + "tt0923824", + "tt0060186", + "tt1098326", + "tt2433190", + "tt0061343", + "tt2536030", + "tt1764275", + "tt2579836", + "tt2139965", + "tt2178802", + "tt1856047", + "tt2226178", + "tt0178352", + "tt1405809", + "tt2370378", + "tt2069798", + "tt1856014", + "tt2281267", + "tt2417286", + "tt2397573", + "tt1735200", + "tt0235539", + "tt2288037", + "tt2451374", + "tt2024519", + "tt1735221", + "tt0078868", + "tt1491605", + "tt1833835", + "tt2247134", + "tt2590280", + "tt2358412", + "tt1572491", + "tt0094849", + "tt2667242", + "tt2404519", + "tt2339487", + "tt2064816", + "tt2705666", + "tt2538176", + "tt2240784", + "tt2062559", + "tt1961604", + "tt1961279", + "tt2181989", + "tt1980959", + "tt0060531", + "tt1519663", + "tt1808240", + "tt1893364", + "tt0380277", + "tt0043967", + "tt0056174", + "tt2209414", + "tt0117397", + "tt1091869", + "tt2378000", + "tt1340588", + "tt0120166", + "tt1624413", + "tt1473397", + "tt0865561", + "tt2279083", + "tt0069974", + "tt2617734", + "tt1934436", + "tt1924336", + "tt0387925", + "tt0108495", + "tt2103171", + "tt2053378", + "tt0374621", + "tt0069197", + "tt0069303", + "tt0286516", + "tt0085991", + "tt0049271", + "tt2150332", + "tt0820863", + "tt1700443", + "tt2246673", + "tt0089009", + "tt0282971", + "tt1782453", + "tt2008486", + "tt0084358", + "tt2459496", + "tt2458582", + "tt0046471", + "tt1776088", + "tt1846649", + "tt0053112", + "tt2404153", + "tt1656197", + "tt1507261", + "tt1160012", + "tt1710994", + "tt1659215", + "tt1666800", + "tt2209300", + "tt2380247", + "tt2201083", + "tt0036901", + "tt1540931", + "tt2209386", + "tt2312602", + "tt2281425", + "tt2197849", + "tt0056886", + "tt1117523", + "tt2321901", + "tt0035506", + "tt1930327", + "tt1549584", + "tt2363219", + "tt1815998", + "tt1527813", + "tt1738366", + "tt1674057", + "tt2190475", + "tt2078733", + "tt0082343", + "tt2073693", + "tt0056207", + "tt1786442", + "tt0116348", + "tt0039040", + "tt0454082", + "tt2324544", + "tt0139719", + "tt0142260", + "tt0183717", + "tt0431839", + "tt0990413", + "tt2536086", + "tt2120057", + "tt0077944", + "tt0044698", + "tt0901241", + "tt1795029", + "tt0197273", + "tt1976608", + "tt1955043", + "tt1724982", + "tt2088029", + "tt2183152", + "tt1989712", + "tt2327495", + "tt2219868", + "tt2417854", + "tt1090749", + "tt1508245", + "tt2083379", + "tt2370034", + "tt1414404", + "tt0239969", + "tt0067197", + "tt1986871", + "tt0313532", + "tt0088693", + "tt2406636", + "tt1632477", + "tt2377938", + "tt0045603", + "tt0280185", + "tt2253708", + "tt1375789", + "tt2525450", + "tt0225002", + "tt0280911", + "tt0281354", + "tt0280676", + "tt0113370", + "tt0280022", + "tt0281701", + "tt0280021", + "tt0282269", + "tt0380263", + "tt1928123", + "tt2310157", + "tt0051671", + "tt1787054", + "tt0280499", + "tt2275861", + "tt1239374", + "tt2006894", + "tt2475692", + "tt1964570", + "tt0056693", + "tt2141717", + "tt2293218", + "tt0282393", + "tt1919137", + "tt2592910", + "tt2203951", + "tt2279313", + "tt1877580", + "tt1720073", + "tt0106469", + "tt2650548", + "tt2056778", + "tt2403849", + "tt1497876", + "tt2168938", + "tt1499302", + "tt1626838", + "tt2328505", + "tt2334731", + "tt0198803", + "tt2209426", + "tt2401621", + "tt2610768", + "tt1013607", + "tt2238803", + "tt0422037", + "tt0662647", + "tt0109282", + "tt1628069", + "tt0437806", + "tt0662644", + "tt2327453", + "tt2174072", + "tt0976867", + "tt2009402", + "tt1084683", + "tt0986075", + "tt0783476", + "tt0344777", + "tt1783798", + "tt2355823", + "tt1430116", + "tt1547084", + "tt1860359", + "tt0163178", + "tt1783232", + "tt1319569", + "tt2152887", + "tt2124074", + "tt0111579", + "tt2069708", + "tt1785394", + "tt1329370", + "tt1568892", + "tt1620604", + "tt1891970", + "tt2255735", + "tt1602620", + "tt2622420", + "tt0072204", + "tt0086051", + "tt2212658", + "tt1787988", + "tt0422419", + "tt0199065", + "tt1082577", + "tt0104507", + "tt1435990", + "tt0029957", + "tt2053339", + "tt1555058", + "tt0407783", + "tt0050210", + "tt2081260", + "tt0137004", + "tt0360323", + "tt1507564", + "tt1167660", + "tt2460656", + "tt1872819", + "tt2069100", + "tt2062580", + "tt0030348", + "tt2020110", + "tt2102396", + "tt1728982", + "tt2128694", + "tt2599106", + "tt2321373", + "tt1904887", + "tt1860181", + "tt2297906", + "tt2458314", + "tt1727491", + "tt1756595", + "tt1687856", + "tt1490678", + "tt1730342", + "tt1235853", + "tt2400284", + "tt1664813", + "tt0074916", + "tt0119705", + "tt1493813", + "tt1758610", + "tt1954470", + "tt0142251", + "tt2167970", + "tt1693830", + "tt0278737", + "tt1663321", + "tt0141625", + "tt0278012", + "tt0093891", + "tt0040580", + "tt2633114", + "tt0278885", + "tt0138795", + "tt0279055", + "tt1363091", + "tt1841840", + "tt1954688", + "tt0278930", + "tt2096541", + "tt0490701", + "tt1772984", + "tt1650031", + "tt1845849", + "tt1661067", + "tt0132726", + "tt0372824", + "tt0086168", + "tt1356285", + "tt0974584", + "tt2040608", + "tt1861307", + "tt0091820", + "tt1828972", + "tt2062961", + "tt2308860", + "tt2093109", + "tt1667905", + "tt1582235", + "tt0124899", + "tt2560016", + "tt1935909", + "tt2023367", + "tt1857605", + "tt2209266", + "tt2229842", + "tt0117216", + "tt0175327", + "tt2077826", + "tt0062746", + "tt1114723", + "tt0125591", + "tt2290789", + "tt0048549", + "tt2094854", + "tt1441083", + "tt0302566", + "tt0456069", + "tt1842532", + "tt2123996", + "tt0032359", + "tt2081255", + "tt1329457", + "tt1679332", + "tt1865425", + "tt0089821", + "tt0069027", + "tt0099029", + "tt2044888", + "tt2411024", + "tt2460690", + "tt2306783", + "tt0094011", + "tt2288742", + "tt2546480", + "tt0086650", + "tt1857797", + "tt1891942", + "tt2388725", + "tt0301414", + "tt2323551", + "tt1736636", + "tt1850394", + "tt2414702", + "tt1349486", + "tt0103666", + "tt0378897", + "tt0127932", + "tt1406044", + "tt1510918", + "tt0411234", + "tt0070380", + "tt1194238", + "tt2375417", + "tt0058275", + "tt0427582", + "tt2180333", + "tt0452675", + "tt1822302", + "tt1406042", + "tt1406029", + "tt2063834", + "tt1759660", + "tt0447431", + "tt1303042", + "tt0371739", + "tt2511190", + "tt2075107", + "tt2412338", + "tt2662762", + "tt2064984", + "tt1528510", + "tt2166214", + "tt2112281", + "tt1781773", + "tt2249167", + "tt1664708", + "tt2053352", + "tt1709157", + "tt0110463", + "tt0414879", + "tt1888555", + "tt0092776", + "tt1634286", + "tt2193782", + "tt1854582", + "tt0419198", + "tt0177323", + "tt0862888", + "tt0165494", + "tt1893277", + "tt2234275", + "tt0337907", + "tt2080291", + "tt1582383", + "tt2186933", + "tt1595061", + "tt0281718", + "tt0055609", + "tt2088919", + "tt1803178", + "tt1566541", + "tt0966573", + "tt0074868", + "tt0960801", + "tt2301039", + "tt0059262", + "tt2051850", + "tt1155588", + "tt2077677", + "tt2184211", + "tt1320395", + "tt0058063", + "tt1733525", + "tt0813547", + "tt0056363", + "tt2222550", + "tt0157182", + "tt1748224", + "tt1230161", + "tt1795588", + "tt0054851", + "tt0113249", + "tt2251662", + "tt0997229", + "tt1975320", + "tt1446695", + "tt2404645", + "tt0004395", + "tt1895314", + "tt2388920", + "tt2401575", + "tt0072072", + "tt1840911", + "tt0004284", + "tt0003961", + "tt1323914", + "tt0004091", + "tt1284656", + "tt0004011", + "tt0003934", + "tt0004100", + "tt0007613", + "tt0003733", + "tt0004736", + "tt1671513", + "tt2235988", + "tt0051542", + "tt2370792", + "tt0479257", + "tt2256514", + "tt2296404", + "tt1528225", + "tt1984279", + "tt2120152", + "tt0374807", + "tt1303037", + "tt1482186", + "tt2303104", + "tt2397619", + "tt1601238", + "tt1430625", + "tt1521791", + "tt2078586", + "tt2365776", + "tt1754374", + "tt2091368", + "tt0055578", + "tt1535100", + "tt1476427", + "tt1630052", + "tt1815799", + "tt0055116", + "tt2120779", + "tt0055114", + "tt2069885", + "tt0055564", + "tt2389344", + "tt1753584", + "tt0045037", + "tt0023422", + "tt2294729", + "tt2077772", + "tt2106739", + "tt1500906", + "tt0174577", + "tt1804607", + "tt1656179", + "tt2319760", + "tt0033356", + "tt1980162", + "tt1540816", + "tt0446771", + "tt2113113", + "tt1667691", + "tt1565958", + "tt1130965", + "tt1213921", + "tt0038557", + "tt0057974", + "tt0770753", + "tt1327827", + "tt1632726", + "tt0040751", + "tt2078672", + "tt2302561", + "tt1682186", + "tt0054423", + "tt0057628", + "tt0054289", + "tt0163554", + "tt0054788", + "tt0040430", + "tt1020955", + "tt0046904", + "tt0277657", + "tt0092828", + "tt0180752", + "tt0281325", + "tt0277784", + "tt0281236", + "tt0280574", + "tt0082437", + "tt0058605", + "tt0069507", + "tt1825166", + "tt1859522", + "tt1667133", + "tt1407055", + "tt1650555", + "tt0138624", + "tt1583737", + "tt0178515", + "tt1183939", + "tt1312222", + "tt0805640", + "tt2082197", + "tt1303900", + "tt1864491", + "tt1693107", + "tt2184095", + "tt1233487", + "tt0072260", + "tt2283748", + "tt0014440", + "tt1493858", + "tt1608782", + "tt2171416", + "tt0070569", + "tt1927068", + "tt1720189", + "tt2215273", + "tt1806911", + "tt0071784", + "tt2232446", + "tt1832405", + "tt1997289", + "tt1623660", + "tt2108538", + "tt1684225", + "tt1754478", + "tt2087820", + "tt2476918", + "tt0187819", + "tt1646221", + "tt2273507", + "tt2296692", + "tt1964868", + "tt1604554", + "tt2047891", + "tt1678054", + "tt0021148", + "tt2331066", + "tt2210879", + "tt1217059", + "tt1949554", + "tt1872880", + "tt2008562", + "tt1644503", + "tt2317744", + "tt1918886", + "tt2391843", + "tt0032819", + "tt1023725", + "tt0992360", + "tt2302931", + "tt1673736", + "tt1624376", + "tt0973512", + "tt1783392", + "tt0036161", + "tt1240282", + "tt0036398", + "tt1625562", + "tt0100416", + "tt1939753", + "tt0048459", + "tt2073137", + "tt0808289", + "tt2078613", + "tt0053247", + "tt1279426", + "tt1807892", + "tt2049511", + "tt0086146", + "tt1637656", + "tt1864526", + "tt1394039", + "tt1394038", + "tt1530975", + "tt2140189", + "tt1900942", + "tt1394037", + "tt0985431", + "tt1646979", + "tt0265080", + "tt2174089", + "tt0244046", + "tt1942937", + "tt0166849", + "tt0067283", + "tt0246294", + "tt2256858", + "tt0026684", + "tt2395349", + "tt0350725", + "tt1670638", + "tt1462053", + "tt1579235", + "tt0080947", + "tt1142803", + "tt1675309", + "tt1606382", + "tt0351075", + "tt0247043", + "tt1723126", + "tt1510114", + "tt1830166", + "tt0969031", + "tt0216533", + "tt1393566", + "tt0216719", + "tt0983613", + "tt0070350", + "tt1698551", + "tt1250861", + "tt1776222", + "tt2281111", + "tt1530953", + "tt2091243", + "tt1511425", + "tt1359553", + "tt1831623", + "tt1569931", + "tt0110480", + "tt0337744", + "tt0337721", + "tt1734442", + "tt0087135", + "tt221579", + "tt0089279", + "tt1172957", + "tt0048818", + "tt1600435", + "tt2367036", + "tt1311710", + "tt0035430", + "tt2116909", + "tt1650394", + "tt0893570", + "tt1710354", + "tt0098157", + "tt0174260", + "tt1465513", + "tt0079726", + "tt0465434", + "tt1588374", + "tt2398282", + "tt1529331", + "tt0325857", + "tt0122890", + "tt0082770", + "tt0815498", + "tt1445520", + "tt0192782", + "tt1835920", + "tt1930344", + "tt0143487", + "tt0134275", + "tt0180854", + "tt0183761", + "tt0260049", + "tt0265637", + "tt0265407", + "tt2371411", + "tt1278429", + "tt2226301", + "tt0036093", + "tt1844635", + "tt0037811", + "tt2167873", + "tt1301308", + "tt0045954", + "tt1460641", + "tt1764508", + "tt1918806", + "tt0082487", + "tt1608182", + "tt1833879", + "tt1516593", + "tt1720172", + "tt1737747", + "tt1714127", + "tt0334267", + "tt1233576", + "tt0380625", + "tt0332398", + "tt0054425", + "tt0246567", + "tt2072268", + "tt1918639", + "tt1846526", + "tt0062092", + "tt1244505", + "tt1316540", + "tt1988544", + "tt1776252", + "tt0093578", + "tt0141187", + "tt2024555", + "tt0107604", + "tt1680311", + "tt1857596", + "tt1876901", + "tt0067508", + "tt0138942", + "tt0061017", + "tt0493155", + "tt1821385", + "tt0135361", + "tt0061802", + "tt0481009", + "tt0061833", + "tt1772424", + "tt1913002", + "tt1533053", + "tt2402613", + "tt1754277", + "tt0046846", + "tt2028530", + "tt2090463", + "tt1692227", + "tt1674776", + "tt0808245", + "tt1657885", + "tt1558256", + "tt0893610", + "tt1482991", + "tt1526578", + "tt1784538", + "tt0103336", + "tt1716739", + "tt0228508", + "tt0309379", + "tt1580021", + "tt2234550", + "tt2142955", + "tt2147293", + "tt1763194", + "tt0914368", + "tt1699498", + "tt1034090", + "tt0112906", + "tt2055666", + "tt1937388", + "tt0086369", + "tt0087418", + "tt0485877", + "tt2271135", + "tt1735900", + "tt2336373", + "tt2328503", + "tt0036356", + "tt2093044", + "tt0071477", + "tt2290147", + "tt1557720", + "tt1829041", + "tt1679681", + "tt1525570", + "tt1540262", + "tt1579948", + "tt1846252", + "tt0129358", + "tt2024351", + "tt0072156", + "tt1634524", + "tt0482886", + "tt0320795", + "tt1834614", + "tt1331115", + "tt1813327", + "tt1966594", + "tt2058124", + "tt2246234", + "tt2012645", + "tt1774438", + "tt1899100", + "tt2328841", + "tt0034128", + "tt0034682", + "tt2034741", + "tt0037450", + "tt0034685", + "tt1145157", + "tt0355609", + "tt1969175", + "tt1687254", + "tt1484954", + "tt0310233", + "tt1610516", + "tt1817088", + "tt1628043", + "tt1748051", + "tt0066360", + "tt2125651", + "tt1681666", + "tt2063008", + "tt1430811", + "tt0147347", + "tt0181323", + "tt1582268", + "tt0139288", + "tt1687216", + "tt1127886", + "tt0136823", + "tt0086876", + "tt0126426", + "tt1446673", + "tt1326259", + "tt1331092", + "tt0045466", + "tt0173863", + "tt0160578", + "tt2299577", + "tt2321445", + "tt0191839", + "tt1651337", + "tt2016894", + "tt2393829", + "tt1741694", + "tt0193738", + "tt1169133", + "tt2093951", + "tt1703232", + "tt1552173", + "tt0053732", + "tt2080323", + "tt2322683", + "tt1804508", + "tt1663660", + "tt1645129", + "tt0983250", + "tt2047670", + "tt1620785", + "tt2153406", + "tt1691343", + "tt2191861", + "tt1433817", + "tt2087985", + "tt1319032", + "tt0083561", + "tt2226666", + "tt1706317", + "tt0046049", + "tt1460739", + "tt1667826", + "tt1764664", + "tt0121853", + "tt0036075", + "tt0259621", + "tt0126449", + "tt1866230", + "tt1981568", + "tt0046829", + "tt1941668", + "tt0254749", + "tt0494206", + "tt2221032", + "tt1733118", + "tt1754944", + "tt1516595", + "tt1935749", + "tt0245850", + "tt0117288", + "tt0078313", + "tt1600438", + "tt1954498", + "tt1789724", + "tt1742084", + "tt0478213", + "tt1635659", + "tt1535962", + "tt0036449", + "tt2191641", + "tt1401643", + "tt1887759", + "tt0090925", + "tt0081053", + "tt1922689", + "tt0954348", + "tt2202427", + "tt1753899", + "tt1533818", + "tt2241069", + "tt0875613", + "tt2041321", + "tt1002567", + "tt1109616", + "tt1326277", + "tt1604070", + "tt1519468", + "tt1686126", + "tt1589505", + "tt0929259", + "tt1719634", + "tt1796503", + "tt2404553", + "tt1975205", + "tt2248789", + "tt1670932", + "tt2319889", + "tt0057652", + "tt2136759", + "tt1931470", + "tt1700489", + "tt1258201", + "tt1814790", + "tt1972646", + "tt2106763", + "tt1728986", + "tt2261471", + "tt2043979", + "tt2144938", + "tt2308797", + "tt1384591", + "tt1553199", + "tt2301291", + "tt0096936", + "tt1596264", + "tt1560969", + "tt2386231", + "tt1417067", + "tt1572154", + "tt0433346", + "tt2268617", + "tt1747924", + "tt2125496", + "tt1440136", + "tt0174685", + "tt1295026", + "tt1401636", + "tt0049065", + "tt0238417", + "tt0041772", + "tt0820482", + "tt0769775", + "tt1954780", + "tt0099349", + "tt1816705", + "tt0045696", + "tt1699513", + "tt1550312", + "tt1922751", + "tt1641633", + "tt0180845", + "tt1648154", + "tt1782415", + "tt0077877", + "tt1687900", + "tt1886504", + "tt1657470", + "tt0415727", + "tt1249307", + "tt0511739", + "tt0073327", + "tt0050870", + "tt1701976", + "tt1444680", + "tt0999873", + "tt0325957", + "tt1068243", + "tt0072179", + "tt1606228", + "tt1532384", + "tt0068966", + "tt1785411", + "tt1711465", + "tt1722476", + "tt1606761", + "tt1669277", + "tt1702921", + "tt1954214", + "tt0059464", + "tt0064729", + "tt0130633", + "tt0265587", + "tt0451108", + "tt0418451", + "tt1555218", + "tt2302529", + "tt0972855", + "tt1784575", + "tt2288129", + "tt0063690", + "tt0906013", + "tt0072615", + "tt0076127", + "tt0079636", + "tt0064677", + "tt0310022", + "tt0357201", + "tt2099673", + "tt0447642", + "tt0205782", + "tt2214945", + "tt1514043", + "tt0061060", + "tt1619277", + "tt1434944", + "tt2056501", + "tt1712187", + "tt0847745", + "tt1686902", + "tt1507250", + "tt1687277", + "tt0395713", + "tt1503714", + "tt2137376", + "tt2022347", + "tt1839596", + "tt1206086", + "tt1100906", + "tt1394322", + "tt0483200", + "tt0480775", + "tt1430620", + "tt0265307", + "tt2100546", + "tt1980130", + "tt1846803", + "tt0056452", + "tt0074671", + "tt1679538", + "tt1528313", + "tt1784670", + "tt1582196", + "tt0996952", + "tt0083675", + "tt1710627", + "tt1398999", + "tt1705120", + "tt1194612", + "tt1236370", + "tt0329042", + "tt0477457", + "tt0884214", + "tt0201057", + "tt1647692", + "tt1734578", + "tt1599975", + "tt1542852", + "tt1675197", + "tt1691153", + "tt0166199", + "tt0116791", + "tt0213749", + "tt1698639", + "tt1276988", + "tt1220873", + "tt1604577", + "tt1455618", + "tt1600701", + "tt1390533", + "tt1355640", + "tt1308754", + "tt1400558", + "tt1395183", + "tt0404552", + "tt977855", + "tt1340107", + "tt1241258", + "tt1430137", + "tt0295682", + "tt1506990", + "tt1475549", + "tt1787636", + "tt1589487", + "tt1343110", + "tt1634508", + "tt0489342", + "tt1781069", + "tt1129437", + "tt1566648", + "tt1101031", + "tt1440755", + "tt1285240", + "tt1308182", + "tt1583356", + "tt1382725", + "tt1705773", + "tt1446201", + "tt1212007", + "tt1474889", + "tt1430096", + "tt1456661", + "tt1136688", + "tt1264115", + "tt0421974", + "tt1328909", + "tt1535107", + "tt1018789", + "tt0494826", + "tt1754332", + "tt0988102", + "tt1512201", + "tt1263800", + "tt1003051", + "tt1198153", + "tt1613315", + "tt1305067", + "tt1051241", + "tt1543920", + "tt1573072", + "tt1192422", + "tt1326954", + "tt1458956", + "tt1390543", + "tt1344784", + "tt1352852", + "tt1103255", + "tt1678053", + "tt1334549", + "tt1154826", + "tt1292652", + "tt0969653", + "tt1225703", + "tt1493246", + "tt0106922", + "tt1198101", + "tt1555126", + "tt1451698", + "tt0489210", + "tt1158933", + "tt1059233", + "tt1620549", + "tt1287875", + "tt1273813", + "tt1426383", + "tt1370426", + "tt1235838", + "tt1217426", + "tt1590024", + "tt1629718", + "tt0904128", + "tt0475970", + "tt1124061", + "tt0847215", + "tt0469094", + "tt1183917", + "tt1190894", + "tt1492872", + "tt1568927", + "tt1568916", + "tt1277400", + "tt1070781", + "tt1569369", + "tt1401641", + "tt1292033", + "tt1610301", + "tt1035730", + "tt1459000", + "tt1598440", + "tt1236440", + "tt1345777", + "tt1311082", + "tt1320236", + "tt1378811", + "tt0472073", + "tt1149362", + "tt1251735", + "tt1422201", + "tt1322277", + "tt1254696", + "tt1090674", + "tt1192621", + "tt1215523", + "tt1591585", + "tt0443771", + "tt1451797", + "tt1112784", + "tt0479204", + "tt1501658", + "tt1342964", + "tt1227929", + "tt1526300", + "tt1148229", + "tt1085515", + "tt0386064", + "tt1522835", + "tt1310569", + "tt0974662", + "tt1471846", + "tt1075113", + "tt1274418", + "tt1242539", + "tt1091207", + "tt1489946", + "tt0993841", + "tt1024219", + "tt0499238", + "tt438488", + "tt1135089", + "tt1337040", + "tt1360833", + "tt1094296", + "tt1307456", + "tt0378428", + "tt1266121", + "tt1265993", + "tt1156470", + "tt1046936", + "tt1096991", + "tt0299594", + "tt0066001", + "tt0059114", + "tt1124396", + "tt0826711", + "tt1399952", + "tt0115644", + "tt0420251", + "tt1462651", + "tt1094661", + "tt1233247", + "tt0113368", + "tt1264914", + "tt0339535", + "tt0488763", + "tt1084019", + "tt0120265", + "tt0956208", + "tt1230545", + "tt0488762", + "tt0972558", + "tt0860866", + "tt0448993", + "tt1042499", + "tt0460485", + "tt0261014", + "tt0411795", + "tt1190537", + "tt0499262", + "tt0084156", + "tt1305621", + "tt0300000", + "tt0469838", + "tt0366894", + "tt0343095", + "tt0969754", + "tt0496328", + "tt0275623", + "tt0432103", + "tt0169590", + "tt0403358", + "tt0946998", + "tt1244496", + "tt0407251", + "tt1193516", + "tt0388423", + "tt0441048", + "tt0250223", + "tt0123532", + "tt0071207", + "tt0361240", + "tt1114258", + "tt0110570", + "tt0351461", + "tt0046688", + "tt0119298", + "tt0426236", + "tt0301949", + "tt0133162", + "tt0098063", + "tt0424227", + "tt0056290", + "tt0493393", + "tt0364517", + "tt0416316", + "tt0079315", + "tt0136759", + "tt0057422", + "tt0083109", + "tt0101301", + "tt0107447", + "tt0973844", + "tt1014796", + "tt0823158", + "tt0449338", + "tt0065848", + "tt0892737", + "tt0058135", + "tt0892737", + "tt0449338", + "tt0065848", + "tt0823158", + "tt1014796", + "tt0058135", + "tt0973844", + "tt0892737", + "tt0058135", + "tt0823158", + "tt1014796", + "tt0973844", + "tt0065848", + "tt0449338", + "tt0892737", + "tt0973844", + "tt0823158", + "tt0449338", + "tt0065848", + "tt0058135", + "tt1014796", + "tt1137448", + "tt0043590", + "tt1306953", + "tt0822858", + "tt0131468", + "tt2611060", + "tt1229345", + "tt11415816", + "tt1372692", + "tt0117395", + "tt0083929", + "tt8339444", + "tt4916178", + "tt1998368", + "tt0089537", + "tt5805768", + "tt1243375", + "tt5774060", + "tt1209319", + "tt2476426", + "tt2325908", + "tt0097323", + "tt00281811", + "tt1340798", + "tt10078502", + "tt1562328", + "tt0454792", + "tt7613260", + "tt1836926", + "tt2831118", + "tt10691288", + "tt0404225", + "tt5621712", + "tt3413690", + "tt0040578", + "tt1765660", + "tt0052047", + "tt0097555", + "tt10830086", + "tt0122718", + "tt3261182", + "tt12036096", + "tt10521028", + "tt6668212", + "tt0104745", + "tt3121430", + "tt0142244", + "tt6713802", + "tt5330938", + "tt6782632", + "tt1465518", + "tt0024631", + "tt6208096", + "tt5117326", + "tt7635268", + "tt0108596", + "tt6658510", + "tt0080149", + "tt1852028", + "tt3397266", + "tt0062455", + "tt9358256", + "tt1035733", + "tt3460560", + "tt0045492", + "tt0345967", + "tt1107850", + "tt1754078", + "tt0065104", + "tt0290843", + "tt10919974", + "tt0457482", + "tt6189052", + "tt8089234", + "tt0415167", + "tt7969836", + "tt7304802", + "tt1497617", + "tt1732563", + "tt0072623", + "tt0090866", + "tt0126946", + "tt9663666", + "tt1223932", + "tt5105720", + "tt1780967", + "tt5123896", + "tt1337055", + "tt4208886", + "tt4429160", + "tt0210299", + "tt7998238", + "tt0101817", + "tt9647768", + "tt8228288", + "tt0860462", + "tt10680412", + "tt3169780", + "tt0964586", + "tt9540566", + "tt3142346", + "tt8806886", + "tt3295734", + "tt5332252", + "tt11229886", + "tt9806336", + "tt0491698", + "tt0061162", + "tt11523762", + "tt2741098", + "tt1327701", + "tt2183752", + "tt3612126", + "tt0102795", + "tt0419967", + "tt3949186", + "tt0064417", + "tt6961658", + "tt0325352", + "tt5094990", + "tt0040566", + "tt0202478", + "tt9358160", + "tt7521000", + "tt9759888", + "tt9430698", + "tt0430059", + "tt4855062", + "tt0144681", + "tt0901693", + "tt6388948", + "tt5213016", + "tt0123380", + "tt0093748", + "tt3165218", + "tt0098139", + "tt1483799", + "tt9784068", + "tt0101819", + "tt2388677", + "tt0454224", + "tt8507516", + "tt1234559", + "tt8540100", + "tt5105742", + "tt0050585", + "tt1120889", + "tt6532954", + "tt1145479", + "tt0350659", + "tt6704880", + "tt6990224", + "tt9578746", + "tt11130668", + "tt0084412", + "tt9782756", + "tt9104296", + "tt6568874", + "tt0092897", + "tt0254252", + "tt8710832", + "tt0024352", + "tt0038895", + "tt0073342", + "tt0109699", + "tt2177511", + "tt2819446", + "tt00", + "tt9024292", + "tt1057581", + "tt0117768", + "tt4727514", + "tt1758770", + "tt6108090", + "tt0291832", + "tt0160376", + "tt0384736", + "tt0150021", + "tt0985049", + "tt0457643", + "tt0295721", + "tt9646548", + "tt11952660", + "tt0473658", + "tt9050330", + "tt6712118", + "tt0067513", + "tt0496245", + "tt1707687", + "tt0293573", + "tt0075993", + "tt2048918", + "tt0082556", + "tt4658482", + "tt2916772", + "tt1171220", + "tt0120414", + "tt4506686", + "tt0857275", + "tt2085986", + "tt0385057", + "tt10382610", + "tt1612143", + "tt2319456", + "tt0056963", + "tt7010456", + "tt5785854", + "tt9617582", + "tt1112756", + "tt7801350", + "tt10359764", + "tt0197203", + "tt2657292", + "tt9011916", + "tt10008784", + "tt0235618", + "tt6914122", + "tt10289350", + "tt0396659", + "tt6826526", + "tt10062530", + "tt0287635", + "tt0067324", + "tt5105636", + "tt10132922", + "tt8971476", + "tt1655416", + "tt1422786", + "tt6744360", + "tt0021874", + "tt9000466", + "tt0099254", + "tt9246830", + "tt10055028", + "tt8368406", + "tt0033887", + "tt0486506", + "tt9403508", + "tt0192301", + "tt0157871", + "tt6073760", + "tt6192716", + "tt6285944", + "tt4858674", + "tt0074473", + "tt9173418", + "tt3640100", + "tt4125844", + "tt2630352", + "tt3514810", + "tt0071983", + "tt0042665", + "tt1639082", + "tt2353955", + "tt1268204", + "tt8150698", + "tt7847324", + "tt10269518", + "tt0072024", + "tt0098219", + "tt0066216", + "tt8713448", + "tt10828204", + "tt1059955", + "tt3302266", + "tt0983946", + "tt2076229", + "tt10680114", + "tt11916278", + "tt10579956", + "tt10917276", + "tt8116640", + "tt9261416", + "tt0482473", + "tt8130454", + "tt11934706", + "tt3096908", + "tt0037674", + "tt8025296", + "tt1611913", + "tt8036226", + "tt0758017", + "tt3475020", + "tt10601432", + "tt1825712", + "tt7292306", + "tt6263490", + "tt8926976", + "tt5296086", + "tt7420444", + "tt9341104", + "tt10832236", + "tt8653640", + "tt2835658", + "tt0044718", + "tt8599562", + "tt8497798", + "tt7275840", + "tt0099039", + "tt4949412", + "tt0084182", + "tt1675192", + "tt0063747", + "tt4834150", + "tt9079952", + "tt0100879", + "tt1562450", + "tt0113849", + "tt0261552", + "tt0109262", + "tt3655680", + "tt9214832", + "tt0360140", + "tt10419672", + "tt10890570", + "tt5105650", + "tt2543826", + "tt10892554", + "tt0076024", + "tt0168331", + "tt1433108", + "tt10177634", + "tt1890425", + "tt0075859", + "tt2623502", + "tt11202796", + "tt8159302", + "tt8863066", + "tt4038046", + "tt11616596", + "tt1412334", + "tt6587640", + "tt5950068", + "tt0044881", + "tt10702760", + "tt11652546", + "tt8811348", + "tt0094007", + "tt4765928", + "tt0390042", + "tt5570680", + "tt9001652", + "tt2014271", + "tt10109764", + "tt6739796", + "tt9815998", + "tt8991268", + "tt0082747", + "tt3556590", + "tt9357288", + "tt1022513", + "tt0976060", + "tt1233528", + "tt0076301", + "tt0131461", + "tt0105396", + "tt0142240", + "tt1029238", + "tt10540242", + "tt7159566", + "tt0063054", + "tt3474776", + "tt1079448", + "tt8896224", + "tt0364603", + "tt1132286", + "tt1172069", + "tt0229335", + "tt0127545", + "tt1156479", + "tt1645748", + "tt6076810", + "tt6899324", + "tt0106837", + "tt1611947", + "tt0096154", + "tt0060192", + "tt1543211", + "tt5684728", + "tt6200160", + "tt0060126", + "tt10198072", + "tt4500196", + "tt0499556", + "tt0025238", + "tt0099079", + "tt0152930", + "tt0219058", + "tt11808612", + "tt0082244", + "tt1941438", + "tt3098276", + "tt6317962", + "tt0052817", + "tt0100600", + "tt0339343", + "tt7535290", + "tt0218864", + "tt3633118", + "tt7134096", + "tt0060416", + "tt5377164", + "tt0078295", + "tt0087391", + "tt1241325", + "tt2527338", + "tt0144178", + "tt0293467", + "tt7904182", + "tt0080379", + "tt2739792", + "tt6874188", + "tt0156587", + "tt0168264", + "tt5608918", + "tt10720816", + "tt8544498", + "tt11050682", + "tt0108554", + "tt0071859", + "tt2094052", + "tt0047475", + "tt11014432", + "tt0143334", + "tt5116896", + "tt0879223", + "tt12092784", + "tt9310328", + "tt0070570", + "tt3316122", + "tt6098546", + "tt6961856", + "tt4788910", + "tt0029078", + "tt0870958", + "tt1533114", + "tt10590458", + "tt2259360", + "tt0069959", + "tt6512632", + "tt2007387", + "tt1942871", + "tt6911110", + "tt7697348", + "tt0164528", + "tt0809925", + "tt1756773", + "tt8747304", + "tt0317522", + "tt1643240", + "tt1756447", + "tt1782250", + "tt0176326", + "tt5868630", + "tt1943783", + "tt10129040", + "tt11908078", + "tt8288450", + "tt0036836", + "tt11384542", + "tt4202960", + "tt0070374", + "tt0043554", + "tt0112907", + "tt4074384", + "tt1372710", + "tt1249299", + "tt1874451", + "tt0138444", + "tt10044040", + "tt3701460", + "tt11804772", + "tt0453161", + "tt6961624", + "tt0322645", + "tt8026108", + "tt0074381", + "tt4257940", + "tt0445777", + "tt10095266", + "tt11615038", + "tt3140044", + "tt9537888", + "tt9747954", + "tt0080900", + "tt8854392", + "tt10756374", + "tt4674962", + "tt0048352", + "tt0929261", + "tt11922698", + "tt2771206", + "tt11611650", + "tt0105807", + "tt2214981", + "tt7150126", + "tt0314724", + "tt10648440", + "tt8665898", + "tt7119062", + "tt8064418", + "tt0101442", + "tt2246809", + "tt5325012", + "tt1430622", + "tt1241719", + "tt5770566", + "tt0060220", + "tt8816178", + "tt0274560", + "tt0122158", + "tt9418812", + "tt0120121", + "tt7399138", + "tt1818443", + "tt5941796", + "tt3746176", + "tt1282016", + "tt11952720", + "tt3030920", + "tt1295071", + "tt3243774", + "tt0124315", + "tt8186932", + "tt0077964", + "tt0106538", + "tt1941717", + "tt1003023", + "tt2354247", + "tt1606191", + "tt10510654", + "tt0397101", + "tt12144858", + "tt0984130", + "tt0315488", + "tt0070243", + "tt0854667", + "tt1145446", + "tt9111316", + "tt0076555", + "tt7286836", + "tt0105385", + "tt11597152", + "tt6720680", + "tt3884454", + "tt0216312", + "tt11294784", + "tt11563110", + "tt0068837", + "tt1871360", + "tt7737734", + "tt0107468", + "tt0234805", + "tt5542820", + "tt9127820", + "tt7838654", + "tt6116766", + "tt1505143", + "tt0090349", + "tt7779936", + "tt0978797", + "tt6330246", + "tt0346094", + "tt8634576", + "tt7115168", + "tt0847086", + "tt0014694", + "tt1657517", + "tt0194146", + "tt8403168", + "tt10793604", + "tt10126434", + "tt11661552", + "tt1479686", + "tt0144096", + "tt7146812", + "tt0083702", + "tt8289504", + "tt0446755", + "tt9581076", + "tt0019646", + "tt6143798", + "tt0167116", + "tt3233904", + "tt0443567", + "tt5769528", + "tt8430676", + "tt0124836", + "tt1340795", + "tt2551580", + "tt5527000", + "tt0312941", + "tt0377524", + "tt11861072", + "tt6292658", + "tt0102004", + "tt8759834", + "tt0046872", + "tt2420124", + "tt11143286", + "tt10864124", + "tt3455822", + "tt7520672", + "tt6296274", + "tt4340740", + "tt4962796", + "tt3030928", + "tt1927126", + "tt0104942", + "tt7884738", + "tt7997042", + "tt1246723", + "tt5488974", + "tt9651690", + "tt0378848", + "tt0163816", + "tt3748918", + "tt9898858", + "tt0482122", + "tt1603789", + "tt0058991", + "tt10244008", + "tt2309001", + "tt6926356", + "tt10740584", + "tt1631783", + "tt0080796", + "tt0074650", + "tt1674741", + "tt1718765", + "tt0479943", + "tt9684220", + "tt3746820", + "tt0282543", + "tt0313255", + "tt7879442", + "tt0835876", + "tt0051083", + "tt0057574", + "tt8485772", + "tt0070423", + "tt0848542", + "tt8686136", + "tt0796979", + "tt10709062", + "tt1602500", + "tt7755856", + "tt0479880", + "tt0063233", + "tt2350374", + "tt6745550", + "tt12020764", + "tt8244784", + "tt2404385", + "tt5105702", + "tt7335796", + "tt9779516", + "tt0405821", + "tt6439558", + "tt4693840", + "tt1342378", + "tt8391976", + "tt1272025", + "tt7625678", + "tt1327798", + "tt7772582", + "tt5691024", + "tt3804756", + "tt0217074", + "tt1494775", + "tt1587139", + "tt0054614", + "tt0483022", + "tt0448205", + "tt0804485", + "tt6390668", + "tt3458196", + "tt0223154", + "tt0995036", + "tt5717610", + "tt7357210", + "tt6012380", + "tt6612512", + "tt8395052", + "tt10850450", + "tt1730698", + "tt7842256", + "tt5721654", + "tt11823922", + "tt0222396", + "tt3280186", + "tt8360450", + "tt0414924", + "tt2392674", + "tt2372335", + "tt0882969", + "tt0318649", + "tt1122769", + "tt9016016", + "tt10131762", + "tt6969550", + "tt0234217", + "tt8631800", + "tt0034982", + "tt1199552", + "tt0032032", + "tt0390393", + "tt1151921", + "tt1487896", + "tt7120400", + "tt9378216", + "tt6180608", + "tt6610280", + "tt0452011", + "tt12092836", + "tt7764130", + "tt6843538", + "tt1543299", + "tt3037846", + "tt4171032", + "tt2763400", + "tt3065504", + "tt5474644", + "tt4760186", + "tt6958618", + "tt0342167", + "tt11223288", + "tt2326075", + "tt4438098", + "tt10892530", + "tt11708056", + "tt5192640", + "tt1449183", + "tt0399040", + "tt8826812", + "tt2258731", + "tt0231931", + "tt11990802", + "tt10270966", + "tt0284655", + "tt1328865", + "tt11029976", + "tt0444706", + "tt1577061", + "tt8904630", + "tt5138974", + "tt1153102", + "tt11656836", + "tt4620098", + "tt2481202", + "tt4353996", + "tt0856008", + "tt9787524", + "tt9643408", + "tt9358200", + "tt9402676", + "tt11173480", + "tt6850276", + "tt4960930", + "tt11892646", + "tt1471236", + "tt0342420", + "tt6945500", + "tt2521086", + "tt2309770", + "tt11189596", + "tt0070755", + "tt0067052", + "tt0043313", + "tt3717192", + "tt3838802", + "tt2112206", + "tt0479879", + "tt9244638", + "tt0055282", + "tt0447953", + "tt3613084", + "tt0030341", + "tt1524114", + "tt0104088", + "tt7500618", + "tt6509810", + "tt0073703", + "tt6538150", + "tt0377112", + "tt0386669", + "tt2033425", + "tt4515928", + "tt0072085", + "tt0840999", + "tt8413006", + "tt2916682", + "tt0044828", + "tt1977002", + "tt3612514", + "tt8924580", + "tt0099310", + "tt0102562", + "tt0093733", + "tt6782412", + "tt9345754", + "tt3262450", + "tt9214950", + "tt4287586", + "tt7629818", + "tt6264018", + "tt0470737", + "tt0117445", + "tt5868938", + "tt5269710", + "tt0043913", + "tt0057055", + "tt0117716", + "tt0216399", + "tt2063819", + "tt10167262", + "tt5808370", + "tt1243630", + "tt2953304", + "tt7336470", + "tt1361330", + "tt1486843", + "tt8545634", + "tt4201990", + "tt0097354", + "tt9033432", + "tt10120472", + "tt9803152", + "tt11348950", + "tt5105688", + "tt3266266", + "tt8242084", + "tt9147456", + "tt10294052", + "tt0243885", + "tt5462882", + "tt0988043", + "tt9522080", + "tt0343737", + "tt4572682", + "tt0342258", + "tt11152492", + "tt10575718", + "tt4047704", + "tt2305348", + "tt7334158", + "tt7665428", + "tt2367680", + "tt0119423", + "tt7959296", + "tt7516844", + "tt7545266", + "tt9442842", + "tt1137999", + "tt7858400", + "tt7113678", + "tt6413712", + "tt1340569", + "tt3098812", + "tt8324576", + "tt5588938", + "tt0051472", + "tt7531096", + "tt0142239", + "tt0023410", + "tt11033574", + "tt0892074", + "tt1318025", + "tt3733374", + "tt1570966", + "tt9239422", + "tt0804550", + "tt10027696", + "tt3105428", + "tt0082382", + "tt8902948", + "tt7622584", + "tt7177250", + "tt5174992", + "tt6803242", + "tt1942887", + "tt4574440", + "tt0267573", + "tt0427848", + "tt6400476", + "tt2319142", + "tt1095414", + "tt1502397", + "tt6095808", + "tt0144315", + "tt4136162", + "tt6875564", + "tt0342561", + "tt8580466", + "tt1601475", + "tt5657658", + "tt1226752", + "tt4331488", + "tt2220642", + "tt4449516", + "tt11086254", + "tt10886166", + "tt9010802", + "tt9482786", + "tt0055796", + "tt0109400", + "tt0079048", + "tt6131636", + "tt0033491", + "tt1130091", + "tt9261218", + "tt0053578", + "tt7583274", + "tt7579446", + "tt0410520", + "tt11570218", + "tt4044970", + "tt0061409", + "tt6414632", + "tt5571130", + "tt2316810", + "tt0035015", + "tt8951692", + "tt0462069", + "tt1432078", + "tt9285882", + "tt2981410", + "tt8998896", + "tt0151399", + "tt1412367", + "tt0035039", + "tt10133224", + "tt1422191", + "tt0111199", + "tt9056522", + "tt11160666", + "tt7925798", + "tt0005302", + "tt4840810", + "tt1657448", + "tt0074877", + "tt6626486", + "tt0126016", + "tt9185066", + "tt1602474", + "tt0374324", + "tt0114555", + "tt3263230", + "tt4459424", + "tt1235836", + "tt9621284", + "tt11055922", + "tt1029269", + "tt5864254", + "tt0918554", + "tt8633560", + "tt4669252", + "tt1467088", + "tt1051906", + "tt0780577", + "tt6808310", + "tt0101390", + "tt0814331", + "tt1718898", + "tt0165461", + "tt11747672", + "tt8923484", + "tt0410320", + "tt0065646", + "tt8488518", + "tt3154432", + "tt0073887", + "tt0420128", + "tt0035951", + "tt3905450", + "tt4963900", + "tt0108499", + "tt9794870", + "tt0062456", + "tt0420683", + "tt0059884", + "tt10533570", + "tt1843212", + "tt9869578", + "tt4287598", + "tt6793972", + "tt4729322", + "tt2736032", + "tt8775036", + "tt1373215", + "tt3007072", + "tt2314030", + "tt11921696", + "tt9777914", + "tt11844684", + "tt5582566", + "tt8861826", + "tt8686088", + "tt0029350", + "tt6640384", + "tt0878649", + "tt0202880", + "tt0068235", + "tt1151915", + "tt9247926", + "tt1509268", + "tt7395804", + "tt0498097", + "tt4393206", + "tt0043871", + "tt8466726", + "tt0245479", + "tt11987296", + "tt3451320", + "tt5962096", + "tt2207870", + "tt11609344", + "tt10485690", + "tt11810424", + "tt0091428", + "tt10944744", + "tt0045886", + "tt6824050", + "tt10882126", + "tt6794462", + "tt0085835", + "tt8422628", + "tt9048786", + "tt0440712", + "tt3663020", + "tt0441909", + "tt9148706", + "tt0044326", + "tt1065092", + "tt5580130", + "tt0029706", + "tt0293508", + "tt3477064", + "tt0116001", + "tt8058874", + "tt1349640", + "tt0131046", + "tt0116446", + "tt2113679", + "tt3103350", + "tt11952742", + "tt2181969", + "tt0051102", + "tt0147582", + "tt4506208", + "tt4524436", + "tt8299768", + "tt1486192", + "tt0142233", + "tt3229518", + "tt4623902", + "tt8191944", + "tt11277954", + "tt9597922", + "tt6684976", + "tt0415012", + "tt10071352", + "tt5244812", + "tt1094277", + "tt6408738", + "tt0403885", + "tt6338744", + "tt1235059", + "tt0117496", + "tt5442884", + "tt0056444", + "tt9086228", + "tt2132415", + "tt0043559", + "tt2433408", + "tt9617504", + "tt5761986", + "tt1325753", + "tt4106514", + "tt3494610", + "tt6267926", + "tt6672152", + "tt2552684", + "tt4417352", + "tt9399288", + "tt0118766", + "tt9225192", + "tt7906978", + "tt8332454", + "tt12043620", + "tt3111426", + "tt11136726", + "tt4797182", + "tt1255956", + "tt7901350", + "tt5489276", + "tt5572856", + "tt0116147", + "tt0448965", + "tt8060054", + "tt8906652", + "tt3091258", + "tt0841009", + "tt0099506", + "tt0142235", + "tt1142972", + "tt0215545", + "tt8299862", + "tt0086112", + "tt8221736", + "tt0365938", + "tt1320237", + "tt11810418", + "tt8739582", + "tt0827181", + "tt0074626", + "tt0105856", + "tt10674930", + "tt3907102", + "tt5830000", + "tt0339526", + "tt2815772", + "tt1655629", + "tt4759654", + "tt3612246", + "tt2716382", + "tt0846713", + "tt5096470", + "tt7942116", + "tt6657486", + "tt9876418", + "tt1542903", + "tt11686346", + "tt0455474", + "tt2125584", + "tt7587876", + "tt12078990", + "tt5941336", + "tt1646103", + "tt6022266", + "tt11082984", + "tt1023345", + "tt5815016", + "tt0468547", + "tt4286440", + "tt0084033", + "tt8974576", + "tt4581548", + "tt0065889", + "tt0058773", + "tt0395565", + "tt12109074", + "tt0072206", + "tt0475557", + "tt11565362", + "tt0118617", + "tt8363908", + "tt11656094", + "tt0117882", + "tt9612368", + "tt6856396", + "tt6837832", + "tt8750570", + "tt0095827", + "tt0057580", + "tt3418854", + "tt1650048", + "tt1496002", + "tt1964995", + "tt7120602", + "tt0113236", + "tt8009102", + "tt10384744", + "tt5136700", + "tt3115906", + "tt0038369", + "tt0451166", + "tt1756679", + "tt11169980", + "tt0091511", + "tt1451620", + "tt6472742", + "tt0093522", + "tt3274690", + "tt0177636", + "tt0120742", + "tt8661510", + "tt7537216", + "tt0235221", + "tt4195970", + "tt6094970", + "tt1441259", + "tt10463146", + "tt10925166", + "tt5470448", + "tt11692010", + "tt0804540", + "tt2363495", + "tt2925992", + "tt11374034", + "tt7510346", + "tt0365541", + "tt10151496", + "tt11584600", + "tt9208444", + "tt6151048", + "tt5265974", + "tt1800351", + "tt3327918", + "tt1232825", + "tt10145122", + "tt1519640", + "tt10876506", + "tt9026262", + "tt7504726", + "tt4558376", + "tt9617578", + "tt0327850", + "tt1156395", + "tt3824648", + "tt3282664", + "tt6690836", + "tt0103266", + "tt0061084", + "tt8559826", + "tt8406738", + "tt3110634", + "tt0235546", + "tt8591260", + "tt0078224", + "tt1097649", + "tt1371711", + "tt0090248", + "tt0107305", + "tt10345024", + "tt1896767", + "tt0035583", + "tt12036052", + "tt8258074", + "tt3276648", + "tt7638094", + "tt3557730", + "tt0246748", + "tt6247650", + "tt12038270", + "tt7808118", + "tt2134099", + "tt1346516", + "tt5217608", + "tt4270452", + "tt11583568", + "tt0078345", + "tt11447658", + "tt0304328", + "tt5784708", + "tt0338139", + "tt2103997", + "tt8569578", + "tt0098667", + "tt9662980", + "tt8589474", + "tt7373264", + "tt0057527", + "tt3054496", + "tt0118632", + "tt7520274", + "tt1797514", + "tt9889664", + "tt9786512", + "tt2762738", + "tt0305934", + "tt8367814", + "tt8201996", + "tt10937434", + "tt6924682", + "tt2173222", + "tt3737420", + "tt1634106", + "tt1641253", + "tt1937374", + "tt0074853", + "tt4316472", + "tt9580138", + "tt11045776", + "tt0000000", + "tt0044000", + "tt0374330", + "tt7827944", + "tt0102014", + "tt4137924", + "tt3455082", + "tt6271432", + "tt0183869", + "tt12098392", + "tt0188388", + "tt9389612", + "tt7258372", + "tt4907206", + "tt8791752", + "tt6087964", + "tt10619512", + "tt3342658", + "tt9287778", + "tt0066126", + "tt0053225", + "tt11962590", + "tt6344664", + "tt0039634", + "tt9620830", + "tt0431114", + "tt1198405", + "tt7790498", + "tt0052338", + "tt8555248", + "tt1445729", + "tt8956392", + "tt0364457", + "tt6531506", + "tt4033358", + "tt5577494", + "tt8901942", + "tt2637196", + "tt4515456", + "tt9702698", + "tt0479917", + "tt0351759", + "tt0976222", + "tt1202203", + "tt10151054", + "tt2467442", + "tt7204348", + "tt0109263", + "tt0066820", + "tt1133594", + "tt0039204", + "tt0836685", + "tt0452702", + "tt3607532", + "tt8406744", + "tt9769254" +] \ No newline at end of file diff --git a/scraper/scrapers/rarbg/rargb_series_imdb_ids_2020-04-22.json b/scraper/scrapers/rarbg/rargb_series_imdb_ids_2020-04-22.json new file mode 100644 index 0000000..a0cdb45 --- /dev/null +++ b/scraper/scrapers/rarbg/rargb_series_imdb_ids_2020-04-22.json @@ -0,0 +1,6305 @@ +[ + "tt9047510", + "tt3831508", + "tt9134336", + "tt2286266", + "tt8170404", + "tt6333104", + "tt3138604", + "tt2769458", + "tt2309405", + "tt6958022", + "tt1845887", + "tt5038678", + "tt10810430", + "tt8660874", + "tt0112230", + "tt0408368", + "tt6507028", + "tt5056958", + "tt3667284", + "tt4095622", + "tt5562058", + "tt4360400", + "tt11168116", + "tt9145880", + "tt6009602", + "tt6167962", + "tt8509922", + "tt6083778", + "tt5761152", + "tt0262990", + "tt0058824", + "tt4154858", + "tt0098798", + "tt7599942", + "tt2406026", + "tt4680444", + "tt4770018", + "tt6416260", + "tt5592230", + "tt10715140", + "tt1884907", + "tt4231140", + "tt1249208", + "tt1840051", + "tt4855578", + "tt10087444", + "tt4649390", + "tt5324986", + "tt0118248", + "tt3432424", + "tt8130432", + "tt0063951", + "tt8080054", + "tt5012644", + "tt8461242", + "tt7695916", + "tt5992164", + "tt9181662", + "tt4995052", + "tt10132958", + "tt3369162", + "tt0808099", + "tt5421602", + "tt7335184", + "tt1885102", + "tt7274440", + "tt1845307", + "tt6128254", + "tt9140352", + "tt5742760", + "tt3761278", + "tt2357547", + "tt6150820", + "tt6840134", + "tt0397306", + "tt3793630", + "tt6529388", + "tt3487410", + "tt9315990", + "tt9169800", + "tt0885761", + "tt9426290", + "tt2132641", + "tt3691462", + "tt6842242", + "tt0262985", + "tt1196946", + "tt4124758", + "tt0053479", + "tt10291112", + "tt2580046", + "tt5530706", + "tt3507484", + "tt5580664", + "tt2373856", + "tt7484994", + "tt6438090", + "tt7555294", + "tt9643158", + "tt6467482", + "tt8518136", + "tt3663490", + "tt3577058", + "tt6936928", + "tt9604400", + "tt10698408", + "tt3816666", + "tt2235942", + "tt8332034", + "tt6236572", + "tt0278866", + "tt0238784", + "tt3317064", + "tt10314462", + "tt2883562", + "tt5043530", + "tt2070443", + "tt0075488", + "tt8682948", + "tt6106704", + "tt4179452", + "tt8063866", + "tt7667038", + "tt4673856", + "tt2891574", + "tt5225764", + "tt4683956", + "tt1462059", + "tt0080221", + "tt2719784", + "tt3419604", + "tt8765446", + "tt7370506", + "tt10621514", + "tt8649378", + "tt5960546", + "tt0275137", + "tt3592718", + "tt2195454", + "tt8412178", + "tt9335658", + "tt1590961", + "tt3560094", + "tt9686194", + "tt8708280", + "tt0364828", + "tt10037034", + "tt5336934", + "tt1598754", + "tt1179817", + "tt5754418", + "tt1190634", + "tt2361849", + "tt7895774", + "tt2129304", + "tt2252938", + "tt4705002", + "tt7660850", + "tt1570957", + "tt5638056", + "tt0445890", + "tt7053188", + "tt8986558", + "tt0115101", + "tt0185103", + "tt6917192", + "tt5489746", + "tt1703925", + "tt7520794", + "tt2948562", + "tt8115560", + "tt1760943", + "tt9899340", + "tt5527612", + "tt8415880", + "tt2575968", + "tt8746478", + "tt8341954", + "tt10196418", + "tt6347484", + "tt1743880", + "tt6001964", + "tt0086662", + "tt3428912", + "tt6708260", + "tt5903724", + "tt2736666", + "tt0084967", + "tt8893498", + "tt9640354", + "tt5227038", + "tt0071054", + "tt2261391", + "tt2738038", + "tt8325314", + "tt0108778", + "tt2777876", + "tt4931888", + "tt6383288", + "tt3796080", + "tt9047042", + "tt4573608", + "tt4577556", + "tt3589872", + "tt5176266", + "tt2746736", + "tt7763662", + "tt0129712", + "tt1778108", + "tt2753110", + "tt5351176", + "tt9028816", + "tt0407362", + "tt5761478", + "tt5882386", + "tt0364779", + "tt8295694", + "tt5874596", + "tt3481544", + "tt9855482", + "tt11742152", + "tt4089276", + "tt1545214", + "tt8072678", + "tt7136584", + "tt6112414", + "tt8178650", + "tt0115109", + "tt6015808", + "tt0112178", + "tt5444332", + "tt8134160", + "tt5606154", + "tt2338232", + "tt2216156", + "tt5693604", + "tt8845238", + "tt0310455", + "tt5182866", + "tt7826108", + "tt8806524", + "tt5772346", + "tt1367709", + "tt5296406", + "tt1748888", + "tt8080122", + "tt8792230", + "tt5034326", + "tt8628426", + "tt1079959", + "tt1592287", + "tt6255500", + "tt6503434", + "tt3216682", + "tt5592146", + "tt0417373", + "tt0460681", + "tt3692064", + "tt7423198", + "tt1588224", + "tt3187578", + "tt8589128", + "tt0344651", + "tt1078394", + "tt0106145", + "tt8385496", + "tt2177491", + "tt6297682", + "tt8746434", + "tt3116086", + "tt9246600", + "tt6957316", + "tt10243692", + "tt7260852", + "tt10284122", + "tt6466208", + "tt6682754", + "tt0835010", + "tt5242220", + "tt2514488", + "tt8310612", + "tt5179808", + "tt7178582", + "tt3743822", + "tt6566480", + "tt5830272", + "tt0397442", + "tt2628232", + "tt5674872", + "tt7490342", + "tt2346091", + "tt0108909", + "tt0080196", + "tt6165532", + "tt5232792", + "tt1124373", + "tt11707368", + "tt0429318", + "tt3640276", + "tt0074053", + "tt0149460", + "tt11654094", + "tt0758790", + "tt3782838", + "tt8323670", + "tt10981666", + "tt4589246", + "tt5330088", + "tt4476574", + "tt4475198", + "tt2247314", + "tt2223298", + "tt8871764", + "tt4716268", + "tt6714616", + "tt0870032", + "tt2342652", + "tt4428038", + "tt10329046", + "tt2994108", + "tt3422854", + "tt2301351", + "tt0419336", + "tt4719894", + "tt8159960", + "tt7203552", + "tt7306102", + "tt1225790", + "tt7157494", + "tt2904656", + "tt0070644", + "tt5779222", + "tt2712740", + "tt3893332", + "tt9717424", + "tt7949606", + "tt1734135", + "tt6069204", + "tt3173854", + "tt0375355", + "tt8285216", + "tt1442566", + "tt2131368", + "tt1604099", + "tt5697642", + "tt6461746", + "tt3321642", + "tt6087072", + "tt0338580", + "tt2244077", + "tt8050740", + "tt2575988", + "tt2710104", + "tt1646043", + "tt5834204", + "tt5396572", + "tt2265572", + "tt8760264", + "tt7948268", + "tt3515512", + "tt6304194", + "tt0068093", + "tt5651844", + "tt0319969", + "tt5559366", + "tt5796728", + "tt2524238", + "tt2293002", + "tt2091498", + "tt3496230", + "tt10065678", + "tt2300923", + "tt10482560", + "tt7623616", + "tt4122068", + "tt4118584", + "tt0437729", + "tt2334429", + "tt7956684", + "tt1382367", + "tt7668518", + "tt9251798", + "tt8359610", + "tt8521728", + "tt3986120", + "tt1943276", + "tt2550284", + "tt7942796", + "tt9769678", + "tt2467372", + "tt2815522", + "tt3012540", + "tt3390892", + "tt0965364", + "tt10750498", + "tt4973548", + "tt8598154", + "tt3602046", + "tt4172154", + "tt2768802", + "tt6385418", + "tt1318007", + "tt10768172", + "tt7057260", + "tt4154452", + "tt7156016", + "tt9073722", + "tt1595859", + "tt3514324", + "tt4363588", + "tt4266116", + "tt7368008", + "tt3696720", + "tt1122770", + "tt0859592", + "tt6524350", + "tt5661410", + "tt7838332", + "tt4455862", + "tt3042608", + "tt10417836", + "tt2646334", + "tt9088596", + "tt10662040", + "tt9632280", + "tt3223004", + "tt1697033", + "tt1342711", + "tt0446241", + "tt4445154", + "tt0111932", + "tt5774044", + "tt1443927", + "tt4181172", + "tt9165776", + "tt3215364", + "tt10228032", + "tt6160506", + "tt3917432", + "tt8385152", + "tt1698441", + "tt5113032", + "tt8103530", + "tt1582350", + "tt6261554", + "tt1727434", + "tt0083497", + "tt8001092", + "tt8146760", + "tt7608238", + "tt4633166", + "tt5926494", + "tt6908976", + "tt1091909", + "tt1866609", + "tt1911883", + "tt1399045", + "tt7430684", + "tt6877772", + "tt8467296", + "tt10370736", + "tt1869454", + "tt5729304", + "tt4501242", + "tt8435344", + "tt11091964", + "tt2220150", + "tt5910786", + "tt8179162", + "tt7737404", + "tt2078576", + "tt1593756", + "tt3231534", + "tt7860116", + "tt0058812", + "tt8263746", + "tt5091820", + "tt6616260", + "tt7909970", + "tt0804425", + "tt6882310", + "tt6078644", + "tt7577814", + "tt9424434", + "tt5344280", + "tt3786966", + "tt11214028", + "tt7320300", + "tt6128376", + "tt2194326", + "tt7121854", + "tt10329028", + "tt2312036", + "tt2215399", + "tt1563280", + "tt4913678", + "tt3168804", + "tt5763748", + "tt2017109", + "tt6136842", + "tt7866098", + "tt2931316", + "tt0373732", + "tt9253866", + "tt10341020", + "tt7239256", + "tt6536348", + "tt0287196", + "tt1257544", + "tt1661526", + "tt5290382", + "tt4651824", + "tt6210192", + "tt1825133", + "tt9698480", + "tt4354650", + "tt1898069", + "tt5857720", + "tt4075386", + "tt4321400", + "tt2170584", + "tt1292576", + "tt2189874", + "tt6853528", + "tt8001226", + "tt9062856", + "tt1825122", + "tt3219170", + "tt3444938", + "tt1476894", + "tt0395843", + "tt8001106", + "tt8147076", + "tt3846642", + "tt0314979", + "tt2660734", + "tt0381798", + "tt2296682", + "tt7449708", + "tt2104573", + "tt5687612", + "tt1454824", + "tt7670568", + "tt0092325", + "tt6175984", + "tt0069637", + "tt0827947", + "tt0340477", + "tt6461794", + "tt1571313", + "tt8068916", + "tt3905286", + "tt5359830", + "tt6110648", + "tt2229129", + "tt8304498", + "tt6021284", + "tt0095388", + "tt8387348", + "tt9654086", + "tt0115086", + "tt3230864", + "tt6856484", + "tt5578086", + "tt5706750", + "tt6394320", + "tt5310358", + "tt2215291", + "tt2322158", + "tt9169870", + "tt5674718", + "tt10243628", + "tt0321021", + "tt0460637", + "tt7520780", + "tt0061287", + "tt7737692", + "tt1596356", + "tt8488494", + "tt1973370", + "tt6203010", + "tt2733510", + "tt5209286", + "tt8417308", + "tt2176609", + "tt7343520", + "tt2103085", + "tt5567424", + "tt2480514", + "tt9567342", + "tt2923816", + "tt2197797", + "tt7867522", + "tt3007572", + "tt7927790", + "tt2319283", + "tt2860378", + "tt7087260", + "tt0118401", + "tt5833082", + "tt4474344", + "tt7817300", + "tt5180504", + "tt5075942", + "tt7627802", + "tt2009826", + "tt8026448", + "tt0414731", + "tt7782022", + "tt6845418", + "tt1830888", + "tt11018358", + "tt6102418", + "tt2271773", + "tt4063608", + "tt3205802", + "tt0758722", + "tt8510382", + "tt5000804", + "tt0455275", + "tt0168596", + "tt2152112", + "tt0439879", + "tt8507402", + "tt2449262", + "tt8324422", + "tt2128016", + "tt7406334", + "tt11237508", + "tt9103932", + "tt7949200", + "tt0096557", + "tt5690224", + "tt4057844", + "tt9169656", + "tt7134194", + "tt1632701", + "tt1981538", + "tt0115355", + "tt5221566", + "tt7286488", + "tt7917984", + "tt4397864", + "tt4209752", + "tt9555104", + "tt6276100", + "tt1884856", + "tt8070516", + "tt4584326", + "tt0092312", + "tt1661102", + "tt1020621", + "tt4592682", + "tt0448300", + "tt4494948", + "tt2177489", + "tt1928328", + "tt0976014", + "tt0759364", + "tt2278605", + "tt7194490", + "tt4955642", + "tt5871092", + "tt7050978", + "tt0426741", + "tt6128300", + "tt6170980", + "tt0141842", + "tt5639976", + "tt6583806", + "tt0213338", + "tt11006320", + "tt1358355", + "tt1765085", + "tt2699226", + "tt6176596", + "tt6101624", + "tt10517426", + "tt8689470", + "tt6474236", + "tt4648424", + "tt1830332", + "tt2677216", + "tt7187044", + "tt0096555", + "tt2215717", + "tt10699146", + "tt7165904", + "tt0880557", + "tt7736572", + "tt1415175", + "tt1567215", + "tt8416494", + "tt7107518", + "tt5548612", + "tt3012894", + "tt11102274", + "tt6768146", + "tt0428134", + "tt8923354", + "tt5340782", + "tt2741950", + "tt6407712", + "tt3520612", + "tt6779076", + "tt0042093", + "tt7748314", + "tt2128212", + "tt2295809", + "tt0883772", + "tt5785564", + "tt4915896", + "tt5301958", + "tt8364940", + "tt3219166", + "tt3425318", + "tt3526078", + "tt9310136", + "tt0204113", + "tt3597854", + "tt0805666", + "tt6729080", + "tt2827536", + "tt0086756", + "tt1475582", + "tt5568438", + "tt10098248", + "tt5073676", + "tt6193336", + "tt4488724", + "tt6038584", + "tt6609842", + "tt7747014", + "tt4742700", + "tt3494220", + "tt7146600", + "tt2498968", + "tt3190722", + "tt7036530", + "tt1582461", + "tt6839788", + "tt6715172", + "tt9636800", + "tt1870479", + "tt5637842", + "tt0235918", + "tt6722926", + "tt8064302", + "tt0421460", + "tt4816058", + "tt1528406", + "tt2309295", + "tt3314218", + "tt10370956", + "tt9203042", + "tt2805912", + "tt7293240", + "tt10833696", + "tt10623954", + "tt11592028", + "tt6453018", + "tt1849622", + "tt9845152", + "tt3042566", + "tt6894020", + "tt1239443", + "tt2091762", + "tt0246734", + "tt6587094", + "tt10313176", + "tt10625028", + "tt9425132", + "tt9212616", + "tt9426390", + "tt2400129", + "tt6709974", + "tt6461736", + "tt8292872", + "tt5149506", + "tt5971920", + "tt7068626", + "tt10590068", + "tt2645122", + "tt7365526", + "tt6131120", + "tt10952558", + "tt0098936", + "tt6128262", + "tt1145500", + "tt7909708", + "tt3216586", + "tt10108664", + "tt7085256", + "tt0094582", + "tt9048368", + "tt11058644", + "tt0338653", + "tt3565412", + "tt6012704", + "tt3186138", + "tt10379670", + "tt3713152", + "tt6768634", + "tt3264836", + "tt0448190", + "tt6782014", + "tt10872880", + "tt0111875", + "tt6953640", + "tt10081406", + "tt0458254", + "tt2564734", + "tt2364582", + "tt0217579", + "tt5323988", + "tt7588316", + "tt6809396", + "tt3513388", + "tt5512570", + "tt8359654", + "tt7017362", + "tt1400819", + "tt7230846", + "tt10269664", + "tt4580372", + "tt2428924", + "tt3513704", + "tt4287280", + "tt8452308", + "tt1405406", + "tt3027156", + "tt2245029", + "tt5027982", + "tt0290988", + "tt1854226", + "tt4218618", + "tt4574708", + "tt9303684", + "tt3554098", + "tt5838282", + "tt2266639", + "tt1948830", + "tt7760676", + "tt5321130", + "tt2721686", + "tt4543056", + "tt2211457", + "tt1542981", + "tt5771150", + "tt7106722", + "tt2548418", + "tt4683342", + "tt0875948", + "tt6987788", + "tt6090814", + "tt0227975", + "tt3232262", + "tt7965956", + "tt3921180", + "tt4145054", + "tt2674806", + "tt4074374", + "tt4759792", + "tt6258050", + "tt3342592", + "tt2708560", + "tt5600406", + "tt5136196", + "tt9314996", + "tt3738872", + "tt1310809", + "tt7686128", + "tt5905038", + "tt5171438", + "tt2402807", + "tt3008828", + "tt0390700", + "tt4793190", + "tt7942806", + "tt3696476", + "tt1875337", + "tt1049244", + "tt7936386", + "tt0094525", + "tt3698892", + "tt7230898", + "tt0358856", + "tt2209649", + "tt2518480", + "tt8530456", + "tt2262532", + "tt4767370", + "tt4677846", + "tt4481920", + "tt0410975", + "tt11215112", + "tt4719586", + "tt5174232", + "tt2215797", + "tt9860664", + "tt0169446", + "tt6078096", + "tt5726128", + "tt1593613", + "tt7949218", + "tt6873926", + "tt2699374", + "tt11305092", + "tt9132960", + "tt0120570", + "tt3916394", + "tt7671068", + "tt5117150", + "tt3155320", + "tt1365047", + "tt7410352", + "tt1798274", + "tt0374463", + "tt2234222", + "tt9068472", + "tt8543390", + "tt5696762", + "tt7569724", + "tt0437741", + "tt2211129", + "tt6110318", + "tt1043813", + "tt3501074", + "tt7573024", + "tt2201416", + "tt2006421", + "tt5869202", + "tt5763648", + "tt7904188", + "tt2930604", + "tt5798078", + "tt8201142", + "tt9167798", + "tt5594440", + "tt8343762", + "tt0361217", + "tt4222646", + "tt2167393", + "tt3104722", + "tt5324944", + "tt8107060", + "tt7768166", + "tt5684430", + "tt2113487", + "tt5260248", + "tt0083437", + "tt8319428", + "tt4481248", + "tt1663676", + "tt2006848", + "tt3648438", + "tt2495154", + "tt4523640", + "tt2442494", + "tt4337894", + "tt4189570", + "tt1678749", + "tt4558858", + "tt5248878", + "tt7212136", + "tt1963853", + "tt1842530", + "tt1262401", + "tt4839610", + "tt8322592", + "tt10555728", + "tt10948316", + "tt4445972", + "tt4716230", + "tt2698984", + "tt5189944", + "tt2311643", + "tt8888532", + "tt0098904", + "tt7108906", + "tt1068912", + "tt0086814", + "tt7204366", + "tt5320618", + "tt9564862", + "tt6110624", + "tt5884018", + "tt8558492", + "tt9135436", + "tt2303687", + "tt9322614", + "tt5505576", + "tt7503800", + "tt6463374", + "tt10687620", + "tt1321865", + "tt9316032", + "tt11189494", + "tt5995728", + "tt7379872", + "tt1819545", + "tt0115082", + "tt1830622", + "tt1657260", + "tt5194792", + "tt0115269", + "tt2192539", + "tt5870340", + "tt5715524", + "tt0348894", + "tt2215842", + "tt5533758", + "tt0411008", + "tt10220152", + "tt0463850", + "tt2152894", + "tt10290274", + "tt0149447", + "tt5650650", + "tt6461824", + "tt6079608", + "tt2657242", + "tt5937940", + "tt6155068", + "tt5057130", + "tt2568868", + "tt8295472", + "tt10404664", + "tt10765680", + "tt0096626", + "tt6663688", + "tt6921882", + "tt2166772", + "tt0059982", + "tt7799008", + "tt4197508", + "tt3706642", + "tt1103968", + "tt5531466", + "tt0072500", + "tt7988900", + "tt8103082", + "tt9704568", + "tt2243788", + "tt10687134", + "tt2752854", + "tt4386224", + "tt4380272", + "tt2937900", + "tt7319038", + "tt9341874", + "tt1518723", + "tt2274282", + "tt5545018", + "tt11352740", + "tt4324796", + "tt0364845", + "tt9541430", + "tt10183798", + "tt8045594", + "tt1647292", + "tt1129029", + "tt3339966", + "tt3487382", + "tt2265544", + "tt0275140", + "tt11274284", + "tt6216718", + "tt5313984", + "tt4612950", + "tt4328676", + "tt2378794", + "tt3664430", + "tt3508050", + "tt7288952", + "tt6121710", + "tt3729770", + "tt7829834", + "tt1515193", + "tt0429422", + "tt0360266", + "tt9816090", + "tt8398600", + "tt8242548", + "tt9742974", + "tt1842127", + "tt5562056", + "tt4856322", + "tt10223910", + "tt0892535", + "tt5788792", + "tt6268466", + "tt4670954", + "tt2172103", + "tt2758770", + "tt2820078", + "tt7440732", + "tt0187664", + "tt8685324", + "tt5233284", + "tt0078579", + "tt8571906", + "tt6316900", + "tt1486217", + "tt0284722", + "tt9278186", + "tt5348176", + "tt0387199", + "tt0096542", + "tt6466948", + "tt5775214", + "tt2576360", + "tt10985806", + "tt6162516", + "tt10332528", + "tt0200276", + "tt1082770", + "tt5687624", + "tt1932099", + "tt1796960", + "tt3102732", + "tt10619444", + "tt4833364", + "tt6233916", + "tt2193041", + "tt8009622", + "tt1723760", + "tt6807662", + "tt9108770", + "tt6987966", + "tt5670764", + "tt5193172", + "tt9817298", + "tt2086606", + "tt6483198", + "tt9865126", + "tt7217374", + "tt11497904", + "tt9690010", + "tt8337490", + "tt5104362", + "tt5037914", + "tt4065694", + "tt6474378", + "tt3596174", + "tt6858064", + "tt1307824", + "tt2951514", + "tt5720168", + "tt2009765", + "tt5361394", + "tt9373836", + "tt3038384", + "tt5363918", + "tt0056775", + "tt1329291", + "tt1954347", + "tt3218114", + "tt11006986", + "tt8118934", + "tt4230076", + "tt9788012", + "tt5820022", + "tt6038946", + "tt0813711", + "tt9139220", + "tt7305166", + "tt9278110", + "tt0412175", + "tt8502456", + "tt5347876", + "tt8372660", + "tt9817220", + "tt6415490", + "tt4649322", + "tt9850952", + "tt6433606", + "tt7042814", + "tt1299368", + "tt7517330", + "tt11101698", + "tt2938522", + "tt7350790", + "tt3976068", + "tt3148194", + "tt0234355", + "tt5433062", + "tt4835514", + "tt8888618", + "tt10207464", + "tt2355844", + "tt5620076", + "tt5621544", + "tt3127020", + "tt6959368", + "tt7218390", + "tt4634400", + "tt4877562", + "tt7282674", + "tt0965415", + "tt5936448", + "tt0426697", + "tt5363720", + "tt3868832", + "tt1839481", + "tt3697842", + "tt0475047", + "tt5016074", + "tt0488262", + "tt2224452", + "tt1411598", + "tt7592254", + "tt2212323", + "tt5580540", + "tt6103712", + "tt8877446", + "tt0493378", + "tt7076630", + "tt3400010", + "tt0147746", + "tt5671700", + "tt6467294", + "tt4925366", + "tt8807058", + "tt0098929", + "tt0085111", + "tt0083422", + "tt4093626", + "tt4647692", + "tt5192050", + "tt8593910", + "tt2196296", + "tt6487482", + "tt6432854", + "tt8652642", + "tt5598192", + "tt7959106", + "tt0756509", + "tt0058806", + "tt4460878", + "tt0458284", + "tt1877368", + "tt9588388", + "tt2084685", + "tt3502248", + "tt11569530", + "tt6601082", + "tt7612548", + "tt3460454", + "tt6246232", + "tt4600502", + "tt6866266", + "tt7282970", + "tt7132032", + "tt0212671", + "tt4052886", + "tt4305162", + "tt8009602", + "tt3078774", + "tt6835252", + "tt5565334", + "tt3145422", + "tt7356206", + "tt2362849", + "tt1622696", + "tt2054938", + "tt6394734", + "tt1183865", + "tt0083390", + "tt11833494", + "tt0163936", + "tt5817374", + "tt1878805", + "tt1685473", + "tt5363912", + "tt4354996", + "tt5515410", + "tt2750688", + "tt1877514", + "tt8129446", + "tt1264363", + "tt8358050", + "tt0815420", + "tt4545902", + "tt1078273", + "tt6052190", + "tt11012086", + "tt2163315", + "tt4283680", + "tt6819788", + "tt4205332", + "tt0914387", + "tt2155025", + "tt2243973", + "tt4607112", + "tt1724700", + "tt7167690", + "tt7697062", + "tt0411027", + "tt8651972", + "tt5023972", + "tt4938084", + "tt3597790", + "tt0085099", + "tt9140500", + "tt6619592", + "tt6591468", + "tt5097258", + "tt5516154", + "tt8004628", + "tt4319118", + "tt10207430", + "tt11433292", + "tt1042872", + "tt0496356", + "tt8128344", + "tt7767422", + "tt6772826", + "tt1001558", + "tt3233452", + "tt3620824", + "tt0756573", + "tt6712390", + "tt10276062", + "tt3573194", + "tt4093826", + "tt0287839", + "tt1247637", + "tt0910812", + "tt5458944", + "tt1737565", + "tt6596634", + "tt4428022", + "tt7448858", + "tt7614442", + "tt0787985", + "tt2191991", + "tt1944942", + "tt5912064", + "tt8594220", + "tt7187776", + "tt9552850", + "tt2262912", + "tt6440422", + "tt7366338", + "tt1225901", + "tt10521644", + "tt5858812", + "tt9118930", + "tt7741824", + "tt7138728", + "tt1492966", + "tt2827412", + "tt1199099", + "tt8201434", + "tt0115674", + "tt3177402", + "tt9703198", + "tt7161862", + "tt1608383", + "tt2568204", + "tt1525018", + "tt4902046", + "tt6386436", + "tt1405799", + "tt4422836", + "tt0086759", + "tt3288518", + "tt0284741", + "tt9203078", + "tt0462085", + "tt2203380", + "tt8210820", + "tt5038900", + "tt9478324", + "tt9140392", + "tt7821480", + "tt4215716", + "tt4544930", + "tt2276589", + "tt5210998", + "tt9648804", + "tt9224216", + "tt6898970", + "tt1673441", + "tt4689402", + "tt9550766", + "tt0460619", + "tt0765425", + "tt8434720", + "tt2137109", + "tt8461284", + "tt2787278", + "tt4474750", + "tt7895706", + "tt3224768", + "tt4424650", + "tt8772088", + "tt9358600", + "tt1638319", + "tt1828327", + "tt4383082", + "tt9889960", + "tt1757812", + "tt8451992", + "tt5614844", + "tt9416960", + "tt0290978", + "tt2338096", + "tt2407838", + "tt3654614", + "tt1730755", + "tt5571102", + "tt4502154", + "tt7985540", + "tt0830165", + "tt6370626", + "tt1812523", + "tt6675542", + "tt5717906", + "tt2281375", + "tt5111414", + "tt5066212", + "tt8022978", + "tt1836195", + "tt9799150", + "tt1587390", + "tt0078678", + "tt1357604", + "tt4354042", + "tt1361787", + "tt5881896", + "tt4270458", + "tt10609888", + "tt0397501", + "tt4428372", + "tt10971532", + "tt6837396", + "tt2170687", + "tt5536400", + "tt7476594", + "tt6333098", + "tt10313066", + "tt5990096", + "tt10234362", + "tt7143388", + "tt4548554", + "tt7018644", + "tt0199257", + "tt1438437", + "tt7768848", + "tt5769588", + "tt3496994", + "tt7820906", + "tt10487072", + "tt5261756", + "tt8314920", + "tt9170386", + "tt5916218", + "tt8447746", + "tt0079844", + "tt10302548", + "tt7949204", + "tt2107314", + "tt2298264", + "tt3501016", + "tt6987476", + "tt2094262", + "tt9548022", + "tt9362790", + "tt5543284", + "tt1703874", + "tt4800624", + "tt6950466", + "tt6010920", + "tt6620620", + "tt1832045", + "tt5292052", + "tt6816530", + "tt2657258", + "tt11193892", + "tt8341266", + "tt5866284", + "tt0108783", + "tt6174224", + "tt2298477", + "tt0772145", + "tt2083423", + "tt10385670", + "tt9304186", + "tt5793034", + "tt3609352", + "tt7371896", + "tt6664638", + "tt3027506", + "tt5372890", + "tt10028418", + "tt5531470", + "tt7598448", + "tt4766568", + "tt5760392", + "tt11822994", + "tt9435662", + "tt0278238", + "tt1146333", + "tt5144776", + "tt0081874", + "tt8106552", + "tt7124372", + "tt5589658", + "tt5591136", + "tt2963070", + "tt6064676", + "tt0103477", + "tt0159186", + "tt3363346", + "tt8461164", + "tt4277922", + "tt5444412", + "tt3231286", + "tt4930646", + "tt8633518", + "tt6121356", + "tt5117058", + "tt2879390", + "tt4577466", + "tt9134194", + "tt0374455", + "tt3729784", + "tt3772506", + "tt4707050", + "tt2592094", + "tt8038720", + "tt6845420", + "tt4272442", + "tt1722512", + "tt0807686", + "tt5114356", + "tt5056196", + "tt0478942", + "tt2543796", + "tt6859806", + "tt3959576", + "tt1583638", + "tt3747574", + "tt1740718", + "tt1821220", + "tt8139862", + "tt8879940", + "tt7401768", + "tt6315640", + "tt1866570", + "tt5821234", + "tt10368596", + "tt4129004", + "tt3636060", + "tt6028632", + "tt4286252", + "tt6946848", + "tt1929678", + "tt0482870", + "tt5112130", + "tt7371666", + "tt10477884", + "tt5900164", + "tt1542800", + "tt5255584", + "tt7610720", + "tt4424318", + "tt9897038", + "tt1621748", + "tt8098956", + "tt0318997", + "tt6258718", + "tt0874936", + "tt6723402", + "tt10394800", + "tt3560084", + "tt2314952", + "tt10050752", + "tt8092942", + "tt5846856", + "tt8362844", + "tt8510328", + "tt3498622", + "tt7403736", + "tt6264286", + "tt4181268", + "tt8050764", + "tt10553806", + "tt7660730", + "tt6225166", + "tt4299972", + "tt10970268", + "tt6961868", + "tt2400736", + "tt9854774", + "tt7534328", + "tt1699440", + "tt4991910", + "tt8593252", + "tt5712314", + "tt1020913", + "tt2087571", + "tt4622776", + "tt2521668", + "tt10062652", + "tt2661044", + "tt0472027", + "tt8558784", + "tt4669522", + "tt1714425", + "tt9073520", + "tt0086770", + "tt0985344", + "tt6091694", + "tt1837855", + "tt0098825", + "tt1850458", + "tt1548850", + "tt6716256", + "tt0799870", + "tt6423184", + "tt0072589", + "tt5905202", + "tt8300932", + "tt8594276", + "tt5468694", + "tt8164794", + "tt0052520", + "tt10477990", + "tt2189461", + "tt6904118", + "tt2716758", + "tt3289378", + "tt8985210", + "tt7644916", + "tt3672590", + "tt2277728", + "tt6003016", + "tt10855726", + "tt2378536", + "tt10441918", + "tt3868860", + "tt2525840", + "tt4566672", + "tt9272514", + "tt0071075", + "tt4117328", + "tt2429840", + "tt2188671", + "tt3236954", + "tt6639066", + "tt8043492", + "tt0068098", + "tt5180734", + "tt6431066", + "tt5807122", + "tt3597470", + "tt4686698", + "tt5097050", + "tt1389371", + "tt8004578", + "tt2222352", + "tt7278232", + "tt8115702", + "tt0412142", + "tt2581458", + "tt0481452", + "tt5467814", + "tt10406826", + "tt3465008", + "tt2390003", + "tt7948998", + "tt1870792", + "tt0423652", + "tt1191056", + "tt7845798", + "tt3042086", + "tt2838492", + "tt6845390", + "tt11540538", + "tt1935298", + "tt0051305", + "tt1705814", + "tt3046010", + "tt3468798", + "tt7643056", + "tt5061384", + "tt0088727", + "tt6118426", + "tt2193053", + "tt5994364", + "tt8001752", + "tt11313054", + "tt0207275", + "tt8688814", + "tt0310460", + "tt8462276", + "tt11824218", + "tt11327454", + "tt9816064", + "tt1710177", + "tt5603140", + "tt3463426", + "tt6905458", + "tt7893262", + "tt3872824", + "tt2255443", + "tt7768346", + "tt2392976", + "tt4419214", + "tt2805096", + "tt11426660", + "tt0229118", + "tt0386676", + "tt9134228", + "tt0081834", + "tt8045690", + "tt0057751", + "tt4718304", + "tt10826064", + "tt4975856", + "tt6416254", + "tt5784958", + "tt7557336", + "tt10732794", + "tt1411254", + "tt4895394", + "tt4651812", + "tt4648556", + "tt5770788", + "tt7921292", + "tt8550800", + "tt1784288", + "tt2708480", + "tt1512813", + "tt3340712", + "tt4496482", + "tt7945720", + "tt0118437", + "tt2490030", + "tt3280150", + "tt10393806", + "tt0158552", + "tt0270118", + "tt6374028", + "tt2394427", + "tt3410350", + "tt8205078", + "tt0160523", + "tt10056648", + "tt6021364", + "tt0098820", + "tt4148744", + "tt2510740", + "tt8987918", + "tt8606894", + "tt6932170", + "tt10038828", + "tt3804114", + "tt10150924", + "tt0206512", + "tt4792480", + "tt4873020", + "tt3186130", + "tt8537104", + "tt5965978", + "tt10833132", + "tt7137906", + "tt6423062", + "tt0062573", + "tt9117882", + "tt7558018", + "tt8363040", + "tt0159847", + "tt1785123", + "tt3508674", + "tt2460420", + "tt4214468", + "tt7725538", + "tt11280636", + "tt5810626", + "tt1219024", + "tt4906064", + "tt10468676", + "tt4397438", + "tt3776412", + "tt1999525", + "tt8130392", + "tt4659174", + "tt5580146", + "tt5025852", + "tt8390342", + "tt1442449", + "tt1441109", + "tt6109562", + "tt0115285", + "tt1843894", + "tt4872768", + "tt6005368", + "tt7728344", + "tt8690890", + "tt6491416", + "tt3973768", + "tt1429449", + "tt8381430", + "tt8041378", + "tt4513868", + "tt1831575", + "tt9134666", + "tt3556944", + "tt8528256", + "tt4465368", + "tt3476576", + "tt7725756", + "tt2207986", + "tt5462720", + "tt11416026", + "tt2431438", + "tt3186162", + "tt1397131", + "tt1839578", + "tt4543708", + "tt3581932", + "tt10558940", + "tt7186126", + "tt7748122", + "tt7197684", + "tt7603552", + "tt1986770", + "tt4355258", + "tt8050586", + "tt2787218", + "tt5906924", + "tt5596468", + "tt3551096", + "tt1721323", + "tt5507340", + "tt4295320", + "tt6473344", + "tt0130414", + "tt3924304", + "tt1492030", + "tt1416765", + "tt1600194", + "tt3629970", + "tt1844923", + "tt7510930", + "tt6656238", + "tt7588054", + "tt3673794", + "tt5835034", + "tt0813715", + "tt0149314", + "tt4719786", + "tt5118450", + "tt4428124", + "tt4543594", + "tt6970700", + "tt4853930", + "tt3610926", + "tt7772602", + "tt1397243", + "tt10801274", + "tt0457146", + "tt6057002", + "tt11137150", + "tt3066242", + "tt3747572", + "tt1464482", + "tt0437005", + "tt4892108", + "tt1332653", + "tt0892700", + "tt9111220", + "tt3713588", + "tt4167914", + "tt2058303", + "tt0260618", + "tt5641200", + "tt8687584", + "tt3469050", + "tt9049820", + "tt0907833", + "tt10918718", + "tt10323338", + "tt2429872", + "tt5491994", + "tt0964941", + "tt2401919", + "tt3596176", + "tt11151704", + "tt9169598", + "tt7140750", + "tt9165462", + "tt6931486", + "tt4118110", + "tt3183264", + "tt2431738", + "tt9731222", + "tt0802821", + "tt5361346", + "tt7949730", + "tt2435216", + "tt1553656", + "tt10050778", + "tt1596561", + "tt9214692", + "tt3062788", + "tt3604232", + "tt5867464", + "tt5501118", + "tt8096690", + "tt4074084", + "tt5564786", + "tt7141150", + "tt0805663", + "tt3566726", + "tt8708736", + "tt5637742", + "tt2737290", + "tt8908110", + "tt0162065", + "tt7456722", + "tt5937754", + "tt6950510", + "tt6257298", + "tt10193046", + "tt5574940", + "tt2396135", + "tt9307028", + "tt9125810", + "tt7252092", + "tt6821540", + "tt2092588", + "tt6742610", + "tt0247729", + "tt8349896", + "tt0083461", + "tt6445112", + "tt4694268", + "tt3882018", + "tt7875628", + "tt5209238", + "tt8972462", + "tt2076566", + "tt6474174", + "tt0077031", + "tt1877005", + "tt3205334", + "tt7712606", + "tt0795129", + "tt1422378", + "tt7482462", + "tt0896527", + "tt7049682", + "tt5917368", + "tt1832979", + "tt0955322", + "tt5881326", + "tt4816626", + "tt1811179", + "tt6959064", + "tt3107288", + "tt2734804", + "tt2372182", + "tt7949244", + "tt1048176", + "tt4719730", + "tt3723820", + "tt4131818", + "tt7467436", + "tt5806964", + "tt3593432", + "tt5170828", + "tt4000676", + "tt4167960", + "tt5520392", + "tt3311582", + "tt0433309", + "tt0163482", + "tt8440450", + "tt3325692", + "tt3169618", + "tt4192786", + "tt1949012", + "tt0095242", + "tt10242848", + "tt6903222", + "tt2528254", + "tt5607976", + "tt4649420", + "tt7349602", + "tt4452688", + "tt2836308", + "tt8220344", + "tt9740998", + "tt5219042", + "tt0778908", + "tt5782486", + "tt3595002", + "tt10305410", + "tt10837476", + "tt3647998", + "tt5127574", + "tt0862614", + "tt1238834", + "tt7547518", + "tt0106080", + "tt0247082", + "tt0279077", + "tt4506998", + "tt10196390", + "tt2534176", + "tt2576046", + "tt1888075", + "tt11152058", + "tt6846982", + "tt2510616", + "tt6785194", + "tt2978518", + "tt3914672", + "tt5099020", + "tt10518856", + "tt6833398", + "tt5770786", + "tt3233442", + "tt2492366", + "tt2772104", + "tt1192169", + "tt4304864", + "tt6163138", + "tt3681794", + "tt2805126", + "tt2402500", + "tt0285335", + "tt9047526", + "tt4424726", + "tt0083399", + "tt8848336", + "tt3053694", + "tt0138967", + "tt5897304", + "tt5302168", + "tt6599482", + "tt0096684", + "tt0369179", + "tt10257404", + "tt3319538", + "tt0435995", + "tt0450920", + "tt2049323", + "tt0105946", + "tt2814800", + "tt5841090", + "tt06675556", + "tt9318588", + "tt0415407", + "tt2232602", + "tt6244192", + "tt10681222", + "tt3815412", + "tt5154068", + "tt2939262", + "tt5428494", + "tt7861612", + "tt4945574", + "tt4719756", + "tt6402362", + "tt6274614", + "tt6710836", + "tt10613532", + "tt1197567", + "tt1758429", + "tt1178180", + "tt7529770", + "tt7821556", + "tt8925088", + "tt6536550", + "tt9129466", + "tt3489184", + "tt3434378", + "tt1355237", + "tt7643900", + "tt1707374", + "tt6974706", + "tt8704178", + "tt1083163", + "tt6416278", + "tt4863504", + "tt0805669", + "tt4911806", + "tt0105604", + "tt4524424", + "tt0287192", + "tt3006802", + "tt2786956", + "tt4534390", + "tt1103973", + "tt1660055", + "tt8006786", + "tt8683790", + "tt1469154", + "tt0914376", + "tt5848038", + "tt7369770", + "tt2406376", + "tt7244118", + "tt3839822", + "tt0118421", + "tt4866982", + "tt11053272", + "tt10999880", + "tt1748277", + "tt10833692", + "tt10306310", + "tt1358522", + "tt3656138", + "tt0066626", + "tt2968404", + "tt7507476", + "tt9731254", + "tt5989844", + "tt6410708", + "tt9196244", + "tt1688606", + "tt2570312", + "tt4380324", + "tt1430509", + "tt5178604", + "tt7249258", + "tt5011296", + "tt8263750", + "tt4906050", + "tt11629570", + "tt4034398", + "tt1829891", + "tt0146386", + "tt9584024", + "tt4269716", + "tt3781670", + "tt10098458", + "tt0115167", + "tt1362673", + "tt10619404", + "tt8500086", + "tt10403090", + "tt0413559", + "tt7885006", + "tt7053920", + "tt6865906", + "tt7552590", + "tt5750932", + "tt2712516", + "tt5582392", + "tt5688730", + "tt3665674", + "tt5507896", + "tt2715870", + "tt2262456", + "tt2104664", + "tt3495652", + "tt7493428", + "tt5618256", + "tt4687880", + "tt7596008", + "tt5057932", + "tt0461727", + "tt10738670", + "tt4711184", + "tt7904158", + "tt2231098", + "tt5788812", + "tt6048644", + "tt5839454", + "tt0809497", + "tt4443988", + "tt6635810", + "tt6913880", + "tt5337038", + "tt8676618", + "tt1745588", + "tt10714776", + "tt1885777", + "tt2560140", + "tt6586318", + "tt7798714", + "tt0176095", + "tt1865740", + "tt3752644", + "tt5191110", + "tt9153270", + "tt6482686", + "tt2396275", + "tt9419282", + "tt0068120", + "tt8633266", + "tt1569544", + "tt1730535", + "tt4561950", + "tt1998816", + "tt10333258", + "tt2746854", + "tt3552166", + "tt4248510", + "tt1610527", + "tt7962984", + "tt5228026", + "tt2053193", + "tt5541030", + "tt2886812", + "tt7740624", + "tt0338616", + "tt1748835", + "tt1492179", + "tt6077258", + "tt1135300", + "tt5635832", + "tt0965404", + "tt1442437", + "tt2789534", + "tt10329024", + "tt0305056", + "tt10343752", + "tt5571524", + "tt6690134", + "tt0296328", + "tt4307902", + "tt6998202", + "tt1319735", + "tt3574652", + "tt11542920", + "tt6749344", + "tt1641349", + "tt9199798", + "tt1807859", + "tt5711280", + "tt6416270", + "tt11534192", + "tt3946492", + "tt6845422", + "tt1827163", + "tt0852863", + "tt7494116", + "tt10795278", + "tt2729716", + "tt1718536", + "tt3829868", + "tt7558708", + "tt0088595", + "tt0784896", + "tt1178618", + "tt4337944", + "tt0213334", + "tt0417299", + "tt0279600", + "tt7752136", + "tt0485301", + "tt8200550", + "tt0165598", + "tt0782374", + "tt2700678", + "tt1260995", + "tt0241383", + "tt6076336", + "tt4229954", + "tt10253244", + "tt8718438", + "tt7067624", + "tt8425310", + "tt0979627", + "tt4680240", + "tt4341500", + "tt11475228", + "tt3681610", + "tt4645614", + "tt0075520", + "tt5743796", + "tt5014882", + "tt5361834", + "tt5200372", + "tt6830318", + "tt11561206", + "tt5982906", + "tt0112112", + "tt0436992", + "tt0936453", + "tt0230534", + "tt4422950", + "tt5223578", + "tt0080274", + "tt7318880", + "tt7531564", + "tt0083395", + "tt5247052", + "tt2983222", + "tt2010090", + "tt6400730", + "tt6762348", + "tt2783314", + "tt4228802", + "tt0108981", + "tt8082124", + "tt1666278", + "tt0092379", + "tt7722262", + "tt5194802", + "tt0446809", + "tt7610744", + "tt4898282", + "tt9647226", + "tt5021206", + "tt1307789", + "tt3597060", + "tt2148200", + "tt0472989", + "tt4067382", + "tt7425366", + "tt7297802", + "tt1215482", + "tt4458594", + "tt2397255", + "tt5865598", + "tt3230854", + "tt6271042", + "tt4110246", + "tt5226698", + "tt6794990", + "tt8465938", + "tt3530232", + "tt8194716", + "tt10370958", + "tt10613832", + "tt6920400", + "tt8808802", + "tt2879552", + "tt0434676", + "tt9233388", + "tt9448468", + "tt7387350", + "tt6492236", + "tt10122594", + "tt4431276", + "tt3450150", + "tt0173587", + "tt8320894", + "tt3549436", + "tt1641247", + "tt9845250", + "tt8845260", + "tt6244108", + "tt8358938", + "tt0103520", + "tt10732150", + "tt8101768", + "tt5093452", + "tt3098942", + "tt2892016", + "tt5425186", + "tt3220976", + "tt6954882", + "tt6965802", + "tt4122348", + "tt2345481", + "tt4367186", + "tt3560060", + "tt5725682", + "tt1352077", + "tt0135659", + "tt8773080", + "tt5310130", + "tt0483603", + "tt6329316", + "tt0096708", + "tt6870990", + "tt5586974", + "tt3010520", + "tt2089467", + "tt11122508", + "tt8819290", + "tt2290339", + "tt0772137", + "tt0460665", + "tt9278162", + "tt6903284", + "tt7914168", + "tt2558816", + "tt4320258", + "tt1212452", + "tt5444526", + "tt3221268", + "tt7755494", + "tt10698546", + "tt8893554", + "tt11766280", + "tt1334573", + "tt4507442", + "tt6932244", + "tt6021260", + "tt1095213", + "tt10359446", + "tt11179888", + "tt9148598", + "tt6905468", + "tt8679236", + "tt6719962", + "tt9813324", + "tt5637544", + "tt2554946", + "tt4905966", + "tt5511512", + "tt1188927", + "tt3737220", + "tt3701166", + "tt1741256", + "tt10473306", + "tt4998212", + "tt7138426", + "tt2372162", + "tt1593823", + "tt5462364", + "tt0092359", + "tt5164196", + "tt3969754", + "tt3778478", + "tt1738340", + "tt10497010", + "tt6139972", + "tt3150144", + "tt1000734", + "tt2750182", + "tt1820166", + "tt4695530", + "tt9663644", + "tt5868826", + "tt2515462", + "tt10192576", + "tt1702042", + "tt2375858", + "tt6498784", + "tt6561400", + "tt0362359", + "tt7115722", + "tt2886708", + "tt8819906", + "tt6648846", + "tt10133226", + "tt4273282", + "tt7804186", + "tt6311972", + "tt3205236", + "tt0094514", + "tt3594982", + "tt2270708", + "tt1717499", + "tt3098856", + "tt6846846", + "tt8036272", + "tt7369974", + "tt5730352", + "tt6780072", + "tt3729144", + "tt3600266", + "tt7871966", + "tt2239949", + "tt2751064", + "tt9708598", + "tt5038858", + "tt4919930", + "tt7535458", + "tt6622316", + "tt6623510", + "tt5366240", + "tt1749004", + "tt3038578", + "tt6528874", + "tt7095194", + "tt6231504", + "tt5350276", + "tt2202488", + "tt10613514", + "tt8845076", + "tt7446914", + "tt2675934", + "tt0348913", + "tt8793210", + "tt9454910", + "tt0783322", + "tt5817158", + "tt1441096", + "tt6534666", + "tt3908868", + "tt5035202", + "tt9376934", + "tt7411444", + "tt5324116", + "tt1967685", + "tt2857312", + "tt6763664", + "tt6963428", + "tt9073898", + "tt1245695", + "tt9165404", + "tt3285626", + "tt3116986", + "tt3088238", + "tt2384799", + "tt5214068", + "tt1991410", + "tt4475060", + "tt5189220", + "tt5759196", + "tt8804656", + "tt4817296", + "tt4592154", + "tt0094416", + "tt3323254", + "tt0098769", + "tt5771332", + "tt4923028", + "tt3485248", + "tt1943524", + "tt5909930", + "tt1747551", + "tt0279550", + "tt6611916", + "tt2113599", + "tt1600757", + "tt5295524", + "tt0443370", + "tt4160920", + "tt6889090", + "tt8050736", + "tt9805708", + "tt8598266", + "tt1463395", + "tt3544556", + "tt3576794", + "tt2189221", + "tt1000955", + "tt8169088", + "tt9863788", + "tt2545498", + "tt5052460", + "tt0983514", + "tt5866048", + "tt6495756", + "tt1299365", + "tt2983796", + "tt5841196", + "tt8972296", + "tt7716606", + "tt1984119", + "tt7562112", + "tt6710612", + "tt7230406", + "tt0059972", + "tt2666270", + "tt9332962", + "tt8888522", + "tt4903406", + "tt7829456", + "tt6439562", + "tt11307176", + "tt11215130", + "tt4354616", + "tt2931524", + "tt2814102", + "tt2244495", + "tt10165608", + "tt8103070", + "tt7639280", + "tt7235466", + "tt6283584", + "tt9316078", + "tt3159736", + "tt5754602", + "tt6254644", + "tt3484406", + "tt2928960", + "tt7661046", + "tt6500572", + "tt2711738", + "tt4861760", + "tt2356777", + "tt5698216", + "tt1819022", + "tt8755712", + "tt0047708", + "tt8858472", + "tt4588068", + "tt7945066", + "tt3709366", + "tt8373190", + "tt3002170", + "tt2402129", + "tt4798814", + "tt1270367", + "tt1474684", + "tt2177877", + "tt8263822", + "tt0103442", + "tt5808318", + "tt2799012", + "tt6548228", + "tt0086798", + "tt9179616", + "tt11600174", + "tt2699128", + "tt6874206", + "tt8425532", + "tt7491982", + "tt7104930", + "tt5512420", + "tt6906110", + "tt2312134", + "tt7847232", + "tt9281190", + "tt7465722", + "tt1321805", + "tt1666205", + "tt5923012", + "tt8876290", + "tt1243815", + "tt5715116", + "tt3787402", + "tt6613768", + "tt0094481", + "tt7543466", + "tt5612722", + "tt0288937", + "tt5305668", + "tt2169245", + "tt2935974", + "tt0303461", + "tt0796264", + "tt1568202", + "tt2245937", + "tt4362342", + "tt11168104", + "tt5809140", + "tt5833846", + "tt3322312", + "tt4906830", + "tt8680560", + "tt6238876", + "tt6970710", + "tt8709928", + "tt6792200", + "tt6497076", + "tt2649356", + "tt1195935", + "tt0496424", + "tt3973820", + "tt0775372", + "tt0112197", + "tt3480830", + "tt3762198", + "tt3454468", + "tt2788282", + "tt3811218", + "tt3431720", + "tt8912384", + "tt7453996", + "tt5807292", + "tt3530726", + "tt4903026", + "tt4206804", + "tt11261994", + "tt5435008", + "tt0805661", + "tt4655474", + "tt4761054", + "tt1596786", + "tt8878996", + "tt0138785", + "tt0057730", + "tt3543072", + "tt7131720", + "tt7218736", + "tt2707504", + "tt9606838", + "tt6834020", + "tt1921712", + "tt4113078", + "tt5881634", + "tt1476750", + "tt6257970", + "tt0809488", + "tt4633680", + "tt4110062", + "tt0758789", + "tt3559124", + "tt2359704", + "tt4971144", + "tt6211586", + "tt7686456", + "tt4168986", + "tt5962190", + "tt0801425", + "tt0062565", + "tt5797772", + "tt0071042", + "tt1971245", + "tt1874066", + "tt9397442", + "tt10344022", + "tt10686814", + "tt5223426", + "tt3799566", + "tt5491846", + "tt0086687", + "tt7939774", + "tt9817218", + "tt4786132", + "tt4447390", + "tt8263804", + "tt7352676", + "tt8946436", + "tt4955480", + "tt5178792", + "tt2647586", + "tt1886866", + "tt5819414", + "tt3973808", + "tt3727822", + "tt2800234", + "tt4361124", + "tt0169414", + "tt4554780", + "tt5480646", + "tt5583512", + "tt1399664", + "tt5672484", + "tt1767256", + "tt3597912", + "tt1073507", + "tt0233044", + "tt4192812", + "tt6874502", + "tt0866442", + "tt11610268", + "tt0402471", + "tt1312171", + "tt2330327", + "tt2955402", + "tt3398228", + "tt0244365", + "tt4051832", + "tt0785036", + "tt3595806", + "tt5194866", + "tt0460649", + "tt6144174", + "tt2699110", + "tt8272292", + "tt4838586", + "tt0423776", + "tt4858114", + "tt7902072", + "tt6410184", + "tt3205302", + "tt0098924", + "tt2963254", + "tt4718676", + "tt7895046", + "tt3597606", + "tt0106156", + "tt0297494", + "tt3485904", + "tt3078602", + "tt2249364", + "tt1000022", + "tt7318382", + "tt5647076", + "tt4363582", + "tt9460582", + "tt2191613", + "tt3741346", + "tt6428144", + "tt6249134", + "tt1307510", + "tt0346293", + "tt4306696", + "tt9883888", + "tt1267227", + "tt5470756", + "tt5345490", + "tt4384086", + "tt1797404", + "tt7704512", + "tt3502470", + "tt4358188", + "tt0096579", + "tt2647548", + "tt7804132", + "tt7482186", + "tt8991526", + "tt5540054", + "tt0355987", + "tt8241514", + "tt10127422", + "tt5327216", + "tt3907516", + "tt0368530", + "tt9466990", + "tt5402696", + "tt4898002", + "tt4902964", + "tt8164086", + "tt5475704", + "tt1492088", + "tt5674704", + "tt10145110", + "tt2328067", + "tt0318871", + "tt0115227", + "tt2492296", + "tt5197820", + "tt7808608", + "tt2006374", + "tt8629150", + "tt0255734", + "tt10845908", + "tt0176385", + "tt2281583", + "tt1538145", + "tt0058796", + "tt7555554", + "tt7736544", + "tt0329824", + "tt1319260", + "tt5016662", + "tt7765404", + "tt7531644", + "tt4946972", + "tt5178678", + "tt5917372", + "tt4539954", + "tt6588218", + "tt2141913", + "tt1967678", + "tt2939122", + "tt0157246", + "tt7119536", + "tt8164448", + "tt4939950", + "tt4827774", + "tt0313043", + "tt1637574", + "tt3824018", + "tt0383126", + "tt6038226", + "tt11498422", + "tt6459424", + "tt1978355", + "tt2458640", + "tt8201656", + "tt3839758", + "tt5612192", + "tt9145476", + "tt4199038", + "tt6056090", + "tt4944090", + "tt1973692", + "tt5755206", + "tt4159604", + "tt6133034", + "tt6040412", + "tt4288182", + "tt2069270", + "tt6075002", + "tt9000424", + "tt2128103", + "tt4417412", + "tt2874692", + "tt7808370", + "tt0370053", + "tt7280804", + "tt2582590", + "tt9131136", + "tt1069207", + "tt1307224", + "tt0437043", + "tt3891014", + "tt1641384", + "tt4145760", + "tt0460091", + "tt1442065", + "tt0062568", + "tt8635860", + "tt9348716", + "tt5730328", + "tt1439629", + "tt0088621", + "tt3309014", + "tt8792866", + "tt1720601", + "tt10936342", + "tt2709190", + "tt4797212", + "tt10882950", + "tt9780390", + "tt9433014", + "tt4176370", + "tt4954728", + "tt8888168", + "tt11243536", + "tt4295140", + "tt1561755", + "tt6036728", + "tt0115147", + "tt0446847", + "tt2678354", + "tt1655078", + "tt6142940", + "tt1839497", + "tt8305372", + "tt4326894", + "tt0363307", + "tt5651762", + "tt9679542", + "tt2395482", + "tt7958782", + "tt1140100", + "tt6905756", + "tt4834206", + "tt2498076", + "tt4600360", + "tt1637756", + "tt6181672", + "tt0318883", + "tt4718570", + "tt7043380", + "tt2794380", + "tt2094220", + "tt4116046", + "tt5083928", + "tt1597420", + "tt1470837", + "tt8367694", + "tt6495880", + "tt0118254", + "tt1480684", + "tt8680006", + "tt8146754", + "tt6416330", + "tt6337766", + "tt1684397", + "tt4532368", + "tt6923968", + "tt10485750", + "tt0373474", + "tt2980734", + "tt8002604", + "tt2475150", + "tt5860892", + "tt10968530", + "tt0362357", + "tt6441720", + "tt0396991", + "tt1837654", + "tt0835434", + "tt0167743", + "tt2653692", + "tt3598030", + "tt5957066", + "tt2365269", + "tt0133318", + "tt8358976", + "tt4515676", + "tt6461706", + "tt7833530", + "tt4604612", + "tt7210448", + "tt1436544", + "tt6416310", + "tt5839960", + "tt9654080", + "tt1637727", + "tt1222663", + "tt0198190", + "tt0098492", + "tt11337810", + "tt7721046", + "tt8451638", + "tt1772493", + "tt10327440", + "tt1756988", + "tt7924812", + "tt1933854", + "tt4150884", + "tt6681426", + "tt9397640", + "tt0115083", + "tt3143398", + "tt4903514", + "tt3831402", + "tt8129450", + "tt3984348", + "tt5195338", + "tt9068332", + "tt8693362", + "tt6516076", + "tt4254242", + "tt0101205", + "tt6938394", + "tt4191478", + "tt4016454", + "tt9533596", + "tt2186101", + "tt10155470", + "tt5542294", + "tt6348126", + "tt1699208", + "tt0096639", + "tt2505072", + "tt5761496", + "tt2862164", + "tt4312400", + "tt5607658", + "tt0284712", + "tt2074621", + "tt6443078", + "tt1652216", + "tt6463886", + "tt5347906", + "tt8141458", + "tt9324726", + "tt1258216", + "tt2443340", + "tt1985443", + "tt2226397", + "tt7703440", + "tt5940390", + "tt10813648", + "tt2980696", + "tt0421459", + "tt1657505", + "tt1013873", + "tt3579018", + "tt5676590", + "tt1333050", + "tt0118460", + "tt0434672", + "tt1453159", + "tt2889186", + "tt10327294", + "tt1340758", + "tt1422182", + "tt7211840", + "tt1650552", + "tt7892738", + "tt1319636", + "tt10334498", + "tt1618371", + "tt0083501", + "tt4918098", + "tt4189492", + "tt4790548", + "tt1715258", + "tt0397194", + "tt7608248", + "tt2828960", + "tt6470396", + "tt11165002", + "tt8105958", + "tt7563270", + "tt6045840", + "tt11164368", + "tt1724587", + "tt5165368", + "tt0286486", + "tt11503082", + "tt3847626", + "tt0060028", + "tt0068149", + "tt0094540", + "tt5179408", + "tt4007694", + "tt2710394", + "tt1578873", + "tt10165710", + "tt9316002", + "tt4481322", + "tt2057544", + "tt5690880", + "tt8680646", + "tt7875794", + "tt2788780", + "tt0331136", + "tt0086817", + "tt4643084", + "tt0251497", + "tt10614130", + "tt7935522", + "tt11333564", + "tt0072515", + "tt5862660", + "tt8199790", + "tt7895644", + "tt0086739", + "tt1807165", + "tt3087752", + "tt4146128", + "tt0090501", + "tt5711138", + "tt4049426", + "tt1366312", + "tt1596589", + "tt1800864", + "tt4474310", + "tt2708572", + "tt5608708", + "tt0053494", + "tt0092455", + "tt1863526", + "tt7623324", + "tt1094229", + "tt5116280", + "tt7821582", + "tt7452964", + "tt5595688", + "tt9893174", + "tt7942794", + "tt1837576", + "tt4698826", + "tt4591680", + "tt2022170", + "tt2497788", + "tt4687892", + "tt4174574", + "tt1546360", + "tt3327208", + "tt5884424", + "tt1008108", + "tt0126170", + "tt0472954", + "tt1442550", + "tt7572950", + "tt2245117", + "tt0103569", + "tt8289480", + "tt6938856", + "tt11569628", + "tt2014681", + "tt2151454", + "tt4979474", + "tt1942683", + "tt6911516", + "tt10585042", + "tt2288064", + "tt4258440", + "tt7907918", + "tt3323824", + "tt10075244", + "tt7877070", + "tt7122766", + "tt4574334", + "tt2248977", + "tt10687170", + "tt0398417", + "tt1865572", + "tt10614024", + "tt8840048", + "tt1751105", + "tt0099864", + "tt10534980", + "tt11142824", + "tt2334302", + "tt4121024", + "tt5152264", + "tt3915918", + "tt8499046", + "tt9174576", + "tt5843072", + "tt8019790", + "tt1842973", + "tt4677934", + "tt3673456", + "tt1460746", + "tt3684684", + "tt7889590", + "tt6560040", + "tt5193358", + "tt5730690", + "tt2262308", + "tt6931604", + "tt9165752", + "tt5625066", + "tt7343832", + "tt8905948", + "tt0384013", + "tt3715438", + "tt2297520", + "tt7099334", + "tt6232560", + "tt0489606", + "tt4567314", + "tt3012532", + "tt1433058", + "tt9077530", + "tt10675190", + "tt6397256", + "tt3520702", + "tt1728860", + "tt5378198", + "tt5270356", + "tt11304750", + "tt2733252", + "tt5596646", + "tt11348378", + "tt1711420", + "tt4922804", + "tt7441658", + "tt11617414", + "tt4175634", + "tt5363650", + "tt5500906", + "tt1242773", + "tt4312418", + "tt0804503", + "tt3132738", + "tt6024868", + "tt5376862", + "tt1297754", + "tt2122954", + "tt5451180", + "tt9755726", + "tt7725422", + "tt4728244", + "tt6164872", + "tt7645846", + "tt2184980", + "tt4378456", + "tt0839188", + "tt6744266", + "tt6674310", + "tt6621102", + "tt3216608", + "tt10515488", + "tt7186588", + "tt4953128", + "tt9303692", + "tt4141954", + "tt2147995", + "tt2256592", + "tt11497922", + "tt8115460", + "tt0103584", + "tt7361424", + "tt5096916", + "tt3463606", + "tt0452573", + "tt5327970", + "tt4843640", + "tt8165086", + "tt8808524", + "tt6389490", + "tt10738718", + "tt9387570", + "tt11194508", + "tt4036886", + "tt1601141", + "tt2762476", + "tt3268200", + "tt4591316", + "tt0072584", + "tt8595140", + "tt1566154", + "tt2391224", + "tt0068103", + "tt6811236", + "tt8032884", + "tt1758772", + "tt9327146", + "tt0058801", + "tt6176812", + "tt0190919", + "tt9307990", + "tt9886950", + "tt7375404", + "tt5277914", + "tt7524382", + "tt7410974", + "tt9080978", + "tt8394476", + "tt9083140", + "tt7180738", + "tt5669272", + "tt4035574", + "tt1552112", + "tt1379690", + "tt1458521", + "tt0495055", + "tt1478503", + "tt2770994", + "tt4508624", + "tt4574700", + "tt7138040", + "tt5615874", + "tt7243884", + "tt5705956", + "tt8887828", + "tt0078607", + "tt9314120", + "tt1034007", + "tt2818496", + "tt7094780", + "tt6222202", + "tt1197649", + "tt3909280", + "tt1569972", + "tt2707408", + "tt2183404", + "tt4424852", + "tt7078710", + "tt7178034", + "tt8001788", + "tt1332030", + "tt6116060", + "tt10720914", + "tt8430356", + "tt1806688", + "tt3556920", + "tt4779762", + "tt8650734", + "tt5028002", + "tt2249007", + "tt4367560", + "tt2049116", + "tt8594510", + "tt1327801", + "tt4970456", + "tt4511974", + "tt11018282", + "tt8430234", + "tt1835129", + "tt0465316", + "tt4719744", + "tt1615926", + "tt8784324", + "tt0106126", + "tt0287198", + "tt4145384", + "tt1563069", + "tt7720702", + "tt4941240", + "tt5905354", + "tt11621718", + "tt1821681", + "tt3292726", + "tt0072562", + "tt6814144", + "tt3900614", + "tt7680844", + "tt3447440", + "tt9812514", + "tt4594958", + "tt9078908", + "tt0863046", + "tt3214310", + "tt6675712", + "tt1740717", + "tt10919902", + "tt7671598", + "tt3807034", + "tt7503766", + "tt1255913", + "tt4958538", + "tt5482406", + "tt10539484", + "tt10919454", + "tt5617060", + "tt3011234", + "tt5024912", + "tt6100948", + "tt7510830", + "tt1549918", + "tt2402321", + "tt9674954", + "tt0313038", + "tt3842964", + "tt6696736", + "tt9530198", + "tt1138645", + "tt10329042", + "tt0499410", + "tt9170224", + "tt4857508", + "tt7386600", + "tt0094574", + "tt8111088", + "tt2656614", + "tt3069212", + "tt7587362", + "tt8140732", + "tt9287050", + "tt0478947", + "tt4419496", + "tt7188964", + "tt1243719", + "tt7426142", + "tt2871832", + "tt5397520", + "tt7503792", + "tt0080231", + "tt0965394", + "tt2477230", + "tt3900828", + "tt2402137", + "tt2310212", + "tt0057748", + "tt0944947", + "tt9418676", + "tt1043090", + "tt3314228", + "tt5460226", + "tt7620702", + "tt5691130", + "tt2268019", + "tt2189258", + "tt10369876", + "tt8457940", + "tt5995370", + "tt5580386", + "tt1059475", + "tt6215600", + "tt8271124", + "tt6461812", + "tt7826126", + "tt6172806", + "tt2226342", + "tt6971054", + "tt4428122", + "tt7955626", + "tt1877895", + "tt5500158", + "tt7449828", + "tt5863126", + "tt8510610", + "tt2433570", + "tt6352180", + "tt5432548", + "tt5963958", + "tt7358910", + "tt0264235", + "tt6101862", + "tt8403536", + "tt1567432", + "tt7293754", + "tt2390276", + "tt0060036", + "tt2202713", + "tt8316986", + "tt6059460", + "tt6353368", + "tt1837642", + "tt7310890", + "tt7010622", + "tt4276618", + "tt0810788", + "tt2368645", + "tt4324330", + "tt4180738", + "tt0465326", + "tt4903242", + "tt1625724", + "tt4168608", + "tt0487831", + "tt0280330", + "tt4355188", + "tt3679166", + "tt2149175", + "tt0295064", + "tt2321596", + "tt11122470", + "tt5512352", + "tt8010342", + "tt5722190", + "tt8591984", + "tt2389845", + "tt3451690", + "tt9039142", + "tt6636246", + "tt10753590", + "tt7699414", + "tt3326054", + "tt7645192", + "tt0892700", + "tt2136138", + "tt5337806", + "tt2885556", + "tt4270492", + "tt9773260", + "tt6390538", + "tt4970276", + "tt5189670", + "tt6845424", + "tt4568108", + "tt5071412", + "tt0491603", + "tt2577192", + "tt0106102", + "tt1832207", + "tt0136658", + "tt1833285", + "tt2074248", + "tt0472023", + "tt8425308", + "tt8778064", + "tt3502172", + "tt2375720", + "tt4003966", + "tt2344781", + "tt9056536", + "tt6510950", + "tt3012698", + "tt9621146", + "tt2057193", + "tt4912992", + "tt0324924", + "tt3286608", + "tt5957766", + "tt4634294", + "tt2709648", + "tt0112167", + "tt4194110", + "tt9812894", + "tt7296380", + "tt7423526", + "tt1699659", + "tt10449632", + "tt6358878", + "tt2583620", + "tt4960458", + "tt2753166", + "tt7976568", + "tt3780132", + "tt3865236", + "tt2788432", + "tt0780438", + "tt7211618", + "tt5665418", + "tt0426769", + "tt3922704", + "tt2043143", + "tt1181541", + "tt2782214", + "tt0074074", + "tt3010856", + "tt4231432", + "tt2176287", + "tt7094798", + "tt0195455", + "tt8524448", + "tt4094300", + "tt4855114", + "tt2231644", + "tt8548870", + "tt1695366", + "tt3690362", + "tt4699514", + "tt3044834", + "tt4997250", + "tt8201814", + "tt1733785", + "tt6517320", + "tt4132692", + "tt3683038", + "tt5812294", + "tt1669774", + "tt8880894", + "tt3499954", + "tt8594496", + "tt6092060", + "tt7944664", + "tt6332568", + "tt6453190", + "tt6934964", + "tt5462936", + "tt4719888", + "tt1034201", + "tt7116050", + "tt2151337", + "tt2069135", + "tt4667710", + "tt0830161", + "tt5618284", + "tt6488862", + "tt5958514", + "tt4939064", + "tt5338744", + "tt7242816", + "tt2128211", + "tt3147316", + "tt5447830", + "tt7411098", + "tt8342862", + "tt0844203", + "tt11000526", + "tt4999820", + "tt1936696", + "tt2657262", + "tt4442462", + "tt4733278", + "tt8075272", + "tt11302324", + "tt10133418", + "tt9046520", + "tt6403968", + "tt3148302", + "tt1190689", + "tt2788518", + "tt8263666", + "tt7958326", + "tt5675620", + "tt1583607", + "tt10085386", + "tt5663062", + "tt0799862", + "tt6131920", + "tt3186894", + "tt2523506", + "tt2336630", + "tt7344644", + "tt8966970", + "tt0934320", + "tt1718437", + "tt11301834", + "tt6873658", + "tt0274988", + "tt5895884", + "tt6882202", + "tt7924854", + "tt5031234", + "tt1458809", + "tt5420376", + "tt4568372", + "tt5126414", + "tt8634332", + "tt6264432", + "tt0759475", + "tt3787754", + "tt10540562", + "tt9322904", + "tt2073664", + "tt5765188", + "tt9078960", + "tt1821032", + "tt10220588", + "tt5849156", + "tt2603568", + "tt1178636", + "tt8439492", + "tt0358796", + "tt2647544", + "tt7205264", + "tt8243158", + "tt8421152", + "tt5692740", + "tt6392176", + "tt0106053", + "tt2609546", + "tt6214876", + "tt8271176", + "tt2950342", + "tt5865052", + "tt6294402", + "tt7493176", + "tt2057511", + "tt10580092", + "tt1659175", + "tt3038546", + "tt7391648", + "tt2714046", + "tt8001146", + "tt1685401", + "tt3727552", + "tt5900600", + "tt9690302", + "tt0458253", + "tt1558182", + "tt2943110", + "tt10486740", + "tt5271054", + "tt3615538", + "tt8035424", + "tt8336340", + "tt5599272", + "tt7518558", + "tt9165134", + "tt0969654", + "tt2272367", + "tt0071039", + "tt3052478", + "tt3595776", + "tt0206501", + "tt5320160", + "tt0103359", + "tt6487416", + "tt8548830", + "tt0412253", + "tt7336778", + "tt1440346", + "tt0063893", + "tt8328460", + "tt5151816", + "tt2402569", + "tt1584150", + "tt6086806", + "tt5419200", + "tt1586680", + "tt1124354", + "tt7402414", + "tt1031283", + "tt2204345", + "tt2983606", + "tt5628334", + "tt8783862", + "tt4196686", + "tt2548200", + "tt11191198", + "tt4126382", + "tt2593336", + "tt7947854", + "tt5292622", + "tt2654620", + "tt1127205", + "tt0772139", + "tt7160640", + "tt10065544", + "tt10477528", + "tt0098740", + "tt8597326", + "tt9698520", + "tt1833403", + "tt8136292", + "tt3909224", + "tt7174764", + "tt1567254", + "tt1266020", + "tt3596178", + "tt2829558", + "tt9077196", + "tt2761630", + "tt7255502", + "tt0995832", + "tt6928052", + "tt1688612", + "tt1364951", + "tt10715148", + "tt9708550", + "tt3261308", + "tt7142738", + "tt9131050", + "tt2745774", + "tt7893758", + "tt0097553", + "tt0118375", + "tt2731624", + "tt1864017", + "tt1756927", + "tt8305310", + "tt7551216", + "tt4145454", + "tt2623754", + "tt7134506", + "tt10687510", + "tt5787720", + "tt8602408", + "tt4147780", + "tt7324540", + "tt5338544", + "tt9425126", + "tt1213404", + "tt1059455", + "tt6329790", + "tt7422812", + "tt3893314", + "tt0085017", + "tt10659518", + "tt8004848", + "tt8344332", + "tt9067020", + "tt1832668", + "tt10050772", + "tt2374617", + "tt7428106", + "tt3514798", + "tt7464074", + "tt8425404", + "tt7188736", + "tt9310400", + "tt1780441", + "tt6048596", + "tt7413448", + "tt1628033", + "tt4916574", + "tt7712598", + "tt2618986", + "tt0165052", + "tt1442553", + "tt10181132", + "tt2012383", + "tt9046782", + "tt2099034", + "tt7971476", + "tt8531538", + "tt1720619", + "tt3435532", + "tt8417266", + "tt1579295", + "tt3532050", + "tt9062846", + "tt7235406", + "tt1740299", + "tt3642902", + "tt5691552", + "tt10559276", + "tt6522758", + "tt2408444", + "tt4642170", + "tt0341855", + "tt7658402", + "tt1166709", + "tt4264096", + "tt7554052", + "tt4193662", + "tt1802968", + "tt1691602", + "tt7083006", + "tt6294706", + "tt2674484", + "tt8381724", + "tt9077194", + "tt5899470", + "tt2220768", + "tt6632666", + "tt10466426", + "tt2861424", + "tt0055708", + "tt4049416", + "tt3147692", + "tt8697554", + "tt4878488", + "tt0203259", + "tt8297022", + "tt0948538", + "tt1332150", + "tt1195419", + "tt4144890", + "tt1051155", + "tt2071236", + "tt3749900", + "tt8390274", + "tt4277268", + "tt3061830", + "tt4210022", + "tt5486088", + "tt9686380", + "tt4481266", + "tt11318602", + "tt8873996", + "tt7470116", + "tt2245283", + "tt3869500", + "tt7822618", + "tt6659624", + "tt7539608", + "tt2872488", + "tt0960136", + "tt0149437", + "tt5094928", + "tt2346169", + "tt4786824", + "tt2188931", + "tt6021408", + "tt9704798", + "tt6229656", + "tt4938700", + "tt5574490", + "tt4715246", + "tt6256616", + "tt1408430", + "tt0111999", + "tt3229454", + "tt2647420", + "tt7502274", + "tt0421030", + "tt7740574", + "tt4905554", + "tt3322314", + "tt9077192", + "tt7468900", + "tt5015928", + "tt4159076", + "tt11011366", + "tt9780458", + "tt6483836", + "tt5459976", + "tt3652662", + "tt0770762", + "tt3037520", + "tt0388644", + "tt10332322", + "tt11053220", + "tt10665386", + "tt11178330", + "tt10474088", + "tt3824414", + "tt8817836", + "tt1044418", + "tt0815063", + "tt2825020", + "tt4941288", + "tt7678910", + "tt7510024", + "tt10327354", + "tt1086761", + "tt10027990", + "tt9170638", + "tt3337596", + "tt6539502", + "tt0094535", + "tt9656532", + "tt3891038", + "tt11541444", + "tt6470478", + "tt1554356", + "tt7649694", + "tt3487356", + "tt8456094", + "tt3585270", + "tt4800878", + "tt7050910", + "tt1591493", + "tt1997999", + "tt0830361", + "tt6304534", + "tt3434132", + "tt4158110", + "tt1442109", + "tt9557812", + "tt11658046", + "tt2181219", + "tt3413236", + "tt6150576", + "tt0185906", + "tt7153034", + "tt10730508", + "tt10023178", + "tt11004134", + "tt8289758", + "tt1442464", + "tt6684226", + "tt8906172", + "tt7306056", + "tt6040674", + "tt2109059", + "tt3718778", + "tt2228547", + "tt4651448", + "tt10555674", + "tt9113406", + "tt1484823", + "tt8257674", + "tt8548866", + "tt7472896", + "tt2521978", + "tt1830379", + "tt2033616", + "tt4354880", + "tt7440784", + "tt6807442", + "tt0460690", + "tt2960796", + "tt2084712", + "tt4908908", + "tt4680360", + "tt0118276", + "tt8475274", + "tt9359222", + "tt0486657", + "tt8728268", + "tt4635208", + "tt4908956", + "tt7861584", + "tt7997214", + "tt5361426", + "tt2193743", + "tt11208504", + "tt8961828", + "tt0454349", + "tt8680948", + "tt5512658", + "tt8792570", + "tt4424758", + "tt1830924", + "tt3953642", + "tt3727036", + "tt5952634", + "tt7488702", + "tt0318236", + "tt1495708", + "tt6437276", + "tt4600404", + "tt7364546", + "tt9879074", + "tt6268052", + "tt5830254", + "tt1765622", + "tt0088559", + "tt2351868", + "tt4132196", + "tt8961508", + "tt0484243", + "tt10681670", + "tt0292414", + "tt1519931", + "tt2232345", + "tt7120662", + "tt7526498", + "tt0460644", + "tt0383795", + "tt5748116", + "tt3117322", + "tt2709224", + "tt7712594", + "tt10584446", + "tt6203758", + "tt8027624", + "tt7646318", + "tt2245988", + "tt3250026", + "tt4688156", + "tt1820742", + "tt6905542", + "tt1974470", + "tt4396862", + "tt4341996", + "tt6658720", + "tt0278191", + "tt8372778", + "tt6890566", + "tt4608812", + "tt2342499", + "tt5712554", + "tt0977628", + "tt0844441", + "tt1327810", + "tt3484180", + "tt0437714", + "tt1806234", + "tt4338988", + "tt6289132", + "tt0296310", + "tt9615014", + "tt2712966", + "tt7818686", + "tt7514746", + "tt0490035", + "tt3484274", + "tt4338336", + "tt5901348", + "tt2315850", + "tt8462412", + "tt1281256", + "tt9808680", + "tt0353115", + "tt2224645", + "tt0413573", + "tt8119642", + "tt4396630", + "tt5467332", + "tt0773262", + "tt3920814", + "tt5813158", + "tt2705602", + "tt6791846", + "tt0380136", + "tt0115288", + "tt4040530", + "tt2402207", + "tt1720019", + "tt7772588", + "tt1105711", + "tt6283542", + "tt0290111", + "tt4899548", + "tt2543312", + "tt3097686", + "tt0454731", + "tt10228276", + "tt8365054", + "tt11018018", + "tt3106400", + "tt4575056", + "tt3473134", + "tt4640050", + "tt1587934", + "tt8888322", + "tt7016936", + "tt1530848", + "tt8531222", + "tt10019004", + "tt1378167", + "tt9765222", + "tt8502560", + "tt10265158", + "tt10608396", + "tt11390530", + "tt3591200", + "tt0437700", + "tt6980394", + "tt0050079", + "tt5730102", + "tt1520211", + "tt10055734", + "tt6170874", + "tt2466292", + "tt10243640", + "tt4520992", + "tt1790939", + "tt0159206", + "tt4331478", + "tt8098384", + "tt5396928", + "tt9108604", + "tt1839337", + "tt2555880", + "tt7599936", + "tt2524222", + "tt4236770", + "tt2869898", + "tt1719837", + "tt3232102", + "tt8738580", + "tt3559912", + "tt5816568", + "tt3496764", + "tt6926374", + "tt6097696", + "tt0159876", + "tt5257744", + "tt8068860", + "tt6916746", + "tt0770659", + "tt6226232", + "tt2244871", + "tt0259153", + "tt0462128", + "tt1280822", + "tt0289825", + "tt7439546", + "tt1790914", + "tt6319696", + "tt3542324", + "tt0086675", + "tt2832756", + "tt0350448", + "tt1630574", + "tt11007040", + "tt5068750", + "tt7396134", + "tt2361094", + "tt3341382", + "tt1278016", + "tt6241856", + "tt8362852", + "tt6628364", + "tt8404094", + "tt1794147", + "tt2621446", + "tt1721666", + "tt6509474", + "tt1600690", + "tt0179552", + "tt5538644", + "tt7981232", + "tt2649522", + "tt1771072", + "tt1149608", + "tt6953912", + "tt6968586", + "tt0814164", + "tt10323232", + "tt8882486", + "tt7772610", + "tt1232320", + "tt3098842", + "tt6659572", + "tt6459410", + "tt7411686", + "tt4791250", + "tt8893810", + "tt0826760", + "tt0063878", + "tt3906560", + "tt2919910", + "tt5626028", + "tt8938060", + "tt1553620", + "tt0364151", + "tt6316862", + "tt1865718", + "tt5734342", + "tt2049036", + "tt5369352", + "tt7559438", + "tt2400631", + "tt4816364", + "tt5329344", + "tt7261310", + "tt0070904", + "tt9690214", + "tt7333970", + "tt5705416", + "tt0257295", + "tt3593456", + "tt0094484", + "tt2474952", + "tt8494614", + "tt5897570", + "tt2382108", + "tt0299285", + "tt5209280", + "tt10594194", + "tt0075500", + "tt6816780", + "tt6903256", + "tt6517102", + "tt11602670", + "tt4635922", + "tt5023666", + "tt3021686", + "tt1131746", + "tt2177461", + "tt2407574", + "tt5212822", + "tt5133742", + "tt8235236", + "tt6565892", + "tt1955311", + "tt1322240", + "tt7879820", + "tt10332508", + "tt3704280", + "tt5511582", + "tt6613246", + "tt5503718", + "tt8762206", + "tt6974848", + "tt3138900", + "tt4667888", + "tt6101726", + "tt3810832", + "tt4644488", + "tt7034646", + "tt10474124", + "tt0075561", + "tt1461312", + "tt7938588", + "tt10687236", + "tt4192766", + "tt7616830", + "tt9814900", + "tt3218680", + "tt1837492", + "tt5603868", + "tt7766172", + "tt5853176", + "tt4041694", + "tt0491738", + "tt9824096", + "tt1885032", + "tt2297604", + "tt8069036", + "tt2701582", + "tt10999912", + "tt7026882", + "tt10058722", + "tt1841321", + "tt9024590", + "tt3544772", + "tt0285333", + "tt9628244", + "tt2815618", + "tt0085106", + "tt4322334", + "tt3231380", + "tt2319282", + "tt6064882", + "tt11079096", + "tt11091524", + "tt6600720", + "tt5734106", + "tt7008682", + "tt8560732", + "tt10327830", + "tt4196822", + "tt2571774", + "tt10370734", + "tt2182427", + "tt5664952", + "tt8300324", + "tt2260666", + "tt2735544", + "tt0112173", + "tt4387170", + "tt1190931", + "tt2368005", + "tt10133864", + "tt8840790", + "tt3496824", + "tt0850642", + "tt2386354", + "tt10163846", + "tt5515212", + "tt0103428", + "tt7126878", + "tt0086765", + "tt5266278", + "tt9145334", + "tt0476918", + "tt3766376", + "tt1466074", + "tt5651776", + "tt7889220", + "tt9657538", + "tt7988304", + "tt2608368", + "tt1181320", + "tt1489428", + "tt4193176", + "tt5564124", + "tt3107224", + "tt6186672", + "tt1898575", + "tt5665928", + "tt0227972", + "tt4167694", + "tt2242025", + "tt8714904", + "tt5752322", + "tt0090500", + "tt5519574", + "tt2314792", + "tt3746010", + "tt3924978", + "tt2802850", + "tt6522580", + "tt1266003", + "tt5640558", + "tt8123920", + "tt3017438", + "tt6503244", + "tt8259142", + "tt2442560", + "tt3655448", + "tt0073965", + "tt7259746", + "tt7631146", + "tt2395695", + "tt3062328", + "tt5555260", + "tt1870946", + "tt6688750", + "tt0283203", + "tt3182934", + "tt6077448", + "tt2006005", + "tt7509270", + "tt1717455", + "tt0098898", + "tt5874840", + "tt2287307", + "tt8893502", + "tt2056366", + "tt1818912", + "tt0787490", + "tt1643266", + "tt2257959", + "tt8815200", + "tt0314979", + "tt1119644", + "tt6538064", + "tt4791174", + "tt4112184", + "tt2406986", + "tt10554898", + "tt0156205", + "tt0389564", + "tt4374208", + "tt3904962", + "tt4576012", + "tt3859618", + "tt3551980", + "tt8655736", + "tt3499120", + "tt8273006", + "tt0934814", + "tt11463862", + "tt3598496", + "tt8650772", + "tt7492122", + "tt6264964", + "tt5657014", + "tt7439552", + "tt9204128", + "tt3475084", + "tt2654580", + "tt1492627", + "tt0364782", + "tt2738096", + "tt0402711", + "tt8694364", + "tt9702106", + "tt0239195", + "tt0972412", + "tt4269898", + "tt6416240", + "tt8996534", + "tt8201186", + "tt0976192", + "tt0369117", + "tt2378020", + "tt8001718", + "tt4777214", + "tt5344382", + "tt4341348", + "tt0489974", + "tt5932548", + "tt5363872", + "tt6149182", + "tt8660526", + "tt0482857", + "tt7558108", + "tt3281796", + "tt1808757", + "tt4370528", + "tt5987254", + "tt5311790", + "tt7229296", + "tt10106108", + "tt0362192", + "tt2402061", + "tt11261424", + "tt11230262", + "tt2632424", + "tt10098580", + "tt7538868", + "tt4228724", + "tt1361839", + "tt6660498", + "tt5105306", + "tt7801964", + "tt3828162", + "tt7948996", + "tt1759761", + "tt3068894", + "tt1770959", + "tt0944820", + "tt0072564", + "tt8594324", + "tt2174367", + "tt9169602", + "tt4726480", + "tt3305096", + "tt2362694", + "tt4276624", + "tt10312776", + "tt5637292", + "tt6035850", + "tt2357908", + "tt6769208", + "tt11110622", + "tt2758950", + "tt4791170", + "tt1960255", + "tt3216832", + "tt5820530", + "tt0785062", + "tt2390334", + "tt8311576", + "tt2198439", + "tt5464086", + "tt9098432", + "tt6147214", + "tt2649588", + "tt9516768", + "tt2392179", + "tt2393813", + "tt1772752", + "tt0086734", + "tt5673782", + "tt1600199", + "tt2480498", + "tt7745956", + "tt0108941", + "tt0795176", + "tt0496343", + "tt10426684", + "tt3019170", + "tt2484950", + "tt6358456", + "tt2693776", + "tt3032476", + "tt0073972", + "tt5360472", + "tt5335606", + "tt5990044", + "tt0182576", + "tt8450534", + "tt0408381", + "tt9454736", + "tt1710295", + "tt3986852", + "tt1186342", + "tt3315386", + "tt0758745", + "tt1320066", + "tt8305276", + "tt2763296", + "tt1200227", + "tt2647258", + "tt1409008", + "tt0115097", + "tt6186402", + "tt3063454", + "tt6845434", + "tt6304676", + "tt4168956", + "tt8046482", + "tt6473300", + "tt1125758", + "tt3118014", + "tt1958961", + "tt8565136", + "tt7292950", + "tt1830154", + "tt2316306", + "tt2325846", + "tt0346314", + "tt1885780", + "tt2561882", + "tt3629782", + "tt5174766", + "tt5057054", + "tt4636870", + "tt0101206", + "tt0068037", + "tt10608476", + "tt7689460", + "tt8887956", + "tt0924651", + "tt1493239", + "tt5160872", + "tt0106179", + "tt5079788", + "tt3467018", + "tt7661384", + "tt8791742", + "tt1861510", + "tt1954804", + "tt7768192", + "tt2394340", + "tt11458672", + "tt0063936", + "tt7178298", + "tt6053538", + "tt7493974", + "tt1663654", + "tt9516466", + "tt1220617", + "tt0320037", + "tt0238781", + "tt6233884", + "tt10186846", + "tt8649216", + "tt6148376", + "tt5478730", + "tt7677740", + "tt3080030", + "tt0115270", + "tt4450826", + "tt10516874", + "tt6100640", + "tt0445912", + "tt1396212", + "tt7900174", + "tt7759016", + "tt8893566", + "tt0446622", + "tt1313176", + "tt5737466", + "tt4532640", + "tt1790233", + "tt2100976", + "tt11822998", + "tt7768836", + "tt5615840", + "tt5797374", + "tt8146868", + "tt7620312", + "tt8001214", + "tt8810398", + "tt1538039", + "tt8845444", + "tt1608180", + "tt5834256", + "tt4787000", + "tt8367736", + "tt6415656", + "tt6233054", + "tt7183074", + "tt2455546", + "tt7024616", + "tt6269080", + "tt3230454", + "tt9425082", + "tt5512432", + "tt10777024", + "tt6664704", + "tt9817236", + "tt1449940", + "tt11000396", + "tt4766594", + "tt4977374", + "tt8050858", + "tt1919418", + "tt1074206", + "tt0310416", + "tt10207090", + "tt5424556", + "tt2147632", + "tt3315102", + "tt3967910", + "tt2882076", + "tt8826128", + "tt2341762", + "tt5473364", + "tt2301643", + "tt2176353", + "tt5936838", + "tt0166428", + "tt7942774", + "tt1433870", + "tt10380884", + "tt4488404", + "tt0319960", + "tt1804155", + "tt1319900", + "tt2343157", + "tt5569062", + "tt2715776", + "tt2334524", + "tt2297757", + "tt0063946", + "tt6404896", + "tt8303084", + "tt10087022", + "tt5779830", + "tt6439752", + "tt9576820", + "tt6423364", + "tt2349440", + "tt7604446", + "tt4934214", + "tt1945727", + "tt2374744", + "tt3722332", + "tt0105986", + "tt5485566", + "tt6394324", + "tt4520906", + "tt5635260", + "tt0062588", + "tt7601732", + "tt0213327", + "tt1856010", + "tt8641686", + "tt7153382", + "tt1726839", + "tt5101192", + "tt1685313", + "tt5496320", + "tt7158972", + "tt5938484", + "tt0098878", + "tt1989062", + "tt1236246", + "tt11744632", + "tt5640060", + "tt9777918", + "tt1124014", + "tt11399212", + "tt3706628", + "tt3335074", + "tt7425626", + "tt5299008", + "tt6416314", + "tt5932466", + "tt5691156", + "tt7635308", + "tt6937242", + "tt7637506", + "tt5462886", + "tt7572868", + "tt0133302", + "tt2227610", + "tt1192302", + "tt3333880", + "tt8543258", + "tt2057856", + "tt11141900", + "tt4688512", + "tt3502262", + "tt0318959", + "tt1582459", + "tt4986084", + "tt2010806", + "tt3952772", + "tt1626459", + "tt2543328", + "tt8448018", + "tt2427220", + "tt3951238", + "tt0078701", + "tt7161312", + "tt1851040", + "tt5721172", + "tt7286078", + "tt7459986", + "tt8894324", + "tt8610212", + "tt7673112", + "tt8892926", + "tt3038248", + "tt4422756", + "tt9412802", + "tt5195114", + "tt6775816", + "tt6156654", + "tt3839272", + "tt4006826", + "tt0972534", + "tt0115392", + "tt8959856", + "tt9466968", + "tt2203143", + "tt7234598", + "tt9250894", + "tt8019444", + "tt5966964", + "tt5085832", + "tt8575476", + "tt8860450", + "tt0376390", + "tt8289292", + "tt3061050", + "tt4549142", + "tt11138524", + "tt5619658", + "tt5066664", + "tt7733422", + "tt6586344", + "tt4928166", + "tt0463398", + "tt8276298", + "tt4522400", + "tt2262383", + "tt6946984", + "tt3983112", + "tt4267002", + "tt5458832", + "tt4991674", + "tt9378632", + "tt8773338", + "tt4658614", + "tt5869342", + "tt8787756", + "tt8265286", + "tt8319644", + "tt2229907", + "tt9054904", + "tt9165706", + "tt3843168", + "tt0343314", + "tt4397866", + "tt0112111", + "tt7214622", + "tt9237632", + "tt6174216", + "tt2655470", + "tt2057611", + "tt1336911", + "tt10709178", + "tt0366025", + "tt6786518", + "tt10583412", + "tt5640416", + "tt0068040", + "tt9199168", + "tt9787504", + "tt7414954", + "tt8509962", + "tt2603414", + "tt4334446", + "tt2350779", + "tt4421578", + "tt3199398", + "tt10711784", + "tt8905964", + "tt6675556", + "tt1128727", + "tt4895568", + "tt0821375", + "tt2333420", + "tt0207919", + "tt7656606", + "tt1240976", + "tt0318224", + "tt2401256", + "tt2933118", + "tt0875149", + "tt4789576", + "tt2509804", + "tt9331982", + "tt0248654", + "tt8267440", + "tt2957824", + "tt7718088", + "tt2699780", + "tt4803766", + "tt5233094", + "tt3910804", + "tt7653274", + "tt9064792", + "tt7776244", + "tt7205552", + "tt7586086", + "tt9327348", + "tt5116962", + "tt3103340", + "tt10675488", + "tt5011816", + "tt2293529", + "tt5546352", + "tt5884792", + "tt1809014", + "tt0452718", + "tt3514886", + "tt8403622", + "tt5193662", + "tt1934673", + "tt0845746", + "tt7532674", + "tt0460666", + "tt7613210", + "tt8787746", + "tt0066667", + "tt8712664", + "tt7683300", + "tt4716164", + "tt6684082", + "tt6153318", + "tt11497386", + "tt2133695", + "tt3788022", + "tt9397406", + "tt2014553", + "tt1830617", + "tt0088641", + "tt9261290", + "tt1082583", + "tt8421554", + "tt2136396", + "tt3996158", + "tt2543378", + "tt1495950", + "tt8694866", + "tt1759136", + "tt1663641", + "tt4291722", + "tt3039270", + "tt2365946", + "tt3444278", + "tt11111164", + "tt9601246", + "tt7674544", + "tt5969074", + "tt2662810", + "tt7395992", + "tt1649194", + "tt6130902", + "tt2372220", + "tt1366321", + "tt1024932", + "tt3735164", + "tt7654820", + "tt8755226", + "tt8337704", + "tt1695989", + "tt1877010", + "tt7913450", + "tt0121955", + "tt0452046", + "tt7907916", + "tt5108952", + "tt5202520", + "tt5714712", + "tt8128854", + "tt5098926", + "tt8994238", + "tt6117020", + "tt0112040", + "tt2968902", + "tt2191671", + "tt1844624", + "tt0983334", + "tt1001482", + "tt3175512", + "tt6082618", + "tt7979042", + "tt3079768", + "tt4568288", + "tt7801780", + "tt5809150", + "tt9654082", + "tt6246500", + "tt4519292", + "tt0118480", + "tt1693592", + "tt0280277", + "tt5275894", + "tt11120674", + "tt2377081", + "tt0844653", + "tt6387572", + "tt1315063", + "tt10850888", + "tt1936714", + "tt8014232", + "tt5437394", + "tt0178149", + "tt2152721", + "tt5686194", + "tt1586676", + "tt3585200", + "tt8888656", + "tt10734254", + "tt6647696", + "tt2022713", + "tt7911424", + "tt5957358", + "tt0060009", + "tt7263064", + "tt1836237", + "tt8336664", + "tt6038954", + "tt10183430", + "tt5674272", + "tt4715134", + "tt3549044", + "tt2761354", + "tt0443412", + "tt0105943", + "tt5518198", + "tt3748704", + "tt4785472", + "tt3807022", + "tt0439100", + "tt1441135", + "tt0935095", + "tt10659366", + "tt3310544", + "tt1704292", + "tt0955346", + "tt0180241", + "tt6340730", + "tt0312172", + "tt0840196", + "tt3149010", + "tt6902652", + "tt7737500", + "tt1757202", + "tt6264782", + "tt10271544", + "tt8650584", + "tt5805254", + "tt6821044", + "tt4836266", + "tt2746566", + "tt5165412", + "tt8681676", + "tt10023174", + "tt9055008", + "tt6014022", + "tt5536354", + "tt3168978", + "tt5336698", + "tt9614090", + "tt0090424", + "tt2193021", + "tt2183641", + "tt5159916", + "tt0943690", + "tt8369840", + "tt6544166", + "tt9099570", + "tt7529610", + "tt6570046", + "tt10675716", + "tt0088580", + "tt0959601", + "tt4111430", + "tt2520946", + "tt9066034", + "tt4944694", + "tt2514438", + "tt4224588", + "tt2346273", + "tt2361621", + "tt6743832", + "tt1819509", + "tt3879306", + "tt5067282", + "tt7752034", + "tt1283456", + "tt0080240", + "tt2964118", + "tt6145878", + "tt6237046", + "tt8772296", + "tt1235099", + "tt3052798", + "tt1430587", + "tt1772157", + "tt0273855", + "tt4047038", + "tt0063950", + "tt7439554", + "tt5875646", + "tt1489403", + "tt10079760", + "tt9315008", + "tt2630716", + "tt6111130", + "tt5260528", + "tt1709198", + "tt6287684", + "tt1983079", + "tt7431790", + "tt1513168", + "tt10257338", + "tt2748608", + "tt3522052", + "tt1403966", + "tt1319690", + "tt3121722", + "tt6107486", + "tt3181672", + "tt0144700", + "tt6546758", + "tt2069449", + "tt0988824", + "tt6021862", + "tt3665292", + "tt6775794", + "tt5722072", + "tt8050756", + "tt3877200", + "tt0259127", + "tt8077544", + "tt8134186", + "tt8069360", + "tt2219622", + "tt3955680", + "tt9552658", + "tt4877736", + "tt8611524", + "tt3054698", + "tt11650204", + "tt6317068", + "tt2058221", + "tt9770286", + "tt2707792", + "tt0983983", + "tt8962130", + "tt3777108", + "tt8115462", + "tt4947608", + "tt4594334", + "tt2805574", + "tt3864896", + "tt4212188", + "tt8005374", + "tt6423884", + "tt5275892", + "tt0092400", + "tt10981266", + "tt0129712", + "tt7661368", + "tt3370324", + "tt0184122", + "tt5432988", + "tt0499383", + "tt3713822", + "tt1361778", + "tt2071322", + "tt8101850", + "tt1734192", + "tt0451461", + "tt2734532", + "tt3582458", + "tt5117072", + "tt1731601", + "tt6926044", + "tt8566938", + "tt7913564", + "tt7644680", + "tt6692188", + "tt0460627", + "tt8543080", + "tt3636914", + "tt0898266", + "tt6063716", + "tt4477976", + "tt7334894", + "tt5335658", + "tt8567856", + "tt1379164", + "tt5777020", + "tt5871246", + "tt3279494", + "tt4378376", + "tt1930123", + "tt8668706", + "tt6143796", + "tt3688530", + "tt3141172", + "tt8115666", + "tt6027096", + "tt0090390", + "tt11063952", + "tt1725902", + "tt2558662", + "tt4457140", + "tt5815282", + "tt4592410", + "tt3516878", + "tt3952774", + "tt2546024", + "tt7345380", + "tt6881158", + "tt6328652", + "tt1728102", + "tt0842904", + "tt4061080", + "tt8923396", + "tt7741830", + "tt5376864", + "tt2758692", + "tt0072506", + "tt4641870", + "tt8304608", + "tt2375692", + "tt1710308", + "tt10394770", + "tt4635282", + "tt5000634", + "tt7374508", + "tt2191567", + "tt7491974", + "tt6027168", + "tt6926280", + "tt4523638", + "tt4587946", + "tt5020352", + "tt1183335", + "tt0903747", + "tt3228904", + "tt7498290", + "tt1551632", + "tt5707802", + "tt2741602", + "tt7134908", + "tt3480144", + "tt8159596", + "tt0758737", + "tt1189346", + "tt9637536", + "tt1587669", + "tt0379623", + "tt4158012", + "tt6282620", + "tt5620962", + "tt0367279", + "tt1843678", + "tt10267798", + "tt9418572", + "tt7424250", + "tt7738290", + "tt5665732", + "tt10183688", + "tt1497563", + "tt2294227", + "tt4160686", + "tt3163562", + "tt7632608", + "tt7161218", + "tt1842793", + "tt8429752", + "tt0086791", + "tt6819600", + "tt6343514", + "tt9184970", + "tt9169658", + "tt3768572", + "tt2139371", + "tt1595860", + "tt7157248", + "tt4960916", + "tt5095238", + "tt5797220", + "tt5368542", + "tt2340036", + "tt6233538", + "tt8699270", + "tt10023306", + "tt4218824", + "tt0062583", + "tt11576960", + "tt6903230", + "tt4171176", + "tt0437745", + "tt8577458", + "tt1444382", + "tt2616280", + "tt0112095", + "tt8559538", + "tt8200004", + "tt5762118", + "tt5780516", + "tt5027882", + "tt8523042", + "tt8332438", + "tt7983796", + "tt9641192", + "tt0086815", + "tt5430288", + "tt1684910", + "tt2850332", + "tt6269142", + "tt1286039", + "tt6725736", + "tt3973786", + "tt2578560", + "tt6626676", + "tt6477194", + "tt9549930", + "tt5637798", + "tt7872986", + "tt0386950", + "tt0187636", + "tt1558128", + "tt5612866", + "tt6375720", + "tt6233618", + "tt1535715", + "tt6769236", + "tt4118466", + "tt7052394", + "tt3007640", + "tt5987842", + "tt7414406", + "tt1606375", + "tt4085584", + "tt11083450", + "tt3293184", + "tt4568130", + "tt2299207", + "tt7619858", + "tt7816792", + "tt6563112", + "tt7557574", + "tt6101574", + "tt3097642", + "tt8098164", + "tt0996614", + "tt2322784", + "tt7487358", + "tt2229167", + "tt0950701", + "tt0840094", + "tt3489236", + "tt3074646", + "tt2384811", + "tt5350248", + "tt6772336", + "tt7026436", + "tt4322056", + "tt0948538", + "tt1836037", + "tt6303080", + "tt7781934", + "tt2415958", + "tt2343137", + "tt0429305", + "tt1353056", + "tt2660806", + "tt5673912", + "tt9130692", + "tt7386598", + "tt1137462", + "tt5237932", + "tt3975368", + "tt2057880", + "tt0056777", + "tt6006350", + "tt5541800", + "tt3475734", + "tt1305826", + "tt6945708", + "tt0112130", + "tt7555000", + "tt4878612", + "tt0069658", + "tt6961912", + "tt1657563", + "tt5269594", + "tt1132290", + "tt5648202", + "tt7768840", + "tt3986586", + "tt2433738", + "tt0069557", + "tt8189054", + "tt8289930", + "tt2070791", + "tt10098498", + "tt0192774", + "tt10406934", + "tt5022298", + "tt4266120", + "tt6461726", + "tt8959860", + "tt1548331", + "tt8115582", + "tt4687882", + "tt4102726", + "tt1117552", + "tt7192290", + "tt1843675", + "tt9742936", + "tt2493352", + "tt3231564", + "tt10608354", + "tt3952746", + "tt9016022", + "tt1723816", + "tt10937632", + "tt4976512", + "tt0783328", + "tt0135733", + "tt9530782", + "tt4983204", + "tt1699748", + "tt9271466", + "tt5056408", + "tt0103405", + "tt1587000", + "tt0271894", + "tt2432822", + "tt1420152", + "tt0319931", + "tt8712204", + "tt7758552", + "tt7908628", + "tt2397379", + "tt4842406", + "tt2497834", + "tt4108134", + "tt3101352", + "tt8463186", + "tt11399844", + "tt4452630", + "tt6342012", + "tt4264304", + "tt7965440", + "tt4791440", + "tt6385540", + "tt7942804", + "tt10065930", + "tt7090918", + "tt1642620", + "tt6135682", + "tt9641008", + "tt2546866", + "tt5235950", + "tt3958022", + "tt9265682", + "tt6015820", + "tt0959086", + "tt1777715", + "tt4699982", + "tt1105469", + "tt0497079", + "tt4189022", + "tt1186356", + "tt8000638", + "tt6466972", + "tt2261227", + "tt5978570", + "tt4847092", + "tt0193676", + "tt1051220", + "tt9348692", + "tt1877889", + "tt1991564", + "tt7371868", + "tt5038276", + "tt0979432", + "tt1981558", + "tt0103524", + "tt0457229", + "tt3597660", + "tt7686464", + "tt5016504", + "tt6068620", + "tt0233041", + "tt5722298", + "tt3108438", + "tt5209274", + "tt1078267", + "tt1819654", + "tt9165444", + "tt0458290", + "tt0925266", + "tt8865058", + "tt2776888", + "tt7298596", + "tt3562366", + "tt0123338", + "tt9695266", + "tt6088922", + "tt0120949", + "tt5490630", + "tt5776730", + "tt0805978", + "tt1220111", + "tt5200330", + "tt0059968", + "tt0330251", + "tt6416312", + "tt0285331", + "tt1103987", + "tt10219330", + "tt5634988", + "tt8845428", + "tt5239494", + "tt1833296", + "tt9185110", + "tt2190731", + "tt4480608", + "tt7713450", + "tt1460205", + "tt6712476", + "tt10344526", + "tt0823333", + "tt5103758", + "tt2802008", + "tt4799404", + "tt11344038", + "tt11305746", + "tt0103491", + "tt2817246", + "tt1298827", + "tt7850154", + "tt2533174", + "tt0086661", + "tt7440274", + "tt5176246", + "tt0956036", + "tt11301384", + "tt3069894", + "tt4226226", + "tt5219012", + "tt7692572", + "tt7131688", + "tt3230780", + "tt3893044", + "tt6713768", + "tt1869152", + "tt8496508", + "tt0131664", + "tt3521074", + "tt2771780", + "tt9319680", + "tt3488298", + "tt4079926", + "tt2762564", + "tt10715172", + "tt4576052", + "tt7141916", + "tt2210101", + "tt7278862", + "tt9130788", + "tt5610210", + "tt1506332", + "tt7878864", + "tt8845196", + "tt8564914", + "tt6398232", + "tt3910690", + "tt2452242", + "tt6110430", + "tt8680902", + "tt0285370", + "tt2432604", + "tt7569592", + "tt8111476", + "tt2782710", + "tt2712612", + "tt3002598", + "tt9581768", + "tt2401525", + "tt4350804", + "tt1620950", + "tt3204810", + "tt9140108", + "tt11006714", + "tt9067976", + "tt1307823", + "tt5968748", + "tt9278032", + "tt0450897", + "tt3830558", + "tt5753856", + "tt10054588", + "tt0364784", + "tt0055683", + "tt4595498", + "tt4071576", + "tt7984802", + "tt5763680", + "tt0164289", + "tt8001366", + "tt0429455", + "tt6524440", + "tt6412478", + "tt0095678", + "tt3328268", + "tt1932308", + "tt1879599", + "tt5672036", + "tt2828514", + "tt6921524", + "tt3637900", + "tt9908860", + "tt9099368", + "tt7749176", + "tt4859164", + "tt5457178", + "tt10584792", + "tt3853494", + "tt3056472", + "tt9145372", + "tt3441810", + "tt5547946", + "tt4192782", + "tt10376904", + "tt1695360", + "tt10380934", + "tt4847134", + "tt10715202", + "tt8796068", + "tt9776008", + "tt4152216", + "tt1660673", + "tt4465472", + "tt10443972", + "tt1538296", + "tt7978912", + "tt1839683", + "tt8417946", + "tt3148266", + "tt4335742", + "tt10049610", + "tt8014176", + "tt10262752", + "tt4644822", + "tt10738706", + "tt7183282", + "tt8619822", + "tt5866252", + "tt0324679", + "tt6849940", + "tt11252544", + "tt4614532", + "tt5363766", + "tt7262218", + "tt1561756", + "tt7838238", + "tt0096563", + "tt0088512", + "tt9561862", + "tt7981052", + "tt6086974", + "tt1380596", + "tt2845786", + "tt8893550", + "tt8686106", + "tt3289340", + "tt2668178", + "tt1043714", + "tt4602768", + "tt1956017", + "tt6917254", + "tt1388782", + "tt10327412", + "tt10691888", + "tt4591390", + "tt3503520", + "tt11203896", + "tt8560884", + "tt9204142", + "tt3986390", + "tt0222619", + "tt4998350", + "tt1534083", + "tt8382834", + "tt9486226", + "tt0424600", + "tt1645200", + "tt8842356", + "tt0056751", + "tt9741272", + "tt5706996", + "tt7239028", + "tt5214372", + "tt7603386", + "tt3645318", + "tt7841526", + "tt3689584", + "tt8144760", + "tt9578468", + "tt3455408", + "tt3868848", + "tt2294189", + "tt4459206", + "tt4511898", + "tt1417834", + "tt7817340", + "tt6834076", + "tt0103469", + "tt8425346", + "tt4789300", + "tt4484722", + "tt2380303", + "tt3920596", + "tt4655480", + "tt1479978", + "tt6714408", + "tt6997450", + "tt0370194", + "tt5765938", + "tt1828238", + "tt0068069", + "tt5790102", + "tt7412482", + "tt2742174", + "tt7298976", + "tt7356518", + "tt5050114", + "tt8965666", + "tt6734482", + "tt3018878", + "tt2258904", + "tt8201924", + "tt1942919", + "tt1933073", + "tt2527680", + "tt5099222", + "tt0851851", + "tt10312964", + "tt2182229", + "tt9117054", + "tt8845170", + "tt11168226", + "tt6538034", + "tt1520150", + "tt5342844", + "tt3952194", + "tt6484002", + "tt4033696", + "tt0299368", + "tt0475784", + "tt2076610", + "tt3216868", + "tt7967262", + "tt0306414", + "tt3855058", + "tt6597216", + "tt1219817", + "tt6819260", + "tt3713810", + "tt1100959", + "tt4364202", + "tt0081873", + "tt8421350", + "tt0083452", + "tt5339440", + "tt8233142", + "tt1493923", + "tt2217759", + "tt8116380", + "tt5840122", + "tt6808334", + "tt8974594", + "tt1843230", + "tt9104172", + "tt4478002", + "tt4597870", + "tt9336906", + "tt2188249", + "tt1353281", + "tt11833446", + "tt5137338", + "tt8000674", + "tt3869122", + "tt11444082", + "tt8201502", + "tt5594490", + "tt7845644", + "tt0914829", + "tt0902076", + "tt2012511", + "tt1695353", + "tt6467568", + "tt2289131", + "tt4777140", + "tt6897014", + "tt8879238", + "tt0118300", + "tt0941372", + "tt5722214", + "tt1118697", + "tt7768092", + "tt2059031", + "tt1714204", + "tt5834198", + "tt9081930", + "tt0465353", + "tt7622902", + "tt0063929", + "tt6877370", + "tt7587890", + "tt10608564", + "tt3061046", + "tt1127876", + "tt5541338", + "tt5650574", + "tt4015216", + "tt2399794", + "tt1433495", + "tt8413062", + "tt3501584", + "tt3070014", + "tt3231022", + "tt1530541", + "tt0071050", + "tt2242910", + "tt9381622", + "tt8285922", + "tt1954332", + "tt3449528", + "tt10274462", + "tt3012160", + "tt7853026", + "tt1871731", + "tt1786203", + "tt6760366", + "tt5687446", + "tt1595680", + "tt7616752", + "tt10895588", + "tt8888210", + "tt1978940", + "tt10038720", + "tt9247490", + "tt1229401", + "tt2337840", + "tt0078622", + "tt1409055", + "tt7984324", + "tt6843558", + "tt3528306", + "tt3971974", + "tt7720790", + "tt3551796", + "tt4555364", + "tt7708956", + "tt5951152", + "tt4235048", + "tt5226884", + "tt2446726", + "tt6823138", + "tt5694248", + "tt1821877", + "tt8923854", + "tt4696944", + "tt5060048", + "tt4531728", + "tt2520512", + "tt0106079", + "tt0306274", + "tt5172468", + "tt6852582", + "tt8725166", + "tt5924572", + "tt1503519", + "tt5459566", + "tt0071007", + "tt3781836", + "tt4508902", + "tt0092355", + "tt5439480", + "tt3322310", + "tt10637964", + "tt7042146", + "tt5646172", + "tt8049666", + "tt9184592", + "tt4223968", + "tt8021824", + "tt0076984", + "tt6645582", + "tt11024084", + "tt0115215", + "tt4676574", + "tt0427042", + "tt0165042", + "tt8498114", + "tt0320022", + "tt10977486", + "tt2085059", + "tt7721986", + "tt0369081", + "tt8526988", + "tt2902088", + "tt2769470", + "tt8995604", + "tt1536749", + "tt6468322", + "tt1822448", + "tt7444776", + "tt1587678", + "tt8005176", + "tt4210666", + "tt5141658", + "tt0841928", + "tt1936532", + "tt7221388", + "tt1442462", + "tt6459472", + "tt7050084", + "tt0475043", + "tt4878326", + "tt10375354", + "tt0098800", + "tt1064899", + "tt7492116", + "tt5583410", + "tt4313960", + "tt1279972", + "tt6483832", + "tt2306299", + "tt7651892", + "tt4947580", + "tt5864498", + "tt5785770", + "tt9170584", + "tt4388486", + "tt1685471", + "tt5615700", + "tt5788814", + "tt5726906", + "tt0108757", + "tt7446826", + "tt8427140", + "tt0387764", + "tt6410966", + "tt8785514", + "tt10364808", + "tt0429434", + "tt4406248", + "tt1508238", + "tt9548664", + "tt8001036", + "tt8005322", + "tt0491758", + "tt6478318", + "tt6286394", + "tt6287492", + "tt5135336", + "tt3334148", + "tt2071645", + "tt1295036", + "tt6949590", + "tt7246394", + "tt1582457", + "tt6856620", + "tt3300126", + "tt1885855", + "tt0324692", + "tt7603564", + "tt5015548", + "tt8681362", + "tt2751074", + "tt5607970", + "tt2009776", + "tt9256586", + "tt3453512", + "tt9446688", + "tt6416262", + "tt0370053", + "tt5820976", + "tt8036816", + "tt0348914", + "tt4605814", + "tt1611787", + "tt5699846", + "tt10167284", + "tt1450143", + "tt1117667", + "tt7614908", + "tt3952222", + "tt3729898", + "tt8517780", + "tt0493093", + "tt0077097", + "tt0096697", + "tt4630676", + "tt6416316", + "tt3791516", + "tt3581654", + "tt5934392", + "tt1375710", + "tt5707408", + "tt9174582", + "tt1586914", + "tt2185885", + "tt1489097", + "tt2727600", + "tt0276656", + "tt9644058", + "tt5789958", + "tt1173427", + "tt4209256", + "tt11474008", + "tt5788748", + "tt3012184", + "tt5827228", + "tt6643540", + "tt5645790", + "tt4192650", + "tt4781350", + "tt4647734", + "tt7293158", + "tt1743275", + "tt0870973", + "tt3923774", + "tt1325113", + "tt10233448", + "tt2400391", + "tt1592154", + "tt8961652", + "tt1582454", + "tt3574152", + "tt3571848", + "tt0264234", + "tt6905508", + "tt2980110", + "tt6846022", + "tt7150060", + "tt3228420", + "tt5973720", + "tt1615919", + "tt3069720", + "tt3551966", + "tt8914684", + "tt11189248", + "tt5973164", + "tt0904208", + "tt4061482", + "tt3315020", + "tt6059726", + "tt8911552", + "tt2964642", + "tt5568740", + "tt1839417", + "tt3247786", + "tt3105674", + "tt7661472", + "tt5705192", + "tt5793948", + "tt4280606", + "tt1826940", + "tt8594028", + "tt5396394", + "tt3906732", + "tt3157232", + "tt7626764", + "tt2914762", + "tt1553644", + "tt2329077", + "tt1749056", + "tt4578474", + "tt6980438", + "tt0281491", + "tt2163354", + "tt4370596", + "tt8891990", + "tt2740518", + "tt5075360", + "tt3277670", + "tt2578508", + "tt1252370", + "tt0384766", + "tt4730064", + "tt8839578", + "tt4951098", + "tt7370908", + "tt9780442", + "tt1170858", + "tt5149528", + "tt0118266", + "tt7217498", + "tt2060305", + "tt0484082", + "tt3889094", + "tt10016814", + "tt5030558", + "tt1941774", + "tt8463714", + "tt0396347", + "tt3095080", + "tt6396094", + "tt3337194", + "tt10069398", + "tt6881870", + "tt10704300", + "tt4635276", + "tt1626038", + "tt5459618", + "tt11122204", + "tt11024028", + "tt8129694", + "tt5734140", + "tt4082744", + "tt2126154", + "tt6826108", + "tt7252220", + "tt5095514", + "tt0142032", + "tt0135095", + "tt8261918", + "tt4565380", + "tt7956274", + "tt0377156", + "tt1694423", + "tt8824648", + "tt4443898", + "tt8870610", + "tt4820370", + "tt2097386", + "tt11861362", + "tt6953936", + "tt8332130", + "tt10773420", + "tt9826984", + "tt2641254", + "tt6283636", + "tt3967028", + "tt3636094", + "tt6129912", + "tt8741648", + "tt8074474", + "tt0168391", + "tt1205793", + "tt11092086", + "tt11239552", + "tt8390918", + "tt9696162", + "tt8068900", + "tt0115317", + "tt8078816", + "tt10098620", + "tt11833388", + "tt3243098", + "tt10141612", + "tt10648730", + "tt0329476", + "tt9308346", + "tt9815502", + "tt8619594", + "tt9905660", + "tt11819198", + "tt1275472", + "tt11246974", + "tt8242904", + "tt11891220", + "tt10623714", + "tt6289504", + "tt11983342", + "tt7050996", + "tt12080818", + "tt9130542", + "tt10549212", + "tt10525048", + "tt6898698", + "tt11685264", + "tt3914520", + "tt11829330", + "tt2835830", + "tt11857512", + "tt10228230", + "tt2203252", + "tt10394778", + "tt5813208", + "tt11823088", + "tt2244001", + "tt1794050", + "tt1102732", + "tt8403664", + "tt6950460", + "tt8266048", + "tt0364865", + "tt7020712", + "tt10088086", + "tt9625944", + "tt10366494", + "tt12093796", + "tt11266702", + "tt6251076", + "tt11398870", + "tt11547684", + "tt9177338", + "tt0083466", + "tt11958942", + "tt9244556", + "tt9059594", + "tt5993484", + "tt3365456", + "tt3072988", + "tt3909706", + "tt10846750", + "tt2650536", + "tt3775262", + "tt3027538", + "tt8741290", + "tt12030356", + "tt8236528", + "tt9041792", + "tt2834032", + "tt1705096", + "tt3852258", + "tt1929543", + "tt11097072", + "tt9018490", + "tt3147968", + "tt0368730", + "tt0928173", + "tt5467498", + "tt11929804", + "tt9900092", + "tt1374983", + "tt11460744", + "tt10726356", + "tt9015252", + "tt8771910", + "tt10370952", + "tt11815958", + "tt2842614", + "tt11193832", + "tt3239918", + "tt7862544", + "tt10036104", + "tt6357262", + "tt8000970", + "tt1393908", + "tt10293938", + "tt6000432", + "tt9812788", + "tt9348718", + "tt6374258", + "tt1752127", + "tt12004280", + "tt0379632", + "tt0309141", + "tt1517749", + "tt8991740", + "tt8045468", + "tt8856340", + "tt2170392", + "tt1471868", + "tt12098550", + "tt1996620", + "tt11056000", + "tt8139666", + "tt7694276", + "tt12018426", + "tt6040512", + "tt6352754", + "tt9642982", + "tt2286877", + "tt11718720", + "tt0046658", + "tt8594528", + "tt6139710", + "tt2795864", + "tt2492484", + "tt8667956", + "tt2197519", + "tt8452334", + "tt10311562", + "tt2364322", + "tt2724068", + "tt0312081", + "tt7207430", + "tt4547656", + "tt0098674", + "tt11969746", + "tt10589968", + "tt9165830", + "tt6053512", + "tt8160890", + "tt9164986", + "tt11098768", + "tt9357248", + "tt10437218", + "tt2477858", + "tt10814382", + "tt11633010", + "tt8962394", + "tt11958922", + "tt9780434", + "tt9077184", + "tt1592254", + "tt9530156", + "tt4883194", + "tt4201628", + "tt9397484", + "tt10050618", + "tt10930958", + "tt1419888", + "tt0830900", + "tt6150252", + "tt11783536", + "tt1794595", + "tt10375742", + "tt2527282", + "tt3540374", + "tt7056766", + "tt6612200", + "tt10918826", + "tt6988884", + "tt4993722", + "tt5125400", + "tt8089592", + "tt11818408", + "tt2297810", + "tt3693414", + "tt11347692", + "tt3615474", + "tt3141190", + "tt1726832", + "tt3184674", + "tt9615340", + "tt2968430", + "tt11324616", + "tt11330500", + "tt10394790", + "tt2634230", + "tt5078860", + "tt6435118", + "tt10383558", + "tt11271956", + "tt7070302", + "tt11867592", + "tt3343582", + "tt11829340", + "tt9448006", + "tt11183572", + "tt11170862", + "tt9815454", + "tt0879688", + "tt5252734", + "tt9059820", + "tt5766086" +] \ No newline at end of file diff --git a/scraper/scrapers/rutor/rutor_api.js b/scraper/scrapers/rutor/rutor_api.js new file mode 100644 index 0000000..6928a92 --- /dev/null +++ b/scraper/scrapers/rutor/rutor_api.js @@ -0,0 +1,206 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const moment = require('moment'); +const decode = require('magnet-uri'); +const { defaultOptionsWithProxy } = require('../../lib/requestHelper'); + +const baseUrl = 'http://www.rutor.info'; +const defaultTimeout = 10000; + +const Categories = { + FOREIGN_FILMS: '1', + RUSSIAN_FILMS: '5', + SCIENCE_FILMS: '12', + FOREIGN_SERIES: '4', + RUSSIAN_SERIES: '16', + RUSSIAN_TV: '6', + RUSSIAN_ANIMATION: '7', + ANIME: '10', + FOREIGN_RELEASES: '17' +}; + +function torrent(torrentId, config = {}, retries = 2, error = null) { + if (!torrentId || retries === 0) { + return Promise.reject(error || new Error(`Failed ${torrentId} search`)); + } + + return singleRequest(`${baseUrl}/torrent/${torrentId}`) + .then((body) => parseTorrentPage(body, torrentId)) + .catch((err) => torrent(torrentId, config, retries - 1, err)); +} + +function search(query, retries = 2, error = null) { + if (retries === 0) { + return Promise.reject(error || new Error(`Failed browse request`)); + } + + return singleRequest(`${baseUrl}/search/0/0/0/0/${encodeURIComponent(query)}`) + .then((body) => parseTableBody(body)) + .catch((err) => search(query, retries - 1, err)); +} + +function browse(config = {}, retries = 2, error = null) { + if (retries === 0) { + return Promise.reject(error || new Error(`Failed browse request`)); + } + const page = config.page || 1; + const category = config.category; + + return singleRequest(`${baseUrl}/browse/${page - 1}/${category}/0/0`) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1, err)); +} + +function files(torrentId) { + return singleRequest(`${baseUrl}/descriptions/${torrentId}.files`) + .then((body) => parseFiles(body)); +} + +function singleRequest(requestUrl) { + const options = { ...defaultOptionsWithProxy(), open_timeout: defaultTimeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl} with status ${response.statusCode}`); + } else if (body.includes('Access Denied')) { + console.log(`Access Denied: ${requestUrl}`); + throw new Error(`Access Denied: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden') || + body.includes('Origin DNS error')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = $('#index').find('tr:not(.backgr)').map((i, elem) => { + const row = $(elem).find('td'); + const links = $(row[1]).find('a'); + const peers = $(row[row.length - 1]); + const magnetLink = $(links[1]).attr('href'); + + return { + title: $(links[2]).text(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + torrentLink: $(links[0]).attr('href'), + torrentId: $(links[2]).attr('href').match(/torrent\/(\d+)/)[1], + seeders: parseInt(peers.find('.green').text()), + leechers: parseInt(peers.find('.red').text()), + uploadDate: parseRussianDate($(row[0]).text()), + size: $(row[row.length - 2]).html().replace(' ', ' '), + } + }).get(); + + resolve(torrents); + }); +} + +function parseTorrentPage(body, torrentId) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const rows = $('#details > tr') + const details = $(rows[0]).find('td:nth-of-type(2)'); + const magnetLink = $('#download a:nth-of-type(1)').attr('href'); + const imdbIdMatch = details.html().match(/imdb\.com\/title\/(tt\d+)/i); + + const parsedTorrent = { + title: $('#all h1').first().text(), + torrentId: torrentId, + infoHash: decode(magnetLink).infoHash, + trackers: Array.from(new Set(decode(magnetLink).tr)).join(','), + magnetLink: magnetLink, + torrentLink: $('#download a:nth-of-type(2)').attr('href'), + seeders: parseInt($(rows[rows.length - 8]).find('td:nth-of-type(2)').first().text(), 10), + category: $('tr:contains(\'Категория\') a').first().attr('href').match(/\/([\w-]+)$/)[1], + languages: parseLanguages(details.text()), + size: parseSize($(rows[rows.length - 4]).find('td:nth-of-type(2)').text()), + uploadDate: parseDate($(rows[rows.length - 5]).find('td:nth-of-type(2)').first().text()), + imdbId: imdbIdMatch && imdbIdMatch[1] + }; + resolve(parsedTorrent); + }); +} + +function parseFiles(body) { + if (!body) { + throw new Error("No files in the body"); + } + return body.split('\n') + .map((item) => item.match(/([^<]+)<\/td>/g).slice(1)) + .map((item, index) => ({ + fileIndex: index, + name: item[0].replace(/^.+\//g, ''), + path: item[0].replace(/^.+\//, ''), + size: parseSize(item[1]) + })); +} + +function parseDate(dateString) { + const preparedDate = dateString.replace(/\s\(.*\)/, '') + return moment(preparedDate, 'DD-MM-YYYY HH:mm:ss').toDate(); +} + +const russianMonths = { + 'Янв': 'Jan', + 'Фев': 'Feb', + 'Мар': 'Mar', + 'Апр': 'Apr', + 'Май': 'May', + 'Июн': 'Jun', + 'Июл': 'Jul', + 'Авг': 'Aug', + 'Сен': 'Sep', + 'Окт': 'Oct', + 'Ноя': 'Nov', + 'Дек': 'Dec' +}; + +function parseRussianDate(dateString) { + const rusMonth = Object.keys(russianMonths).find(month => dateString.includes(month)); + const preparedDate = dateString.trim().replace(rusMonth, russianMonths[rusMonth]).replace(/\u00a0/g, ' '); + return moment(preparedDate, 'DD MMM YY').toDate(); +} + +function parseSize(sizeString) { + return parseInt(sizeString.match(/\((\d+) Bytes\)/)[1], 10); +} + +const languageMatchers = { + 'russian': /(?:Язык|Звук|Аудио|audio|language).*(russian|\brus?\b|[Рр]усский)/i, + 'english': /(?:Язык|Звук|Аудио|audio|language).*(english|\beng?\b|[Аа]нглийский)/i, + 'ukrainian': /(?:Язык|Звук|Аудио|audio|language).*(ukrainian|\bukr\b|украинский)/i, + 'french': /(?:Язык|Звук|Аудио|audio|language).*(french|\bfr\b|французский)/i, + 'spanish': /(?:Язык|Звук|Аудио|audio|language).*(spanish|\bspa\b|испанский)/i, + 'italian': /(?:Язык|Звук|Аудио|audio|language).*(italian|\bita\b|итальянский)/i, + 'german': /(?:Язык|Звук|Аудио|audio|language).*(german|\bger\b|Немецкий)/i, + 'korean': /(?:Язык|Звук|Аудио|audio|language).*(korean|Корейский)/i, + 'arabic': /(?:Язык|Звук|Аудио|audio|language).*(arabic|Арабский)/i, + 'portuguese': /(?:Язык|Звук|Аудио|audio|language).*(portuguese|Португальский)/i, + 'japanese': /(?:Язык|Звук|Аудио|audio|language).*(japanese|\bjap\b|\bjp\b|[Яя]понский)/i, +} + +function parseLanguages(details) { + const subsInfoMatch = details.match(/\r?\n(Text|Текст)(?:\s?#?\d{1,2})?\r?\n/i); + const detailsPart = subsInfoMatch ? details.substring(0, subsInfoMatch.index) : details; + const matchedLanguages = Object.keys(languageMatchers).filter(lang => languageMatchers[lang].test(detailsPart)); + const languages = Array.from(new Set(['russian'].concat(matchedLanguages))); + return languages.length > 4 ? 'multi-audio' : languages.join(','); +} + +module.exports = { torrent, browse, search, Categories }; diff --git a/scraper/scrapers/rutor/rutor_scraper.js b/scraper/scrapers/rutor/rutor_scraper.js new file mode 100644 index 0000000..e7bf485 --- /dev/null +++ b/scraper/scrapers/rutor/rutor_scraper.js @@ -0,0 +1,133 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const { parse } = require('parse-torrent-title'); +const rutor = require('./rutor_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'Rutor'; +const TYPE_MAPPING = { + 'kino': Type.MOVIE, + 'nashe_kino': Type.MOVIE, + 'nauchno_popularnoe': Type.MOVIE, + 'inostrannoe': Type.MOVIE, + 'seriali': Type.SERIES, + 'nashi_seriali': Type.SERIES, + 'tv': Type.SERIES, + 'multiki': Type.MOVIE, + 'anime': Type.ANIME +}; + +const api_limiter = new Bottleneck({ maxConcurrent: 1, minTime: 5000 }); +const api_entry_limiter = new Bottleneck({ maxConcurrent: 1, minTime: 2500 }); +const limiter = new Bottleneck({ maxConcurrent: 10 }); +const allowedCategories = [ + rutor.Categories.FOREIGN_FILMS, + rutor.Categories.FOREIGN_RELEASES, + rutor.Categories.RUSSIAN_FILMS, + rutor.Categories.FOREIGN_SERIES, + rutor.Categories.RUSSIAN_SERIES, + rutor.Categories.SCIENCE_FILMS, + rutor.Categories.RUSSIAN_ANIMATION, + rutor.Categories.ANIME +]; + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + // const ids = [ + // '637799' + // ]; + // return Promise.all(ids.map(id => api_entry_limiter.schedule(() => rutor.torrent(id)) + // .then(torrent => processTorrentRecord(torrent)))) + // .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return Promise.resolve([]); +} + +async function scrapeLatestTorrents() { + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return api_limiter.schedule(() => rutor.browse({ category, page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < getMaxPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + const isOld = moment(record.uploadDate).isBefore(moment().subtract(18, 'month')); + if (record.seeders === 0 && isOld) { + console.log(`Skipping old unseeded torrent [${record.infoHash}] ${record.title}`) + return record; + } + + const foundTorrent = await api_entry_limiter.schedule(() => rutor.torrent(record.torrentId).catch(() => undefined)); + + if (!foundTorrent || !TYPE_MAPPING[foundTorrent.category]) { + return Promise.resolve(`${NAME}: Invalid torrent record: ${record.torrentId}`); + } + if (!foundTorrent.imdbId && disallowWithoutImdbId(foundTorrent)) { + return Promise.resolve(`${NAME}: No imdbId defined: ${record.torrentId}`); + } + + const torrent = { + provider: NAME, + infoHash: foundTorrent.infoHash, + torrentId: foundTorrent.torrentId, + torrentLink: foundTorrent.torrentLink, + trackers: foundTorrent.trackers, + title: foundTorrent.title, + type: TYPE_MAPPING[foundTorrent.category], + size: foundTorrent.size, + seeders: foundTorrent.seeders, + uploadDate: foundTorrent.uploadDate, + imdbId: foundTorrent.imdbId, + languages: foundTorrent.languages || undefined, + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +function getMaxPage(category) { + switch (category) { + case rutor.Categories.FOREIGN_FILMS: + case rutor.Categories.FOREIGN_SERIES: + return 2; + default: + return 1; + } +} + +function disallowWithoutImdbId(torrent) { + if (['kino', 'anime'].includes(torrent.category)) { + return false; // allow to search foreign movie and anime ids via search + } + // allow to search id for non russian series titles via search + return !(torrent.category === 'seriali' && !parse(torrent.title).title.match(/[\u0400-\u04ff]/i)); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/scraperHelper.js b/scraper/scrapers/scraperHelper.js new file mode 100644 index 0000000..3598a7c --- /dev/null +++ b/scraper/scrapers/scraperHelper.js @@ -0,0 +1,26 @@ +function isPtDubbed(name) { + return name.toLowerCase().match(/dublado|dual|nacional|multi/); +} + +function sanitizePtName(name) { + return name + .replace(/(.*)\b(\d{3,4}P)\b(?!.*\d{3,4}[Pp])(.*)/, '$1$3 $2') // add resolution to the end if missing + .replace(/^[\[{]?(?:ACESSE.*|WWW\.)?[A-Z]+\.(COM|NET|ORG|TO|TV|ME)\b\s*[-\]}]+[\s.]*/i, '') // replace watermarks + .replace(/^(\d*(?:\.\d{1,2})?(?:[4A-Z-]{3,}|P)[-.]+)+/, '') // replace metadata prefixes + .replace(/^[\[{]?(?:ACESSE.*|WWW\.)?[A-Z]+\.(COM|NET|ORG|TO|TV|ME)\b\s*[-\]}]+[\s.]*/i, '') // replace watermarks2 + .replace(/^(COM|NET|ORG|TO|TV|ME)\b\s*-+[\s.]*/, '') // replace dangling site endings + .trim(); +} + +function sanitizePtOriginalName(name) { + return name.trim().replace(/S\d+$|\d.\s?[Tt]emporada/, ''); +} + +function sanitizePtLanguages(languages) { + return languages + .replace(/��/g, 'ê') + .replace(/ /g, '') + .trim(); +} + +module.exports = { isPtDubbed, sanitizePtName, sanitizePtOriginalName, sanitizePtLanguages } \ No newline at end of file diff --git a/scraper/scrapers/thepiratebay/thepiratebay_api.js b/scraper/scrapers/thepiratebay/thepiratebay_api.js new file mode 100644 index 0000000..f5114a5 --- /dev/null +++ b/scraper/scrapers/thepiratebay/thepiratebay_api.js @@ -0,0 +1,129 @@ +const needle = require('needle'); +const { escapeHTML } = require('../../lib/metadata'); + +const baseUrl = 'https://apibay.org'; +const timeout = 5000; + +const Categories = { + AUDIO: { + ALL: 100, + MUSIC: 101, + AUDIO_BOOKS: 102, + SOUND_CLIPS: 103, + FLAC: 104, + OTHER: 199 + }, + VIDEO: { + ALL: 200, + MOVIES: 201, + MOVIES_DVDR: 202, + MUSIC_VIDEOS: 203, + MOVIE_CLIPS: 204, + TV_SHOWS: 205, + HANDHELD: 206, + MOVIES_HD: 207, + TV_SHOWS_HD: 208, + MOVIES_3D: 209, + OTHER: 299 + }, + APPS: { + ALL: 300, + WINDOWS: 301, + MAC: 302, + UNIX: 303, + HANDHELD: 304, + IOS: 305, + ANDROID: 306, + OTHER_OS: 399 + }, + GAMES: { + ALL: 400, + PC: 401, + MAC: 402, + PSx: 403, + XBOX360: 404, + Wii: 405, + HANDHELD: 406, + IOS: 407, + ANDROID: 408, + OTHER: 499 + }, + PORN: { + ALL: 500, + MOVIES: 501, + MOVIES_DVDR: 502, + PICTURES: 503, + GAMES: 504, + MOVIES_HD: 505, + MOVIE_CLIPS: 506, + OTHER: 599 + }, + OTHER: { + ALL: 600, + E_BOOKS: 601, + COMICS: 602, + PICTURES: 603, + COVERS: 604, + PHYSIBLES: 605, + OTHER: 699 + } +}; + +function torrent(torrentId, retries = 2) { + if (!torrentId) { + return Promise.reject(new Error('No valid torrentId provided')); + } + + return _request(`t.php?id=${torrentId}`) + .then(result => toTorrent(result)) + .catch(error => retries ? torrent(torrentId, retries - 1) : Promise.reject(error)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword) { + return Promise.reject(new Error('No valid keyword provided')); + } + const q = keyword; + const cat = config.category || Categories.VIDEO.ALL; + + return _request(`q.php?q=${q}&cat=${cat}`) + .then(results => results.map((result) => toTorrent(result))) + .catch(error => retries ? search(keyword, config, retries - 1) : Promise.reject(error)); +} + +function browse(config = {}, retries = 2) { + const category = config.category || 0; + const page = config.page - 1 || 0; + + return _request(`q.php?q=category:${category}:${page}`) + .then(results => results.map((result) => toTorrent(result))) + .catch(error => retries ? browse(config, retries - 1) : Promise.reject(error)); +} + +async function _request(endpoint) { + const url = `${baseUrl}/${endpoint}`; + return needle('get', url, { open_timeout: timeout }) + .then(response => { + if (typeof response.body === 'object') { + return response.body; + } + return Promise.reject(`Unexpected response body`); + }); +} + +function toTorrent(result) { + return { + torrentId: result.id, + name: escapeHTML(result.name), + infoHash: result.info_hash.toLowerCase(), + size: parseInt(result.size), + seeders: parseInt(result.seeders), + leechers: parseInt(result.leechers), + subcategory: parseInt(result.category), + uploadDate: new Date(result.added * 1000), + imdbId: result.imdb || undefined, + filesCount: result.num_files && parseInt(result.num_files) || undefined + }; +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/thepiratebay/thepiratebay_dump_scraper.js b/scraper/scrapers/thepiratebay/thepiratebay_dump_scraper.js new file mode 100644 index 0000000..e5b8605 --- /dev/null +++ b/scraper/scrapers/thepiratebay/thepiratebay_dump_scraper.js @@ -0,0 +1,175 @@ +const moment = require('moment'); +const needle = require('needle'); +const Bottleneck = require('bottleneck'); +const { ungzip } = require('node-gzip'); +const LineByLineReader = require('line-by-line'); +const fs = require('fs'); +const thepiratebay = require('./thepiratebay_api.js'); +const bing = require('nodejs-bing'); +const { Type } = require('../../lib/types'); +const { escapeHTML } = require('../../lib/metadata'); +const { createTorrentEntry, createSkipTorrentEntry, getStoredTorrentEntry } = require('../../lib/torrentEntries'); + +const NAME = 'ThePirateBay'; +const CSV_FILE_PATH = '/tmp/tpb_dump.csv'; + +const limiter = new Bottleneck({ maxConcurrent: 40 }); + +async function scrape() { + const lastDump = { updatedAt: 2147000000 }; + //const checkPoint = moment('2016-06-17 00:00:00', 'YYYY-MMM-DD HH:mm:ss').toDate(); + //const lastDump = await thepiratebay.dumps().then((dumps) => dumps.sort((a, b) => b.updatedAt - a.updatedAt)[0]); + const checkPoint = 0; + + if (lastDump) { + console.log(`starting to scrape tpb dump: ${JSON.stringify(lastDump)}`); + await downloadDump(lastDump); + + let entriesProcessed = 0; + const lr = new LineByLineReader(CSV_FILE_PATH); + lr.on('line', (line) => { + if (line.includes("#ADDED")) { + return; + } + if (entriesProcessed % 1000 === 0) { + console.log(`Processed ${entriesProcessed} entries`); + } + if (entriesProcessed <= checkPoint) { + entriesProcessed++; + return; + } + + const row = line.match(/(?<=^|;)(".*"|[^;]+)(?=;|$)/g); + if (row.length !== 4) { + console.log(`Invalid row: ${line}`); + return; + } + const torrent = { + uploadDate: moment(row[0], 'YYYY-MMM-DD HH:mm:ss').toDate(), + infoHash: Buffer.from(row[1], 'base64').toString('hex'), + title: escapeHTML(row[2]) + .replace(/^"|"$/g, '') + .replace(/&#?\w{2,6};/g, ' ') + .replace(/\s+/g, ' ') + .trim(), + size: parseInt(row[3], 10) + }; + + if (!limiter.empty()) { + lr.pause() + } + + limiter.schedule(() => processTorrentRecord(torrent) + .catch((error) => console.log(`failed ${torrent.title} due: ${error}`))) + .then(() => limiter.empty()) + .then((empty) => empty && lr.resume()) + .then(() => entriesProcessed++); + }); + lr.on('error', (err) => { + console.log(err); + }); + lr.on('end', () => { + console.log(`finished to scrape tpb dump: ${JSON.stringify(lastDump)}!`); + }); + } +} + +const allowedCategories = [ + thepiratebay.Categories.VIDEO.MOVIES, + thepiratebay.Categories.VIDEO.MOVIES_HD, + thepiratebay.Categories.VIDEO.MOVIES_DVDR, + thepiratebay.Categories.VIDEO.MOVIES_3D, + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; +const seriesCategories = [ + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; + +async function processTorrentRecord(record) { + if (await getStoredTorrentEntry(record)) { + return; + } + + const torrentFound = await findTorrent(record); + + if (!torrentFound || !allowedCategories.includes(torrentFound.subcategory)) { + return createSkipTorrentEntry(record); + } + + const torrent = { + infoHash: torrentFound.infoHash, + provider: NAME, + torrentId: torrentFound.torrentId, + title: torrentFound.name, + size: torrentFound.size, + type: seriesCategories.includes(torrentFound.subcategory) ? Type.SERIES : Type.MOVIE, + imdbId: seriesCategories.includes(torrentFound.subcategory) && torrentFound.imdbId || undefined, + uploadDate: torrentFound.uploadDate || record.uploadDate, + seeders: torrentFound.seeders, + }; + + return createTorrentEntry(torrent); +} + +async function findTorrent(record) { + return findTorrentInSource(record) + .catch(() => findTorrentViaBing(record)); +} + +async function findTorrentInSource(record) { + let page = 0; + let torrentFound; + while (!torrentFound && page < 5) { + const torrents = await thepiratebay.search(record.title.replace(/[\W\s]+/, ' '), { page: page }); + torrentFound = torrents.filter(torrent => torrent.magnetLink.toLowerCase().includes(record.infoHash))[0]; + page = torrents.length === 0 ? 1000 : page + 1; + } + if (!torrentFound) { + return Promise.reject(new Error(`Failed to find torrent ${record.title}`)); + } + return Promise.resolve(torrentFound) + .then((torrent) => thepiratebay.torrent(torrent.torrentId) + .catch(() => thepiratebay.torrent(torrent.torrentId))); +} + +async function findTorrentViaBing(record) { + return bing.web(`${record.infoHash}`) + .then((results) => results + .find(result => result.description.includes('Direct download via magnet link') || + result.description.includes('Get this torrent'))) + .then((result) => { + if (!result) { + console.warn(`Failed to find torrent ${record.title}`); + return Promise.resolve(undefined); + } + return result.link.match(/torrent\/(\w+)\//)[1]; + }) + .then((torrentId) => torrentId && thepiratebay.torrent(torrentId)) +} + +function downloadDump(dump) { + try { + if (fs.existsSync(CSV_FILE_PATH)) { + console.log('dump file already exist...'); + return; + } + } catch (err) { + console.error(err) + } + + console.log('downloading dump file...'); + return needle('get', dump.url, { open_timeout: 2000, output: '/tmp/tpb_dump.gz' }) + .then((response) => response.body) + .then((body) => { + console.log('unzipping dump file...'); + return ungzip(body); + }) + .then((unzipped) => { + console.log('writing dump file...'); + return fs.promises.writeFile(CSV_FILE_PATH, unzipped); + }) +} + +module.exports = { scrape, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/thepiratebay/thepiratebay_fakes_removal.js b/scraper/scrapers/thepiratebay/thepiratebay_fakes_removal.js new file mode 100644 index 0000000..93917ad --- /dev/null +++ b/scraper/scrapers/thepiratebay/thepiratebay_fakes_removal.js @@ -0,0 +1,43 @@ +const moment = require('moment'); +const { Sequelize } = require('sequelize'); +const Bottleneck = require('bottleneck'); +const thepiratebay = require('./thepiratebay_api.js'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); + +const NAME = 'ThePirateBay'; +const EMPTY_HASH = '0000000000000000000000000000000000000000'; + +const Op = Sequelize.Op; +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + console.log(`Starting ${NAME} fake removal...`); + const startCreatedAt = moment().subtract(14, 'day'); + const endCreatedAt = moment(); + const whereQuery = { + provider: NAME, + type: Type.MOVIE, + createdAt: { [Op.between]: [startCreatedAt, endCreatedAt] } + }; + return repository.getTorrentsBasedOnQuery(whereQuery) + .then(torrents => { + console.log(`Checking for ${NAME} fake entries in ${torrents.length} torrents`); + return Promise.all(torrents.map(torrent => limiter.schedule(() => removeIfFake(torrent)))) + }) + .then(results => { + const removed = results.filter(result => result); + console.log(`Finished ${NAME} fake removal with ${removed.length} removals in ${results.length} torrents`); + }); +} + +async function removeIfFake(torrent) { + const tpbTorrentInfo = await thepiratebay.torrent(torrent.torrentId).catch(() => null); + if (tpbTorrentInfo && tpbTorrentInfo.infoHash === EMPTY_HASH) { + console.log(`Removing ${NAME} fake torrent [${torrent.torrentId}][${torrent.infoHash}] ${torrent.title}`); + return repository.deleteTorrent(torrent).catch(() => null); + } + return Promise.resolve(null); +} + +module.exports = { scrape, NAME }; diff --git a/scraper/scrapers/thepiratebay/thepiratebay_scraper.js b/scraper/scrapers/thepiratebay/thepiratebay_scraper.js new file mode 100644 index 0000000..88349bf --- /dev/null +++ b/scraper/scrapers/thepiratebay/thepiratebay_scraper.js @@ -0,0 +1,87 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const thepiratebay = require('./thepiratebay_api.js'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'ThePirateBay'; +const UNTIL_PAGE = 5; + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +const allowedCategories = [ + thepiratebay.Categories.VIDEO.MOVIES, + thepiratebay.Categories.VIDEO.MOVIES_HD, + thepiratebay.Categories.VIDEO.MOVIES_3D, + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; +const seriesCategories = [ + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + // return limiter.schedule(() => thepiratebay.torrent(torrent.torrentId)); + return Promise.resolve([]); +} + +async function scrapeLatestTorrents() { + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return thepiratebay.browse({ category, page }) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + if (!record || !allowedCategories.includes(record.subcategory)) { + return Promise.resolve('Invalid torrent record'); + } + + const torrent = { + infoHash: record.infoHash, + provider: NAME, + torrentId: record.torrentId, + title: record.name.replace(/\t|\s+/g, ' '), + type: seriesCategories.includes(record.subcategory) ? Type.SERIES : Type.MOVIE, + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + imdbId: seriesCategories.includes(record.subcategory) && record.imdbId || undefined, + languages: record.languages && record.languages.trim() || undefined + }; + + return createTorrentEntry(torrent); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/thepiratebay/thepiratebay_unofficial_dump_scraper.js b/scraper/scrapers/thepiratebay/thepiratebay_unofficial_dump_scraper.js new file mode 100644 index 0000000..31e6ae1 --- /dev/null +++ b/scraper/scrapers/thepiratebay/thepiratebay_unofficial_dump_scraper.js @@ -0,0 +1,112 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const LineByLineReader = require('line-by-line'); +const decode = require('magnet-uri'); +const thepiratebay = require('./thepiratebay_api.js'); +const { Type } = require('../../lib/types'); +const { createTorrentEntry, createSkipTorrentEntry, getStoredTorrentEntry } = require('../../lib/torrentEntries'); + +const NAME = 'ThePirateBay'; +const CSV_FILE_PATH = '/tmp/tpb.csv'; + +const limiter = new Bottleneck({ maxConcurrent: 40 }); + +async function scrape() { + // await processTorrentRecord({ torrentId: 26877339, category: 'Video' }); + console.log(`starting to scrape tpb dump...`); + //const checkPoint = moment('2013-06-16 00:00:00', 'YYYY-MMM-DD HH:mm:ss').toDate(); + const checkPoint = 4115000; + + let entriesProcessed = 0; + const lr = new LineByLineReader(CSV_FILE_PATH); + lr.on('line', (line) => { + if (entriesProcessed % 1000 === 0) { + console.log(`Processed ${entriesProcessed} entries`); + } + if (entriesProcessed <= checkPoint) { + entriesProcessed++; + return; + } + + const row = line.match(/(?<=^|,)(".*"|[^,]*)(?=,|$)/g); + if (row.length !== 10) { + console.log(`Invalid row: ${line}`); + return; + } + const torrent = { + torrentId: row[0], + title: row[1] + .replace(/^"|"$/g, '') + .replace(/&/g, '&') + .replace(/&\w{2,6};/g, ' ') + .replace(/\s+/g, ' ') + .trim(), + size: parseInt(row[2], 10), + category: row[4], + subcategory: row[5], + infoHash: row[7].toLowerCase() || decode(row[9]).infoHash, + magnetLink: row[9], + uploadDate: moment(row[8]).toDate(), + }; + + if (!limiter.empty()) { + lr.pause() + } + + limiter.schedule(() => processTorrentRecord(torrent) + .catch((error) => console.log(`failed ${torrent.title} due: ${error}`))) + .then(() => limiter.empty()) + .then((empty) => empty && lr.resume()) + .then(() => entriesProcessed++); + }); + lr.on('error', (err) => { + console.log(err); + }); + lr.on('end', () => { + console.log(`finished to scrape tpb dump!`); + }); +} + +const allowedCategories = [ + thepiratebay.Categories.VIDEO.MOVIES, + thepiratebay.Categories.VIDEO.MOVIES_HD, + thepiratebay.Categories.VIDEO.MOVIES_DVDR, + thepiratebay.Categories.VIDEO.MOVIES_3D, + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; +const seriesCategories = [ + thepiratebay.Categories.VIDEO.TV_SHOWS, + thepiratebay.Categories.VIDEO.TV_SHOWS_HD +]; + +async function processTorrentRecord(record) { + if (record.category !== 'Video') { + return createSkipTorrentEntry(record); + } + if (await getStoredTorrentEntry(record)) { + return; + } + + const torrentFound = await thepiratebay.torrent(record.torrentId); + + if (!torrentFound || !allowedCategories.includes(torrentFound.subcategory)) { + return createSkipTorrentEntry(record); + } + + const torrent = { + infoHash: torrentFound.infoHash, + provider: NAME, + torrentId: torrentFound.torrentId, + title: torrentFound.name, + size: torrentFound.size, + type: seriesCategories.includes(torrentFound.subcategory) ? Type.SERIES : Type.MOVIE, + imdbId: torrentFound.imdbId, + uploadDate: torrentFound.uploadDate, + seeders: torrentFound.seeders, + }; + + return createTorrentEntry(torrent); +} + +module.exports = { scrape, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/torrentgalaxy/torrentgalaxy_api.js b/scraper/scrapers/torrentgalaxy/torrentgalaxy_api.js new file mode 100644 index 0000000..cd57181 --- /dev/null +++ b/scraper/scrapers/torrentgalaxy/torrentgalaxy_api.js @@ -0,0 +1,185 @@ +const cheerio = require('cheerio'); +const needle = require('needle'); +const moment = require('moment'); +const decode = require('magnet-uri'); +const Promises = require('../../lib/promises'); +const { getRandomUserAgent } = require('../../lib/requestHelper'); + +const defaultProxies = [ + // 'https://torrentgalaxy.to', + // 'https://torrentgalaxy.mx', + 'https://torrentgalaxy.su' +]; +const defaultTimeout = 10000; + +const Categories = { + ANIME: '28', + MOVIE_4K: '3', + MOVIE_PACKS: '4', + MOVIE_SD: '1', + MOVIE_HD: '42', + MOVIE_CAM: '45', + MOVIE_BOLLYWOOD: '46', + TV_SD: '5', + TV_HD: '41', + TV_PACKS: '6', + TV_SPORT: '7', + DOCUMENTARIES: '9' +}; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + const proxyList = config.proxyList || defaultProxies; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/torrent/${torrentId}`))) + .then((body) => parseTorrentPage(body)) + .then((torrent) => ({ torrentId, ...torrent })) + .catch((err) => torrent(torrentId, config, retries - 1)); +} + +function search(keyword, config = {}, retries = 2) { + if (!keyword || retries === 0) { + return Promise.reject(new Error(`Failed ${keyword} search`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/torrents.php?cat=${category}&page=${page - 1}&search=${keyword}`))) + .then((body) => parseTableBody(body)) + .catch(() => search(keyword, config, retries - 1)); +} + +function browse(config = {}, retries = 2, error = null) { + if (retries === 0) { + return Promise.reject(error || new Error(`Failed browse request`)); + } + const proxyList = config.proxyList || defaultProxies; + const page = config.page || 1; + const category = config.category; + + return Promises.first(proxyList + .map((proxyUrl) => singleRequest(`${proxyUrl}/torrents.php?cat=${category}&page=${page - 1}`))) + .then((body) => parseTableBody(body)) + .catch((err) => browse(config, retries - 1, err)); +} + +function singleRequest(requestUrl) { + const options = { userAgent: getRandomUserAgent(), open_timeout: defaultTimeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then((response) => { + const body = response.body; + if (!body) { + throw new Error(`No body: ${requestUrl} with status ${response.statusCode}`); + } else if (body.includes('Access Denied')) { + console.log(`Access Denied: ${requestUrl}`); + throw new Error(`Access Denied: ${requestUrl}`); + } else if (body.includes('502: Bad gateway') || + body.includes('403 Forbidden') || + body.includes('Origin DNS error')) { + throw new Error(`Invalid body contents: ${requestUrl}`); + } + return body; + }); +} + +function parseTableBody(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + + const torrents = []; + + $('.tgxtable > div').each((i, element) => { + if (i === 0) return; + const row = $(element); + const magnetLink = row.find('div:nth-of-type(n+2) .collapsehide > a:nth-of-type(2)').attr('href'); + const imdbIdMatch = row.html().match(/search=(tt\d+)/i); + try { + torrents.push({ + name: row.find('.tgxtablecell div a[title]').first().text(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + torrentLink: row.find('div:nth-of-type(n+2) .collapsehide > a:nth-of-type(1)').first().attr('href'), + torrentId: row.find('.tgxtablecell div a[title]').first().attr('href').match(/torrent\/(\d+)/)[1], + verified: !!row.find('i.fa-check').length, + category: row.find('div:nth-of-type(n+2) .shrink a').first().attr('href').match(/cat=(\d+)$/)[1], + seeders: parseInt(row.find('div:nth-of-type(n+2) .collapsehide [color=\'green\'] b').first().text()), + leechers: parseInt(row.find('div:nth-of-type(n+2) .collapsehide [color=\'#ff0000\'] b').first().text()), + languages: row.find('.tgxtablecell img[title]').first().attr('title'), + size: parseSize(row.find('.collapsehide span.badge-secondary').first().text()), + uploadDate: parseDate(row.find('div.collapsehide:nth-of-type(12)').first().text()), + imdbId: imdbIdMatch && imdbIdMatch[1], + }); + } catch (e) { + console.error('Failed parsing TorrentGalaxy row: ', e); + } + }); + + resolve(torrents); + }); +} + +function parseTorrentPage(body) { + return new Promise((resolve, reject) => { + const $ = cheerio.load(body); + + if (!$) { + reject(new Error('Failed loading body')); + } + const content = $('div[class="torrentpagetable limitwidth"]').first(); + const magnetLink = $('a[class="btn btn-danger"]').attr('href'); + const imdbIdContent = $('a[title="IMDB link"]').attr('href'); + const imdbIdMatch = imdbIdContent && imdbIdContent.match(/imdb\.com\/title\/(tt\d+)/i); + + const torrent = { + name: content.find('.linebreakup a').first().text(), + infoHash: decode(magnetLink).infoHash, + magnetLink: magnetLink, + verified: !content.find('i.fa-exclamation-triangle').length, + torrentLink: $('a[class="btn btn-success"]').attr('href'), + seeders: parseInt(content.find('font[color=\'green\']').first().text(), 10), + category: content.find('div:nth-of-type(4) a:nth-of-type(2)').first().attr('href').match(/cat=(\d+)$/)[1], + languages: content.find('div:nth-of-type(5) div:nth-of-type(2)').first().text().trim(), + size: parseSize(content.find('div:nth-of-type(6) div:nth-of-type(2)').first().text()), + uploadDate: parseDate(content.find('div:nth-of-type(9) div:nth-of-type(2)').first().text()), + imdbId: imdbIdMatch && imdbIdMatch[1], + }; + resolve(torrent); + }); +} + +function parseSize(sizeText) { + if (!sizeText) { + return undefined; + } + let scale = 1; + if (sizeText.includes('GB')) { + scale = 1024 * 1024 * 1024 + } else if (sizeText.includes('MB')) { + scale = 1024 * 1024; + } else if (sizeText.includes('KB') || sizeText.includes('kB')) { + scale = 1024; + } + return Math.floor(parseFloat(sizeText.replace(/[',]/g, '')) * scale); +} + +function parseDate(dateString) { + if (dateString.includes('ago')) { + const amount = parseInt(dateString, 10); + const unit = dateString.includes('Min') ? 'minutes' : 'hours'; + return moment().subtract(amount, unit).toDate(); + } + const preparedDate = dateString.replace(/\//g, '-').replace(/-(\d{2})\s/, '-20$1 ') + return moment(preparedDate, 'DD-MM-YYYY HH:mm').toDate(); +} + +module.exports = { torrent, search, browse, Categories }; diff --git a/scraper/scrapers/torrentgalaxy/torrentgalaxy_scraper.js b/scraper/scrapers/torrentgalaxy/torrentgalaxy_scraper.js new file mode 100644 index 0000000..35c5603 --- /dev/null +++ b/scraper/scrapers/torrentgalaxy/torrentgalaxy_scraper.js @@ -0,0 +1,132 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const torrentGalaxy = require('./torrentgalaxy_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const Promises = require('../../lib/promises'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'TorrentGalaxy'; +const TYPE_MAPPING = typeMapping(); + +const api_limiter = new Bottleneck({ maxConcurrent: 1, minTime: 5000 }); +const limiter = new Bottleneck({ maxConcurrent: 10 }); +const allowedCategories = [ + torrentGalaxy.Categories.ANIME, + torrentGalaxy.Categories.MOVIE_4K, + torrentGalaxy.Categories.MOVIE_PACKS, + torrentGalaxy.Categories.MOVIE_SD, + torrentGalaxy.Categories.MOVIE_HD, + torrentGalaxy.Categories.MOVIE_CAM, + torrentGalaxy.Categories.MOVIE_BOLLYWOOD, + torrentGalaxy.Categories.TV_SD, + torrentGalaxy.Categories.TV_HD, + torrentGalaxy.Categories.TV_PACKS, + torrentGalaxy.Categories.DOCUMENTARIES, +]; +const packCategories = [ + torrentGalaxy.Categories.MOVIE_PACKS, + torrentGalaxy.Categories.TV_PACKS +]; + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + // const ids = ['14212584']; + // return Promise.all(ids.map(id => limiter.schedule(() => torrentGalaxy.torrent(id) + // .then(torrent => processTorrentRecord(torrent))))) + // .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => torrentGalaxy.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + return Promises.sequence(allowedCategories.map(category => () => scrapeLatestTorrentsForCategory(category))) + .then(entries => entries.reduce((a, b) => a.concat(b), [])); +} + +async function scrapeLatestTorrentsForCategory(category, page = 1) { + console.log(`Scrapping ${NAME} ${category} category page ${page}`); + return api_limiter.schedule(() => torrentGalaxy.browse({ category, page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] ${category} due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < getMaxPage(category) + ? scrapeLatestTorrentsForCategory(category, page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (!record || !TYPE_MAPPING[record.category] || !record.verified) { + return Promise.resolve('Invalid torrent record'); + } + + const torrent = { + provider: NAME, + infoHash: record.infoHash, + torrentId: record.torrentId, + torrentLink: record.torrentLink, + title: record.name.replace(/\t|\s+/g, ' '), + type: TYPE_MAPPING[record.category], + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + imdbId: record.imdbId, + pack: packCategories.includes(record.category), + languages: !(record.languages || '').includes('Other') ? record.languages : undefined + }; + + if (await checkAndUpdateTorrent(torrent)) { + return torrent; + } + const isOld = moment(torrent.uploadDate).isBefore(moment().subtract(18, 'month')); + if (torrent.seeders === 0 && isOld && !torrent.pack) { + console.log(`Skipping old unseeded torrent [${torrent.infoHash}] ${torrent.title}`) + return torrent; + } + + return createTorrentEntry(torrent).then(() => torrent); +} + +function typeMapping() { + const mapping = {}; + mapping[torrentGalaxy.Categories.MOVIE_SD] = Type.MOVIE; + mapping[torrentGalaxy.Categories.MOVIE_HD] = Type.MOVIE; + mapping[torrentGalaxy.Categories.MOVIE_4K] = Type.MOVIE; + mapping[torrentGalaxy.Categories.MOVIE_CAM] = Type.MOVIE; + mapping[torrentGalaxy.Categories.MOVIE_PACKS] = Type.MOVIE; + mapping[torrentGalaxy.Categories.MOVIE_BOLLYWOOD] = Type.MOVIE; + mapping[torrentGalaxy.Categories.DOCUMENTARIES] = Type.MOVIE; + mapping[torrentGalaxy.Categories.TV_SD] = Type.SERIES; + mapping[torrentGalaxy.Categories.TV_HD] = Type.SERIES; + mapping[torrentGalaxy.Categories.TV_PACKS] = Type.SERIES; + mapping[torrentGalaxy.Categories.TV_SPORT] = Type.SERIES; + mapping[torrentGalaxy.Categories.ANIME] = Type.ANIME; + return mapping; +} + +function getMaxPage(category) { + switch (category) { + case torrentGalaxy.Categories.TV_SD: + case torrentGalaxy.Categories.TV_HD: + case torrentGalaxy.Categories.MOVIE_SD: + case torrentGalaxy.Categories.MOVIE_HD: + return 5; + default: + return 1; + } +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file diff --git a/scraper/scrapers/yts/yts_api.js b/scraper/scrapers/yts/yts_api.js new file mode 100644 index 0000000..cc32233 --- /dev/null +++ b/scraper/scrapers/yts/yts_api.js @@ -0,0 +1,92 @@ +const needle = require('needle'); +const Promises = require('../../lib/promises'); +const { getRandomUserAgent } = require('./../../lib/requestHelper'); + +const defaultProxies = [ + 'https://yts.mx' +]; +const defaultTimeout = 30000; +const limit = 50; + +function torrent(torrentId, config = {}, retries = 2) { + if (!torrentId || retries === 0) { + return Promise.reject(new Error(`Failed ${torrentId} search`)); + } + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/api/v2/movie_details.json?movie_id=${torrentId}`, config))) + .then(body => parseResults(body)) + .catch(error => torrent(torrentId, config, retries - 1)); +} + +function search(query, config = {}, retries = 2) { + if (!query || retries === 0) { + return Promise.reject(new Error(`Failed ${query} search`)); + } + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/api/v2/list_movies.json?limit=${limit}&query_term=${query}`, config))) + .then(results => parseResults(results)) + .catch(error => search(query, config, retries - 1)); +} + +function browse(config = {}, retries = 2) { + if (retries === 0) { + return Promise.reject(new Error(`Failed browse request`)); + } + const page = config.page || 1; + + return Promises.first(defaultProxies + .map(proxyUrl => singleRequest(`${proxyUrl}/api/v2/list_movies.json?limit=${limit}&page=${page}`, config))) + .then(results => parseResults(results)) + .catch(error => browse(config, retries - 1)); +} + +function singleRequest(requestUrl, config = {}) { + const timeout = config.timeout || defaultTimeout; + const options = { userAgent: getRandomUserAgent(), open_timeout: timeout, follow: 2 }; + + return needle('get', requestUrl, options) + .then(response => { + if (!response.body) { + return Promise.reject(`No body: ${requestUrl}`); + } + return Promise.resolve(response.body); + }); +} + +function parseResults(results) { + if (!results || !results.data || (!results.data.movie && !Array.isArray(results.data.movies))) { + console.log('Incorrect results: ', results); + return Promise.reject('Incorrect results') + } + return (results.data.movies || [results.data.movie]) + .filter(movie => Array.isArray(movie.torrents)) + .map(movie => parseMovie(movie)) + .reduce((a, b) => a.concat(b), []); +} + +function parseMovie(movie) { + return movie.torrents.map(torrent => ({ + name: `${movie.title} ${movie.year} ${torrent.quality} ${formatType(torrent.type)} `, + torrentId: `${movie.id}-${torrent.hash.trim().toLowerCase()}`, + infoHash: torrent.hash.trim().toLowerCase(), + torrentLink: torrent.url, + seeders: torrent.seeds, + size: torrent.size_bytes, + uploadDate: new Date(torrent.date_uploaded_unix * 1000), + imdbId: movie.imdb_code + })); +} + +function formatType(type) { + if (type === 'web') { + return 'WEBRip'; + } + if (type === 'bluray') { + return 'BluRay'; + } + return type.toUpperCase(); +} + +module.exports = { torrent, search, browse }; \ No newline at end of file diff --git a/scraper/scrapers/yts/yts_scraper.js b/scraper/scrapers/yts/yts_scraper.js new file mode 100644 index 0000000..d9df186 --- /dev/null +++ b/scraper/scrapers/yts/yts_scraper.js @@ -0,0 +1,71 @@ +const moment = require('moment'); +const Bottleneck = require('bottleneck'); +const yts = require('./yts_api'); +const { Type } = require('../../lib/types'); +const repository = require('../../lib/repository'); +const { createTorrentEntry, checkAndUpdateTorrent } = require('../../lib/torrentEntries'); + +const NAME = 'YTS'; +const UNTIL_PAGE = 2; + +const limiter = new Bottleneck({ maxConcurrent: 10 }); + +async function scrape() { + const scrapeStart = moment(); + const lastScrape = await repository.getProvider({ name: NAME }); + console.log(`[${scrapeStart}] starting ${NAME} scrape...`); + + return scrapeLatestTorrents() + .then(() => { + lastScrape.lastScraped = scrapeStart; + return lastScrape.save(); + }) + .then(() => console.log(`[${moment()}] finished ${NAME} scrape`)); +} + +async function updateSeeders(torrent) { + return limiter.schedule(() => yts.torrent(torrent.torrentId)); +} + +async function scrapeLatestTorrents() { + return scrapeLatestTorrentsForCategory(); +} + +async function scrapeLatestTorrentsForCategory(page = 1) { + console.log(`Scrapping ${NAME} page ${page}`); + return yts.browse(({ page })) + .catch(error => { + console.warn(`Failed ${NAME} scrapping for [${page}] due: `, error); + return Promise.resolve([]); + }) + .then(torrents => Promise.all(torrents.map(torrent => limiter.schedule(() => processTorrentRecord(torrent))))) + .then(resolved => resolved.length > 0 && page < UNTIL_PAGE + ? scrapeLatestTorrentsForCategory(page + 1) + : Promise.resolve()); +} + +async function processTorrentRecord(record) { + if (await checkAndUpdateTorrent(record)) { + return record; + } + + if (!record || !record.size) { + return Promise.resolve('Invalid torrent record'); + } + + const torrent = { + infoHash: record.infoHash, + provider: NAME, + torrentId: record.torrentId, + title: record.name.replace(/\t|\s+/g, ' ').trim(), + type: Type.MOVIE, + size: record.size, + seeders: record.seeders, + uploadDate: record.uploadDate, + imdbId: record.imdbId, + }; + + return createTorrentEntry(torrent).then(() => torrent); +} + +module.exports = { scrape, updateSeeders, NAME }; \ No newline at end of file